---
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
        - 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:
        - 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
        - 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: 196
      functionLinenumberEnd: 197
      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
        - 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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:80,2'
          Dst:             i_panic
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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:    38
      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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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: 133
      functionLinenumberEnd: 136
      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: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,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:
        - 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: 872
      functionLinenumberEnd: 892
      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:879,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:880,3'
              BranchSideFuncs:
                - t_strarray_join
                - t_strconcat
                - smtp_server_reply_ehlo_add_param
                - smtp_server_reply_ehlo_add_param
            - BranchSide:      'smtp-server-reply.c:881,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:881,43'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:882,7'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_param
            - BranchSide:      'smtp-server-reply.c:883,36'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_param
        - Branch String:   'smtp-server-reply.c:881,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:883,36'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_param
            - BranchSide:      'smtp-server-reply.c:888,35'
              BranchSideFuncs:
                - t_strarray_join
                - t_strconcat
                - smtp_server_reply_ehlo_add_param
      Callsites:
        - Src:             'smtp-server-reply.c:879,7'
          Dst:             smtp_server_connection_is_trusted
        - Src:             'smtp-server-reply.c:883,3'
          Dst:             smtp_server_reply_ehlo_add_param
        - Src:             'smtp-server-reply.c:890,4'
          Dst:             t_strarray_join
        - Src:             'smtp-server-reply.c:889,3'
          Dst:             t_strconcat
        - Src:             'smtp-server-reply.c:888,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:    152
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_reply_ehlo_add_vrfy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 869
      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:866,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:867,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:868,29'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
      Callsites:
        - Src:             'smtp-server-reply.c:868,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:    10
      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: 850
      functionLinenumberEnd: 858
      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:855,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:856,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:857,29'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
      Callsites:
        - Src:             'smtp-server-reply.c:857,2'
          Dst:             smtp_server_reply_ehlo_add
    - functionName:    smtp_server_reply_ehlo_add_smtputf8
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      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:846,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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:    56
      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: 172
      functionLinenumberEnd: 173
      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:
        - 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:
        - 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.97
                - 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.97
                - 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.97
                - 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: 275
      functionLinenumberEnd: 279
      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:278,29'
          Branch Sides:
            - BranchSide:      './smtp-server-private.h:278,29'
              BranchSideFuncs: []
            - BranchSide:      './smtp-server-private.h:278,33'
              BranchSideFuncs:
                - smtp_server_connection_pending_command_data
        - Branch String:   './smtp-server-private.h:278,52'
          Branch Sides:
            - BranchSide:      './smtp-server-private.h:278,52'
              BranchSideFuncs: []
            - BranchSide:      './smtp-server-private.h:278,55'
              BranchSideFuncs:
                - smtp_server_connection_pending_command_data
        - Branch String:   './smtp-server-private.h:278,72'
          Branch Sides:
            - BranchSide:      './smtp-server-private.h:278,72'
              BranchSideFuncs: []
            - BranchSide:      './smtp-server-private.h:279,48'
              BranchSideFuncs:
                - smtp_server_connection_pending_command_data
      Callsites:
        - Src:             './smtp-server-private.h:279,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:
        - 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:
        - 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:
        - 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: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,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: 133
      functionLinenumberEnd: 136
      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: 196
      functionLinenumberEnd: 197
      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: 241
      functionLinenumberEnd: 244
      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:242,2'
          Dst:             buffer_delete
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      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:251,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:
        - 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
        - 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.320
                - 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.320
                - 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.320
                - 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.320
                - 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.320
                - 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: 172
      functionLinenumberEnd: 173
      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.320
            - 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.320
        - 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.320
        - Branch String:   'smtp-server-command.c:743,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:743,2'
              BranchSideFuncs:
                - array_is_created_i.320
                - 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:
        - 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:
        - 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: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:273,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.320
                - 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:
        - 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:
        - 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.320
                - 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.320
                - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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.350
                - p_malloc.351
                - i_panic
        - Branch String:   'smtp-server-command.c:375,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:377,3'
              BranchSideFuncs:
                - malloc_multiply_check.350
                - p_malloc.351
                - i_panic
            - BranchSide:      'smtp-server-command.c:382,9'
              BranchSideFuncs:
                - malloc_multiply_check.350
                - p_malloc.351
        - Branch String:   'smtp-server-command.c:377,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:377,3'
              BranchSideFuncs:
                - malloc_multiply_check.350
                - p_malloc.351
                - i_panic
            - BranchSide:      'smtp-server-command.c:377,3'
              BranchSideFuncs:
                - malloc_multiply_check.350
                - p_malloc.351
                - 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.350
                - p_malloc.351
                - 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:
        - 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.320
                - 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.320
                - 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.320
                - smtp_server_reply_indexv
                - array_idx_i
            - BranchSide:      'smtp-server-command.c:820,8'
              BranchSideFuncs:
                - array_is_created_i.320
                - smtp_server_reply_indexv
                - array_idx_i
        - Branch String:   'smtp-server-command.c:822,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:823,36'
              BranchSideFuncs:
                - array_idx_i
                - smtp_server_reply_indexv
                - array_is_created_i.320
            - BranchSide:      'smtp-server-command.c:829,8'
              BranchSideFuncs:
                - smtp_server_reply_indexv
                - array_is_created_i.320
                - array_idx_i
        - Branch String:   'smtp-server-command.c:829,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:830,12'
              BranchSideFuncs:
                - array_is_created_i.320
                - smtp_server_reply_indexv
                - array_idx_i
            - BranchSide:      'smtp-server-command.c:836,2'
              BranchSideFuncs:
                - array_is_created_i.320
                - 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:
        - 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:
        - 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:
        - 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: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.310
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.310
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,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: 209
      functionLinenumberEnd: 211
      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:210,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.433
                - p_malloc.434
                - i_panic
        - Branch String:   'smtp-server-recipient.c:287,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:289,3'
              BranchSideFuncs:
                - malloc_multiply_check.433
                - p_malloc.434
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:294,9'
              BranchSideFuncs:
                - malloc_multiply_check.433
                - p_malloc.434
        - Branch String:   'smtp-server-recipient.c:289,3'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:289,3'
              BranchSideFuncs:
                - malloc_multiply_check.433
                - p_malloc.434
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:289,3'
              BranchSideFuncs:
                - malloc_multiply_check.433
                - p_malloc.434
                - 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.433
                - p_malloc.434
                - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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:
        - 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:
        - 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:
        - 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.451
                - 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.451
                - 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.451
                - 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.451
                - 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.451
                - 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.451
                - e_debug
        - Branch String:   'smtp-server-recipient.c:106,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:107,38'
              BranchSideFuncs:
                - event_unref
                - pool_unref.451
            - BranchSide:      'smtp-server-recipient.c:119,15'
              BranchSideFuncs:
                - event_unref
                - pool_unref.451
        - Branch String:   'smtp-server-recipient.c:116,3'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:116,3'
              BranchSideFuncs:
                - e_debug
                - event_unref
                - pool_unref.451
            - BranchSide:      'smtp-server-recipient.c:116,3'
              BranchSideFuncs:
                - event_send_abort
                - event_unref
                - pool_unref.451
      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: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,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:
        - 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:
        - 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: 133
      functionLinenumberEnd: 136
      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: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:273,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.518
                - smtp_server_recipient_get_original
                - smtp_address_encode
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_security_string
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - net_ip2addr
                - str_append.517
                - smtp_address_encode
            - BranchSide:      'smtp-server-transaction.c:319,13'
              BranchSideFuncs:
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_security_string
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - net_ip2addr
                - str_append.517
        - Branch String:   'smtp-server-transaction.c:305,3'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:307,4'
              BranchSideFuncs:
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_security_string
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - net_ip2addr
                - str_append.517
            - BranchSide:      'smtp-server-transaction.c:309,34'
              BranchSideFuncs:
                - smtp_address_encode
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_security_string
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - net_ip2addr
                - str_append.517
            - BranchSide:      'smtp-server-transaction.c:313,40'
              BranchSideFuncs:
                - smtp_server_recipient_get_original
                - smtp_address_encode
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_security_string
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - net_ip2addr
                - str_append.517
            - BranchSide:      'smtp-server-transaction.c:316,2'
              BranchSideFuncs:
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_security_string
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - net_ip2addr
                - str_append.517
        - Branch String:   'smtp-server-transaction.c:320,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:321,14'
              BranchSideFuncs:
                - str_append.517
                - smtp_server_connection_get_security_string
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - net_ip2addr
            - BranchSide:      'smtp-server-transaction.c:323,14'
              BranchSideFuncs:
                - str_append.517
                - smtp_server_connection_get_security_string
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - 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.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
            - BranchSide:      'smtp-server-transaction.c:327,6'
              BranchSideFuncs:
                - smtp_server_connection_get_security_string
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
        - Branch String:   'smtp-server-transaction.c:327,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:328,14'
              BranchSideFuncs:
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_security_string
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
            - BranchSide:      'smtp-server-transaction.c:333,54'
              BranchSideFuncs:
                - smtp_server_connection_get_security_string
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
        - Branch String:   'smtp-server-transaction.c:334,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:335,14'
              BranchSideFuncs:
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
            - BranchSide:      'smtp-server-transaction.c:340,13'
              BranchSideFuncs:
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_server_connection_get_protocol_name
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - smtp_address_write
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
                - str_append.517
                - str_append.517
                - str_append.517
        - Branch String:   'smtp-server-transaction.c:352,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:352,6'
              BranchSideFuncs:
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - str_printfa
            - BranchSide:      'smtp-server-transaction.c:353,14'
              BranchSideFuncs:
                - str_append.517
                - str_append.517
                - str_append.517
                - str_append.517
                - message_date_create
                - str_append.517
                - 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: 196
      functionLinenumberEnd: 197
      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: 250
      functionLinenumberEnd: 252
      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:251,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
        - 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.549
                - 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.541
                - 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.549
                - 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.541
        - Branch String:   'smtp-server-transaction.c:231,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:232,11'
              BranchSideFuncs:
                - array_get_i.541
                - 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: 172
      functionLinenumberEnd: 173
      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
        - 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.549
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_recipient_reset
                - array_get_i.541
        - Branch String:   'smtp-server-transaction.c:195,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:196,11'
              BranchSideFuncs:
                - array_get_i.541
                - 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.563
            - BranchSide:      'smtp-server-transaction.c:174,2'
              BranchSideFuncs:
                - smtp_server_recipient_data_command
                - i_memcpy.563
        - Branch String:   'smtp-server-transaction.c:174,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:174,2'
              BranchSideFuncs:
                - i_memcpy.563
                - smtp_server_recipient_data_command
            - BranchSide:      'smtp-server-transaction.c:174,2'
              BranchSideFuncs:
                - smtp_server_recipient_data_command
                - i_memcpy.563
        - 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.563
            - BranchSide:      'smtp-server-transaction.c:175,38'
              BranchSideFuncs:
                - smtp_server_recipient_data_command
                - i_memcpy.563
      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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:80,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.523
            - BranchSide:      'smtp-server-transaction.c:162,9'
              BranchSideFuncs:
                - array_count_i.523
      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.523
            - BranchSide:      'smtp-server-transaction.c:154,3'
              BranchSideFuncs:
                - array_count_i.523
      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: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.516
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.516
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,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.523
                - array_append_i.569
            - BranchSide:      'smtp-server-transaction.c:143,3'
              BranchSideFuncs:
                - array_create_i.570
                - array_count_i.523
                - array_append_i.569
      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.563
        - Branch String:   'smtp-server-transaction.c:129,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:129,2'
              BranchSideFuncs:
                - i_memcpy.563
                - smtp_address_equals
                - smtp_params_rcpt_equal
            - BranchSide:      'smtp-server-transaction.c:129,2'
              BranchSideFuncs:
                - smtp_address_equals
                - i_memcpy.563
                - 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.563
                - 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.563
            - BranchSide:      'smtp-server-transaction.c:132,27'
              BranchSideFuncs:
                - smtp_address_equals
                - i_memcpy.563
                - 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.563
            - BranchSide:      'smtp-server-transaction.c:135,2'
              BranchSideFuncs:
                - smtp_address_equals
                - smtp_params_rcpt_equal
                - i_memcpy.563
        - 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.563
      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: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_get_modifiable_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 303
      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:302,13'
          Dst:             array_count_i
        - Src:             '../../src/lib/array.h:303,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
        - 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.549
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.574
                - e_debug
                - smtp_server_recipient_destroy
                - array_get_modifiable_i
            - BranchSide:      'smtp-server-transaction.c:90,14'
              BranchSideFuncs:
                - array_is_created_i.549
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.574
                - 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.549
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.574
                - e_debug
                - smtp_server_recipient_destroy
                - array_get_modifiable_i
            - BranchSide:      'smtp-server-transaction.c:90,14'
              BranchSideFuncs:
                - array_is_created_i.549
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.574
                - 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.574
                - 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.574
                - 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.574
                - e_debug
            - BranchSide:      'smtp-server-transaction.c:101,7'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.574
                - e_debug
        - Branch String:   'smtp-server-transaction.c:101,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:101,6'
              BranchSideFuncs:
                - event_unref
                - pool_unref.574
            - BranchSide:      'smtp-server-transaction.c:103,4'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.574
                - 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.574
            - BranchSide:      'smtp-server-transaction.c:114,3'
              BranchSideFuncs:
                - event_send_abort
                - event_unref
                - pool_unref.574
      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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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:
        - 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: 133
      functionLinenumberEnd: 136
      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: 1025
      functionLinenumberEnd: 1039
      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:1028,33'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1029,34'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - ssl_iostream_get_last_error
                - io_stream_get_disconnect_reason
                - t_strdup_printf
            - BranchSide:      'smtp-server-connection.c:1037,41'
              BranchSideFuncs:
                - io_stream_get_disconnect_reason
        - Branch String:   'smtp-server-connection.c:1028,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1030,37'
              BranchSideFuncs:
                - io_stream_get_disconnect_reason
            - BranchSide:      'smtp-server-connection.c:1037,41'
              BranchSideFuncs:
                - io_stream_get_disconnect_reason
        - Branch String:   'smtp-server-connection.c:1031,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1033,35'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-server-connection.c:1035,2'
              BranchSideFuncs:
                - io_stream_get_disconnect_reason
      Callsites:
        - Src:             'smtp-server-connection.c:1029,7'
          Dst:             ssl_iostream_is_handshaked
        - Src:             'smtp-server-connection.c:1030,9'
          Dst:             ssl_iostream_get_last_error
        - Src:             'smtp-server-connection.c:1032,11'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-connection.c:1037,9'
          Dst:             io_stream_get_disconnect_reason
    - 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:    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: 771
      functionLinenumberEnd: 784
      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
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:780,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:780,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:780,2'
              BranchSideFuncs:
                - str_len.705
                - str_truncate
                - str_c
                - i_strdup
      Callsites:
        - Src:             'smtp-server-connection.c:775,15'
          Dst:             t_str_new
        - Src:             'smtp-server-connection.c:776,2'
          Dst:             guid_128_generate
        - Src:             'smtp-server-connection.c:777,2'
          Dst:             base64_encode
        - Src:             'smtp-server-connection.c:780,2'
          Dst:             str_c
        - Src:             'smtp-server-connection.c:780,2'
          Dst:             str_len
        - Src:             'smtp-server-connection.c:780,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:781,27'
          Dst:             str_len
        - Src:             'smtp-server-connection.c:781,2'
          Dst:             str_truncate
        - Src:             'smtp-server-connection.c:783,30'
          Dst:             str_c
        - Src:             'smtp-server-connection.c:783,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:    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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    smtp_server_connection_handle_command
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 342
      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:328,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:331,3'
              BranchSideFuncs:
                - smtp_server_connection_timeout_update
                - smtp_server_command_unref
                - smtp_server_command_next_to_reply
            - BranchSide:      'smtp-server-connection.c:335,6'
              BranchSideFuncs:
                - smtp_server_connection_timeout_update
                - smtp_server_command_unref
                - smtp_server_command_next_to_reply
        - Branch String:   'smtp-server-connection.c:335,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:336,9'
              BranchSideFuncs:
                - smtp_server_command_next_to_reply
                - smtp_server_connection_timeout_update
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-connection.c:338,40'
              BranchSideFuncs:
                - smtp_server_connection_timeout_update
                - smtp_server_command_unref
        - Branch String:   'smtp-server-connection.c:341,43'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:341,46'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:341,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:322,8'
          Dst:             smtp_server_command_new
        - Src:             'smtp-server-connection.c:324,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-connection.c:326,2'
          Dst:             smtp_server_connection_ref
        - Src:             'smtp-server-connection.c:327,2'
          Dst:             smtp_server_command_execute
        - Src:             'smtp-server-connection.c:328,7'
          Dst:             smtp_server_connection_unref
        - Src:             'smtp-server-connection.c:331,3'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-connection.c:336,9'
          Dst:             smtp_server_command_next_to_reply
        - Src:             'smtp-server-connection.c:338,2'
          Dst:             smtp_server_connection_timeout_update
        - Src:             'smtp-server-connection.c:341,11'
          Dst:             smtp_server_command_unref
    - functionName:    smtp_server_connection_ref
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1018
      functionLinenumberEnd: 1020
      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: 1110
      functionLinenumberEnd: 1137
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _conn
      BBCount:         32
      ICount:          189
      EdgeCount:       36
      CyclomaticComplexity: 6
      functionsReached:
        - connection_deinit
        - 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:1115,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1115,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1116,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.754
                - e_debug
        - Branch String:   'smtp-server-connection.c:1116,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1117,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1119,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.754
                - e_debug
        - Branch String:   'smtp-server-connection.c:1121,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1121,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.754
            - BranchSide:      'smtp-server-connection.c:1121,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.754
        - Branch String:   'smtp-server-connection.c:1125,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1125,33'
              BranchSideFuncs:
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.754
            - BranchSide:      'smtp-server-connection.c:1128,2'
              BranchSideFuncs:
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.754
        - Branch String:   'smtp-server-connection.c:1125,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1126,3'
              BranchSideFuncs:
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.754
            - BranchSide:      'smtp-server-connection.c:1128,2'
              BranchSideFuncs:
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.754
      Callsites:
        - Src:             'smtp-server-connection.c:1115,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1119,2'
          Dst:             smtp_server_connection_disconnect
        - Src:             'smtp-server-connection.c:1121,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1121,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1121,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1123,2'
          Dst:             connection_deinit
        - Src:             'smtp-server-connection.c:1128,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1129,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1130,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1131,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1132,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1133,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1134,2'
          Dst:             event_unref
        - Src:             'smtp-server-connection.c:1135,2'
          Dst:             pool_unref
    - functionName:    smtp_server_connection_timeout_update
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 273
      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:249,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:250,40'
              BranchSideFuncs:
                - smtp_server_connection_timeout_start
            - BranchSide:      'smtp-server-connection.c:254,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:254,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:254,2'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:256,40'
              BranchSideFuncs:
                - smtp_server_connection_timeout_start
            - BranchSide:      'smtp-server-connection.c:259,7'
              BranchSideFuncs:
                - smtp_server_connection_timeout_stop
            - BranchSide:      'smtp-server-connection.c:267,39'
              BranchSideFuncs:
                - smtp_server_connection_timeout_stop
            - BranchSide:      'smtp-server-connection.c:267,39'
              BranchSideFuncs:
                - smtp_server_connection_timeout_stop
            - BranchSide:      'smtp-server-connection.c:271,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'smtp-server-connection.c:271,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-server-connection.c:259,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:261,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:263,39'
              BranchSideFuncs:
                - smtp_server_connection_timeout_stop
      Callsites:
        - Src:             'smtp-server-connection.c:250,3'
          Dst:             smtp_server_connection_timeout_start
        - Src:             'smtp-server-connection.c:256,3'
          Dst:             smtp_server_connection_timeout_start
        - Src:             'smtp-server-connection.c:263,3'
          Dst:             smtp_server_connection_timeout_stop
        - Src:             'smtp-server-connection.c:267,3'
          Dst:             smtp_server_connection_timeout_stop
        - Src:             'smtp-server-connection.c:271,3'
          Dst:             i_unreached
    - functionName:    smtp_server_connection_timeout_start
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         21
      ICount:          122
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - event_send_abort
        - event_want_level
        - smtp_server_connection_idle_timeout
        - timeout_add
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:225,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:226,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:228,6'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_add
                - e_debug
        - Branch String:   'smtp-server-connection.c:228,28'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:228,28'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_add
                - e_debug
            - BranchSide:      'smtp-server-connection.c:229,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_add
                - e_debug
        - Branch String:   'smtp-server-connection.c:228,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:228,6'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_add
                - e_debug
            - BranchSide:      'smtp-server-connection.c:230,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_add
                - e_debug
        - Branch String:   'smtp-server-connection.c:230,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:230,3'
              BranchSideFuncs:
                - e_debug
                - timeout_add
            - BranchSide:      'smtp-server-connection.c:230,3'
              BranchSideFuncs:
                - event_send_abort
                - timeout_add
        - Branch String:   'smtp-server-connection.c:232,19'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:232,19'
              BranchSideFuncs:
                - timeout_add
            - BranchSide:      'smtp-server-connection.c:232,19'
              BranchSideFuncs:
                - timeout_add
      Callsites:
        - Src:             'smtp-server-connection.c:230,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:230,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:230,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:232,19'
          Dst:             timeout_add
        - Src:             'smtp-server-connection.c:232,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: 215
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         11
      ICount:          53
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - event_send_abort
        - event_want_level
        - timeout_remove
      functionUses:    7
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:216,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:216,6'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_remove
                - e_debug
            - BranchSide:      'smtp-server-connection.c:217,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_remove
                - e_debug
        - Branch String:   'smtp-server-connection.c:217,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:217,3'
              BranchSideFuncs:
                - e_debug
                - timeout_remove
            - BranchSide:      'smtp-server-connection.c:217,3'
              BranchSideFuncs:
                - event_send_abort
                - timeout_remove
      Callsites:
        - Src:             'smtp-server-connection.c:217,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:217,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:217,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:219,3'
          Dst:             timeout_remove
    - functionName:    smtp_server_connection_idle_timeout
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 212
      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:210,2'
          Dst:             smtp_server_connection_terminate
    - functionName:    smtp_server_connection_terminate
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1316
      functionLinenumberEnd: 1318
      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:1317,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: 1324
      functionLinenumberEnd: 1346
      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:1330,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1331,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1333,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:1333,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1333,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:1333,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:1333,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1333,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1335,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:1345,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1345,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1345,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:1333,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1335,2'
          Dst:             t_push
        - Src:             'smtp-server-connection.c:1337,18'
          Dst:             t_strsplit_spaces
        - Src:             'smtp-server-connection.c:1338,21'
          Dst:             t_strconcat
        - Src:             'smtp-server-connection.c:1341,3'
          Dst:             smtp_server_connection_reply_lines
        - Src:             'smtp-server-connection.c:1344,3'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-connection.c:1345,4'
          Dst:             t_pop
        - Src:             'smtp-server-connection.c:1345,4'
          Dst:             i_panic
    - functionName:    smtp_server_connection_reply_lines
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1164
      functionLinenumberEnd: 1184
      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:
        - event_send_abort
        - event_want_level
        - i_panic
        - o_stream_nsend
        - smtp_reply_log
        - smtp_reply_parse_enhanced_code
        - smtp_reply_write
        - str_data
        - t_pop
        - t_push
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1171,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1173,9'
              BranchSideFuncs:
                - t_push
                - event_want_level
                - event_send_abort
                - t_str_new
                - smtp_reply_write
                - str_data.751
                - str_len.705
                - o_stream_nsend
                - t_pop
                - i_panic
                - smtp_reply_log
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1175,2'
              BranchSideFuncs:
                - t_push
                - event_want_level
                - event_send_abort
                - t_str_new
                - smtp_reply_write
                - str_data.751
                - str_len.705
                - o_stream_nsend
                - t_pop
                - i_panic
                - smtp_reply_log
                - e_debug
        - Branch String:   'smtp-server-connection.c:1178,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1178,3'
              BranchSideFuncs:
                - smtp_reply_log
                - e_debug
                - t_str_new
                - smtp_reply_write
                - str_data.751
                - str_len.705
                - o_stream_nsend
                - t_pop
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1178,3'
              BranchSideFuncs:
                - event_send_abort
                - t_str_new
                - smtp_reply_write
                - str_data.751
                - str_len.705
                - o_stream_nsend
                - t_pop
                - i_panic
        - Branch String:   'smtp-server-connection.c:1183,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1183,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1183,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:1171,7'
          Dst:             smtp_reply_parse_enhanced_code
        - Src:             'smtp-server-connection.c:1175,2'
          Dst:             t_push
        - Src:             'smtp-server-connection.c:1178,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1178,3'
          Dst:             smtp_reply_log
        - Src:             'smtp-server-connection.c:1178,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1178,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1180,9'
          Dst:             t_str_new
        - Src:             'smtp-server-connection.c:1181,3'
          Dst:             smtp_reply_write
        - Src:             'smtp-server-connection.c:1182,37'
          Dst:             str_data
        - Src:             'smtp-server-connection.c:1182,52'
          Dst:             str_len
        - Src:             'smtp-server-connection.c:1182,3'
          Dst:             o_stream_nsend
        - Src:             'smtp-server-connection.c:1183,4'
          Dst:             t_pop
        - Src:             'smtp-server-connection.c:1183,4'
          Dst:             i_panic
    - functionName:    smtp_server_connection_close
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1301
      functionLinenumberEnd: 1312
      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:    11
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1306,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1307,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1308,2'
              BranchSideFuncs:
                - smtp_server_connection_disconnect
                - smtp_server_connection_unref
      Callsites:
        - Src:             'smtp-server-connection.c:1310,2'
          Dst:             smtp_server_connection_disconnect
        - Src:             'smtp-server-connection.c:1311,2'
          Dst:             smtp_server_connection_unref
    - functionName:    smtp_server_connection_disconnect
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1044
      functionLinenumberEnd: 1107
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - reason
      BBCount:         41
      ICount:          294
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - connection_disconnect
        - event_send_abort
        - event_want_level
        - i_stream_unref
        - io_remove
        - o_stream_uncork
        - o_stream_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_context_unref
        - ssl_iostream_destroy
        - t_str_oneline
        - t_strdup_printf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1047,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1048,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1049,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
                - ssl_iostream_context_unref
                - 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:1051,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1052,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
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
                - t_strdup_printf
            - BranchSide:      'smtp-server-connection.c:1054,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
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
                - t_strdup_printf
        - Branch String:   'smtp-server-connection.c:1057,18'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1057,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
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
                - t_strdup_printf
            - BranchSide:      'smtp-server-connection.c:1062,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
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:1057,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1060,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
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1062,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
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:1062,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1063,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
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1067,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
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:1067,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1067,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
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
            - BranchSide:      'smtp-server-connection.c:1067,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
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
        - Branch String:   'smtp-server-connection.c:1077,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1078,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
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
            - BranchSide:      'smtp-server-connection.c:1083,38'
              BranchSideFuncs:
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
                - o_stream_uncork
        - Branch String:   'smtp-server-connection.c:1084,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1085,19'
              BranchSideFuncs:
                - o_stream_uncork
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
            - BranchSide:      'smtp-server-connection.c:1086,6'
              BranchSideFuncs:
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - ssl_iostream_context_unref
                - smtp_command_parser_deinit
        - Branch String:   'smtp-server-connection.c:1086,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1087,31'
              BranchSideFuncs:
                - smtp_command_parser_deinit
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - ssl_iostream_context_unref
            - BranchSide:      'smtp-server-connection.c:1088,24'
              BranchSideFuncs:
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - ssl_iostream_context_unref
        - Branch String:   'smtp-server-connection.c:1089,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1090,31'
              BranchSideFuncs:
                - ssl_iostream_context_unref
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
            - BranchSide:      'smtp-server-connection.c:1092,6'
              BranchSideFuncs:
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
        - Branch String:   'smtp-server-connection.c:1092,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1093,6'
              BranchSideFuncs:
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
            - BranchSide:      'smtp-server-connection.c:1099,7'
              BranchSideFuncs:
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
        - Branch String:   'smtp-server-connection.c:1092,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1095,14'
              BranchSideFuncs:
                - io_remove
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
            - BranchSide:      'smtp-server-connection.c:1099,7'
              BranchSideFuncs:
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
        - Branch String:   'smtp-server-connection.c:1099,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1100,26'
              BranchSideFuncs:
                - io_remove
                - i_stream_unref
                - o_stream_unref
            - BranchSide:      'smtp-server-connection.c:1102,22'
              BranchSideFuncs:
                - io_remove
                - i_stream_unref
                - o_stream_unref
      Callsites:
        - Src:             'smtp-server-connection.c:1052,12'
          Dst:             smtp_server_connection_get_disconnect_reason
        - Src:             'smtp-server-connection.c:1054,12'
          Dst:             t_str_oneline
        - Src:             'smtp-server-connection.c:1059,12'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-connection.c:1063,12'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-connection.c:1067,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1067,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1067,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1070,2'
          Dst:             smtp_server_connection_update_stats
        - Src:             'smtp-server-connection.c:1073,2'
          Dst:             smtp_server_connection_reset_state
        - Src:             'smtp-server-connection.c:1079,3'
          Dst:             smtp_server_command_abort
        - Src:             'smtp-server-connection.c:1083,2'
          Dst:             smtp_server_connection_timeout_stop
        - Src:             'smtp-server-connection.c:1085,3'
          Dst:             o_stream_uncork
        - Src:             'smtp-server-connection.c:1087,3'
          Dst:             smtp_command_parser_deinit
        - Src:             'smtp-server-connection.c:1088,2'
          Dst:             ssl_iostream_destroy
        - Src:             'smtp-server-connection.c:1090,3'
          Dst:             ssl_iostream_context_unref
        - Src:             'smtp-server-connection.c:1095,3'
          Dst:             io_remove
        - Src:             'smtp-server-connection.c:1100,3'
          Dst:             connection_disconnect
        - Src:             'smtp-server-connection.c:1103,3'
          Dst:             io_remove
        - Src:             'smtp-server-connection.c:1104,3'
          Dst:             i_stream_unref
        - Src:             'smtp-server-connection.c:1105,3'
          Dst:             o_stream_unref
    - functionName:    smtp_server_connection_update_stats
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 54
      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:49,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:50,23'
              BranchSideFuncs:
                - connection_update_counters
            - BranchSide:      'smtp-server-connection.c:51,6'
              BranchSideFuncs:
                - connection_update_counters
        - Branch String:   'smtp-server-connection.c:51,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:51,6'
              BranchSideFuncs:
                - connection_update_counters
            - BranchSide:      'smtp-server-connection.c:52,24'
              BranchSideFuncs:
                - connection_update_counters
      Callsites:
        - Src:             'smtp-server-connection.c:53,2'
          Dst:             connection_update_counters
    - functionName:    smtp_server_connection_reset_state
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1393
      functionLinenumberEnd: 1413
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         13
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - 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:1394,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1394,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:1394,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:1398,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1398,6'
              BranchSideFuncs:
                - smtp_server_transaction_free
                - i_stream_destroy
                - i_stream_destroy
                - smtp_server_connection_set_state
            - BranchSide:      'smtp-server-connection.c:1399,33'
              BranchSideFuncs:
                - smtp_server_transaction_free
                - i_stream_destroy
                - i_stream_destroy
                - smtp_server_connection_set_state
      Callsites:
        - Src:             'smtp-server-connection.c:1394,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1394,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1394,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1396,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1399,3'
          Dst:             smtp_server_transaction_free
        - Src:             'smtp-server-connection.c:1406,2'
          Dst:             i_stream_destroy
        - Src:             'smtp-server-connection.c:1407,2'
          Dst:             i_stream_destroy
        - Src:             'smtp-server-connection.c:1412,2'
          Dst:             smtp_server_connection_set_state
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:    17
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:139,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_connection_set_state
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1366
      functionLinenumberEnd: 1382
      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:1369,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1370,23'
              BranchSideFuncs:
                - null_strcmp
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1373,18'
              BranchSideFuncs:
                - null_strcmp
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1373,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1374,3'
              BranchSideFuncs:
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1379,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1379,14'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1379,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1379,14'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1379,41'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1379,41'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1380,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1379,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1379,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1381,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:1373,6'
          Dst:             null_strcmp
        - Src:             'smtp-server-connection.c:1374,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1375,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:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_connection_handle_input
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         92
      ICount:          480
      EdgeCount:       118
      CyclomaticComplexity: 28
      functionsReached:
        - 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:431,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:433,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:438,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:433,5'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:432,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:435,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:442,24'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:442,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:442,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:442,47'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:442,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:442,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:442,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:442,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:443,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:443,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:447,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:488,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:447,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:450,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:454,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:454,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:454,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:454,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:460,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:462,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:464,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:464,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:465,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:468,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:468,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:469,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:472,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:472,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:473,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:475,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:475,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:476,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:480,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:480,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:443,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:482,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:482,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:481,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:484,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:488,15'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:488,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:509,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:488,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:490,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:509,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:491,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:491,4'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:491,4'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
        - Branch String:   'smtp-server-connection.c:494,41'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:495,8'
              BranchSideFuncs:
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:499,41'
              BranchSideFuncs:
                - smtp_server_connection_close
        - Branch String:   'smtp-server-connection.c:494,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:499,41'
              BranchSideFuncs:
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:503,5'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
        - Branch String:   'smtp-server-connection.c:509,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:512,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:547,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:512,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:512,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:512,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:515,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:517,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:520,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:526,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:536,5'
              BranchSideFuncs:
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:540,41'
              BranchSideFuncs:
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:543,5'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-server-connection.c:547,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:548,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:549,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:549,26'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:549,29'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-connection.c:550,38'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
        - Branch String:   'smtp-server-connection.c:549,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:550,38'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-connection.c:554,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:554,16'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:442,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:554,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:554,43'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:442,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:555,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:554,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:442,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:558,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:438,2'
          Dst:             smtp_server_connection_timeout_reset
        - Src:             'smtp-server-connection.c:443,17'
          Dst:             smtp_command_parse_next
        - Src:             'smtp-server-connection.c:450,5'
          Dst:             smtp_server_command_ready_to_reply
        - Src:             'smtp-server-connection.c:454,4'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:454,4'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:454,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:460,9'
          Dst:             smtp_server_connection_handle_command
        - Src:             'smtp-server-connection.c:475,9'
          Dst:             smtp_server_connection_check_pipeline
        - Src:             'smtp-server-connection.c:476,5'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-connection.c:490,5'
          Dst:             i_stream_get_disconnect_reason
        - Src:             'smtp-server-connection.c:491,4'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:491,4'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:491,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:499,5'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-connection.c:504,5'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-connection.c:512,4'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:512,4'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:512,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:520,11'
          Dst:             smtp_server_command_new_invalid
        - Src:             'smtp-server-connection.c:521,5'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-connection.c:526,11'
          Dst:             smtp_server_command_new_invalid
        - Src:             'smtp-server-connection.c:527,5'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-connection.c:536,5'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-connection.c:540,5'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-connection.c:543,5'
          Dst:             i_unreached
        - Src:             'smtp-server-connection.c:550,4'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-connection.c:555,8'
          Dst:             smtp_command_parser_pending_data
        - Src:             'smtp-server-connection.c:558,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: 239
      functionLinenumberEnd: 242
      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:240,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:240,6'
              BranchSideFuncs:
                - timeout_reset
            - BranchSide:      'smtp-server-connection.c:241,17'
              BranchSideFuncs:
                - timeout_reset
      Callsites:
        - Src:             'smtp-server-connection.c:241,3'
          Dst:             timeout_reset
    - functionName:    smtp_server_connection_check_pipeline
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         21
      ICount:          114
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - event_send_abort
        - event_want_level
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:68,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:69,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
            - BranchSide:      'smtp-server-connection.c:75,6'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:69,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:69,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:70,7'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:70,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:72,12'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:73,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:75,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:76,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:81,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:76,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:76,3'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-connection.c:76,3'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-connection.c:69,3'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:76,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:76,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:76,3'
          Dst:             event_send_abort
    - functionName:    smtp_server_connection_input_halt
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 87
      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:86,2'
          Dst:             connection_input_halt
    - functionName:    smtp_server_connection_input
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 564
      functionLinenumberEnd: 610
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _conn
      BBCount:         40
      ICount:          247
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - i_panic
        - 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_ref
        - smtp_server_connection_ssl_init
        - smtp_server_connection_timeout_reset
        - smtp_server_connection_unref
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:568,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:568,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:570,6'
              BranchSideFuncs:
                - smtp_server_connection_timeout_reset
                - 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
                - i_panic
                - smtp_server_connection_ssl_init
                - smtp_server_connection_input_lock
                - smtp_server_connection_close
        - Branch String:   'smtp-server-connection.c:570,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:571,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:573,39'
              BranchSideFuncs:
                - smtp_server_connection_timeout_reset
                - 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
                - i_panic
                - smtp_server_connection_ssl_init
                - smtp_server_connection_input_lock
                - smtp_server_connection_close
        - Branch String:   'smtp-server-connection.c:575,22'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:575,25'
              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
                - i_panic
                - smtp_server_connection_ssl_init
                - smtp_server_connection_input_lock
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:586,2'
              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
                - i_panic
        - Branch String:   'smtp-server-connection.c:575,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:576,39'
              BranchSideFuncs:
                - smtp_server_connection_ssl_init
                - 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
                - i_panic
                - smtp_server_connection_input_lock
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:586,2'
              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
                - i_panic
        - Branch String:   'smtp-server-connection.c:576,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:577,4'
              BranchSideFuncs:
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:581,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
                - i_panic
                - smtp_server_connection_input_lock
        - Branch String:   'smtp-server-connection.c:581,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:582,38'
              BranchSideFuncs:
                - smtp_server_connection_input_lock
            - BranchSide:      'smtp-server-connection.c:585,2'
              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
                - i_panic
        - Branch String:   'smtp-server-connection.c:586,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:586,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:589,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:589,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:590,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:594,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:596,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:597,6'
              BranchSideFuncs:
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:599,38'
              BranchSideFuncs:
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:596,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:598,3'
              BranchSideFuncs:
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:599,38'
              BranchSideFuncs:
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:600,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:601,6'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:603,2'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:600,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:602,3'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:603,2'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:607,32'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:607,35'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:609,2'
              BranchSideFuncs:
                - smtp_server_connection_unref
        - Branch String:   'smtp-server-connection.c:607,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:608,60'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_unref
            - BranchSide:      'smtp-server-connection.c:609,2'
              BranchSideFuncs:
                - smtp_server_connection_unref
      Callsites:
        - Src:             'smtp-server-connection.c:568,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:573,2'
          Dst:             smtp_server_connection_timeout_reset
        - Src:             'smtp-server-connection.c:576,7'
          Dst:             smtp_server_connection_ssl_init
        - Src:             'smtp-server-connection.c:577,4'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-connection.c:582,4'
          Dst:             smtp_server_connection_input_lock
        - Src:             'smtp-server-connection.c:586,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:589,7'
          Dst:             smtp_server_connection_check_pipeline
        - Src:             'smtp-server-connection.c:590,3'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-connection.c:594,2'
          Dst:             smtp_server_connection_ref
        - Src:             'smtp-server-connection.c:599,2'
          Dst:             smtp_server_connection_handle_input
        - Src:             'smtp-server-connection.c:608,17'
          Dst:             smtp_server_connection_handle_output_error
        - Src:             'smtp-server-connection.c:609,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: 371
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         22
      ICount:          204
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - e_error
        - event_send_abort
        - event_want_level
        - i_stream_destroy
        - i_stream_ref
        - io_stream_create_ssl_server
        - master_service_ssl_init
        - o_stream_destroy
        - o_stream_ref
        - smtp_server_connection_init_ssl_ctx
        - smtp_server_connection_input_halt
        - smtp_server_connection_input_resume
        - smtp_server_connection_ready
        - smtp_server_connection_streams_changed
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:375,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:376,3'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'smtp-server-connection.c:380,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - io_stream_create_ssl_server
                - smtp_server_connection_input_resume
                - smtp_server_connection_streams_changed
                - smtp_server_connection_ready
                - e_error
                - master_service_ssl_init
                - i_stream_ref
                - o_stream_ref
                - i_stream_destroy
                - o_stream_destroy
                - e_debug
        - Branch String:   'smtp-server-connection.c:380,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:380,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_input_halt
                - io_stream_create_ssl_server
                - smtp_server_connection_input_resume
                - smtp_server_connection_streams_changed
                - smtp_server_connection_ready
                - e_error
                - master_service_ssl_init
                - i_stream_ref
                - o_stream_ref
                - i_stream_destroy
                - o_stream_destroy
            - BranchSide:      'smtp-server-connection.c:380,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_input_halt
                - io_stream_create_ssl_server
                - smtp_server_connection_input_resume
                - smtp_server_connection_streams_changed
                - smtp_server_connection_ready
                - e_error
                - master_service_ssl_init
                - i_stream_ref
                - o_stream_ref
                - i_stream_destroy
                - o_stream_destroy
        - Branch String:   'smtp-server-connection.c:382,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:384,16'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - i_stream_destroy
                - o_stream_destroy
                - smtp_server_connection_input_halt
                - io_stream_create_ssl_server
                - smtp_server_connection_input_resume
                - smtp_server_connection_streams_changed
                - smtp_server_connection_ready
                - e_error
                - master_service_ssl_init
            - BranchSide:      'smtp-server-connection.c:392,36'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
                - io_stream_create_ssl_server
                - smtp_server_connection_input_resume
                - smtp_server_connection_streams_changed
                - smtp_server_connection_ready
                - e_error
                - master_service_ssl_init
        - Branch String:   'smtp-server-connection.c:393,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:395,4'
              BranchSideFuncs:
                - master_service_ssl_init
                - smtp_server_connection_input_resume
                - smtp_server_connection_streams_changed
                - smtp_server_connection_ready
                - e_error
            - BranchSide:      'smtp-server-connection.c:399,4'
              BranchSideFuncs:
                - io_stream_create_ssl_server
                - smtp_server_connection_input_resume
                - smtp_server_connection_streams_changed
                - smtp_server_connection_ready
                - e_error
        - Branch String:   'smtp-server-connection.c:403,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:404,3'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'smtp-server-connection.c:409,38'
              BranchSideFuncs:
                - smtp_server_connection_input_resume
                - smtp_server_connection_streams_changed
                - smtp_server_connection_ready
        - Branch String:   'smtp-server-connection.c:414,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:415,32'
              BranchSideFuncs:
                - smtp_server_connection_ready
            - BranchSide:      'smtp-server-connection.c:417,42'
              BranchSideFuncs:
                - smtp_server_connection_streams_changed
      Callsites:
        - Src:             'smtp-server-connection.c:375,6'
          Dst:             smtp_server_connection_init_ssl_ctx
        - Src:             'smtp-server-connection.c:376,3'
          Dst:             e_error
        - Src:             'smtp-server-connection.c:380,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:380,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:380,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:384,3'
          Dst:             i_stream_ref
        - Src:             'smtp-server-connection.c:385,3'
          Dst:             o_stream_ref
        - Src:             'smtp-server-connection.c:386,3'
          Dst:             i_stream_destroy
        - Src:             'smtp-server-connection.c:387,3'
          Dst:             o_stream_destroy
        - Src:             'smtp-server-connection.c:392,2'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-connection.c:394,9'
          Dst:             master_service_ssl_init
        - Src:             'smtp-server-connection.c:398,9'
          Dst:             io_stream_create_ssl_server
        - Src:             'smtp-server-connection.c:404,3'
          Dst:             e_error
        - Src:             'smtp-server-connection.c:409,2'
          Dst:             smtp_server_connection_input_resume
        - Src:             'smtp-server-connection.c:415,3'
          Dst:             smtp_server_connection_ready
        - Src:             'smtp-server-connection.c:417,3'
          Dst:             smtp_server_connection_streams_changed
    - functionName:    smtp_server_connection_input_lock
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 128
      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:127,2'
          Dst:             smtp_server_connection_input_halt
    - functionName:    smtp_server_connection_handle_output_error
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 626
      functionLinenumberEnd: 629
      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:628,3'
          Dst:             o_stream_get_disconnect_reason
        - Src:             'smtp-server-connection.c:627,2'
          Dst:             smtp_server_connection_close
    - functionName:    smtp_server_connection_init_ssl_ctx
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - error_r
      BBCount:         15
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - smtp_server_init_ssl_ctx
        - ssl_iostream_context_ref
        - ssl_iostream_server_context_cache_get
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:351,28'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:351,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:352,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:351,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:352,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:353,6'
              BranchSideFuncs:
                - ssl_iostream_server_context_cache_get
                - t_strdup_printf
                - smtp_server_init_ssl_ctx
                - ssl_iostream_context_ref
        - Branch String:   'smtp-server-connection.c:353,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:354,32'
              BranchSideFuncs:
                - smtp_server_init_ssl_ctx
                - ssl_iostream_context_ref
            - BranchSide:      'smtp-server-connection.c:361,44'
              BranchSideFuncs:
                - ssl_iostream_server_context_cache_get
                - t_strdup_printf
        - Branch String:   'smtp-server-connection.c:354,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:355,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:356,19'
              BranchSideFuncs:
                - ssl_iostream_context_ref
        - Branch String:   'smtp-server-connection.c:361,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:364,43'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-server-connection.c:367,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:354,7'
          Dst:             smtp_server_init_ssl_ctx
        - Src:             'smtp-server-connection.c:357,3'
          Dst:             ssl_iostream_context_ref
        - Src:             'smtp-server-connection.c:361,6'
          Dst:             ssl_iostream_server_context_cache_get
        - Src:             'smtp-server-connection.c:363,14'
          Dst:             t_strdup_printf
    - functionName:    smtp_server_connection_input_resume
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 122
      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:94,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:96,7'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:118,6'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:96,26'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:96,29'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:98,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:96,48'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:97,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:98,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:96,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:98,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:99,46'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:99,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:100,4'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:103,9'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:104,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:105,8'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:111,7'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:105,26'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:105,29'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:106,16'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:105,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:106,16'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:109,10'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:111,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:112,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:115,28'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:118,28'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:118,28'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:119,28'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:118,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:118,6'
              BranchSideFuncs:
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:120,18'
              BranchSideFuncs:
                - io_set_pending
      Callsites:
        - Src:             'smtp-server-connection.c:99,8'
          Dst:             smtp_server_connection_check_pipeline
        - Src:             'smtp-server-connection.c:115,3'
          Dst:             connection_input_resume
        - Src:             'smtp-server-connection.c:119,3'
          Dst:             i_stream_have_bytes_left
        - Src:             'smtp-server-connection.c:120,3'
          Dst:             io_set_pending
    - functionName:    smtp_server_connection_ready
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         12
      ICount:          113
      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:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:288,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:290,2'
              BranchSideFuncs:
                - o_stream_uncork
            - BranchSide:      'smtp-server-connection.c:290,13'
              BranchSideFuncs:
                - smtp_server_connection_send_line
                - o_stream_uncork
                - smtp_server_connection_send_line
        - Branch String:   'smtp-server-connection.c:290,13'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:295,4'
              BranchSideFuncs:
                - smtp_server_connection_send_line
                - o_stream_uncork
            - BranchSide:      'smtp-server-connection.c:298,4'
              BranchSideFuncs:
                - smtp_server_connection_send_line
                - o_stream_uncork
        - Branch String:   'smtp-server-connection.c:301,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:301,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:302,19'
              BranchSideFuncs:
                - o_stream_uncork
      Callsites:
        - Src:             'smtp-server-connection.c:280,2'
          Dst:             smtp_server_connection_update_rawlog
        - Src:             'smtp-server-connection.c:282,22'
          Dst:             smtp_command_parser_init
        - Src:             'smtp-server-connection.c:284,2'
          Dst:             o_stream_set_flush_callback
        - Src:             'smtp-server-connection.c:284,2'
          Dst:             smtp_server_connection_output
        - Src:             'smtp-server-connection.c:287,2'
          Dst:             o_stream_cork
        - Src:             'smtp-server-connection.c:294,3'
          Dst:             smtp_server_connection_send_line
        - Src:             'smtp-server-connection.c:297,3'
          Dst:             smtp_server_connection_send_line
        - Src:             'smtp-server-connection.c:302,3'
          Dst:             o_stream_uncork
    - functionName:    smtp_server_connection_streams_changed
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 173
      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:167,2'
          Dst:             smtp_server_connection_update_rawlog
        - Src:             'smtp-server-connection.c:168,2'
          Dst:             smtp_command_parser_set_stream
        - Src:             'smtp-server-connection.c:170,2'
          Dst:             o_stream_set_flush_callback
        - Src:             'smtp-server-connection.c:170,2'
          Dst:             smtp_server_connection_output
        - Src:             'smtp-server-connection.c:172,2'
          Dst:             o_stream_set_flush_pending
    - functionName:    smtp_server_connection_update_rawlog
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 162
      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:150,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:151,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:153,7'
              BranchSideFuncs:
                - stat
                - iostream_rawlog_create
        - Branch String:   'smtp-server-connection.c:153,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:154,3'
              BranchSideFuncs:
                - iostream_rawlog_create
            - BranchSide:      'smtp-server-connection.c:158,6'
              BranchSideFuncs:
                - iostream_rawlog_create
        - Branch String:   'smtp-server-connection.c:155,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:156,4'
              BranchSideFuncs:
                - iostream_rawlog_create
            - BranchSide:      'smtp-server-connection.c:157,2'
              BranchSideFuncs:
                - iostream_rawlog_create
        - Branch String:   'smtp-server-connection.c:158,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:158,6'
              BranchSideFuncs:
                - iostream_rawlog_create
            - BranchSide:      'smtp-server-connection.c:159,26'
              BranchSideFuncs:
                - iostream_rawlog_create
      Callsites:
        - Src:             'smtp-server-connection.c:155,7'
          Dst:             stat
        - Src:             'smtp-server-connection.c:159,3'
          Dst:             iostream_rawlog_create
    - functionName:    smtp_server_connection_output
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 692
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         23
      ICount:          137
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - 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:695,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:695,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:695,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:700,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:701,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:704,6'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - o_stream_uncork_flush
        - Branch String:   'smtp-server-connection.c:704,15'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:704,19'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - o_stream_uncork_flush
            - BranchSide:      'smtp-server-connection.c:706,6'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:704,32'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:704,35'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:706,6'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:704,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:705,31'
              BranchSideFuncs:
                - o_stream_uncork_flush
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:706,6'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:706,32'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:706,35'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:706,32'
              BranchSideFuncs:
                - smtp_server_connection_unref
        - Branch String:   'smtp-server-connection.c:706,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:706,6'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_unref
            - BranchSide:      'smtp-server-connection.c:707,46'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_unref
      Callsites:
        - Src:             'smtp-server-connection.c:695,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:695,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:695,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:697,2'
          Dst:             smtp_server_connection_ref
        - Src:             'smtp-server-connection.c:698,2'
          Dst:             o_stream_cork
        - Src:             'smtp-server-connection.c:699,8'
          Dst:             smtp_server_connection_flush
        - Src:             'smtp-server-connection.c:701,3'
          Dst:             smtp_server_connection_timeout_reset
        - Src:             'smtp-server-connection.c:702,3'
          Dst:             smtp_server_connection_send_replies
        - Src:             'smtp-server-connection.c:705,9'
          Dst:             o_stream_uncork_flush
        - Src:             'smtp-server-connection.c:707,3'
          Dst:             smtp_server_connection_handle_output_error
        - Src:             'smtp-server-connection.c:710,2'
          Dst:             smtp_server_connection_unref
    - functionName:    smtp_server_connection_flush
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 689
      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:683,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:684,7'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:688,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:684,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:685,47'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:686,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:683,13'
          Dst:             o_stream_flush
        - Src:             'smtp-server-connection.c:685,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: 667
      functionLinenumberEnd: 676
      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:670,29'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:670,2'
              BranchSideFuncs:
                - smtp_server_connection_timeout_update
                - smtp_server_connection_input_resume
                - smtp_server_connection_next_reply
            - BranchSide:      'smtp-server-connection.c:670,66'
              BranchSideFuncs:
                - smtp_server_connection_next_reply
                - smtp_server_connection_timeout_update
                - smtp_server_connection_input_resume
        - Branch String:   'smtp-server-connection.c:670,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:670,10'
              BranchSideFuncs:
                - smtp_server_connection_next_reply
                - smtp_server_connection_timeout_update
                - smtp_server_connection_input_resume
            - BranchSide:      'smtp-server-connection.c:672,40'
              BranchSideFuncs:
                - smtp_server_connection_timeout_update
                - smtp_server_connection_input_resume
      Callsites:
        - Src:             'smtp-server-connection.c:670,32'
          Dst:             smtp_server_connection_next_reply
        - Src:             'smtp-server-connection.c:672,2'
          Dst:             smtp_server_connection_timeout_update
        - Src:             'smtp-server-connection.c:675,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: 169
      functionLinenumberEnd: 171
      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:170,2'
          Dst:             o_stream_uncork
        - Src:             '../../src/lib/ostream.h:171,9'
          Dst:             o_stream_flush
    - functionName:    smtp_server_connection_next_reply
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         11
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - event_send_abort
        - event_want_level
        - smtp_server_command_send_replies
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:637,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:639,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:643,42'
              BranchSideFuncs:
                - smtp_server_command_send_replies
        - Branch String:   'smtp-server-connection.c:639,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:639,3'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-connection.c:639,3'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-connection.c:639,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:639,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:639,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:643,9'
          Dst:             smtp_server_command_send_replies
    - 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:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_send_line
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1141
      functionLinenumberEnd: 1158
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - fmt
      BBCount:         14
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - event_send_abort
        - event_want_level
        - i_panic
        - o_stream_nsend
        - str_append
        - str_c
        - str_data
        - str_vprintfa
        - t_pop
        - t_push
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1152,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1152,3'
              BranchSideFuncs:
                - str_c
                - e_debug
                - str_append.785
                - str_data.751
                - str_len.705
                - o_stream_nsend
                - t_pop
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1152,3'
              BranchSideFuncs:
                - event_send_abort
                - str_append.785
                - str_data.751
                - str_len.705
                - o_stream_nsend
                - t_pop
                - i_panic
        - Branch String:   'smtp-server-connection.c:1156,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1156,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1156,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:1146,2'
          Dst:             t_push
        - Src:             'smtp-server-connection.c:1149,9'
          Dst:             t_str_new
        - Src:             'smtp-server-connection.c:1150,3'
          Dst:             str_vprintfa
        - Src:             'smtp-server-connection.c:1152,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1152,3'
          Dst:             str_c
        - Src:             'smtp-server-connection.c:1152,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1152,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1154,3'
          Dst:             str_append
        - Src:             'smtp-server-connection.c:1155,37'
          Dst:             str_data
        - Src:             'smtp-server-connection.c:1155,52'
          Dst:             str_len
        - Src:             'smtp-server-connection.c:1155,3'
          Dst:             o_stream_nsend
        - Src:             'smtp-server-connection.c:1156,4'
          Dst:             t_pop
        - Src:             'smtp-server-connection.c:1156,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_destroy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 312
      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:310,2'
          Dst:             smtp_server_connection_disconnect
        - Src:             'smtp-server-connection.c:311,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: 1677
      functionLinenumberEnd: 1681
      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:1678,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1679,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1680,38'
              BranchSideFuncs:
                - ssl_iostream_get_server_name
      Callsites:
        - Src:             'smtp-server-connection.c:1680,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: 1667
      functionLinenumberEnd: 1673
      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:1668,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1669,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1670,14'
              BranchSideFuncs:
                - event_reason_code
                - event_reason_begin
      Callsites:
        - Src:             'smtp-server-connection.c:1671,3'
          Dst:             event_reason_code
        - Src:             'smtp-server-connection.c:1672,9'
          Dst:             event_reason_begin
    - functionName:    smtp_server_connection_switch_ioloop
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1658
      functionLinenumberEnd: 1662
      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:1659,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1659,6'
              BranchSideFuncs:
                - io_loop_move_timeout
                - connection_switch_ioloop
            - BranchSide:      'smtp-server-connection.c:1660,41'
              BranchSideFuncs:
                - io_loop_move_timeout
                - connection_switch_ioloop
      Callsites:
        - Src:             'smtp-server-connection.c:1660,19'
          Dst:             io_loop_move_timeout
        - Src:             'smtp-server-connection.c:1661,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: 1641
      functionLinenumberEnd: 1655
      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:1644,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1645,3'
              BranchSideFuncs:
                - array_count_i.792
                - array_idx_set_i
                - array_append_space_i
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1648,24'
              BranchSideFuncs:
                - array_count_i.792
                - array_idx_set_i
                - array_append_space_i
                - i_panic
        - Branch String:   'smtp-server-connection.c:1650,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1650,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1651,3'
              BranchSideFuncs:
                - array_idx_set_i
                - array_append_space_i
      Callsites:
        - Src:             'smtp-server-connection.c:1642,10'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:1644,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-connection.c:1645,3'
          Dst:             array_create_i
        - Src:             'smtp-server-connection.c:1646,3'
          Dst:             array_append_i
        - Src:             'smtp-server-connection.c:1648,24'
          Dst:             array_count_i
        - Src:             'smtp-server-connection.c:1650,3'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1651,3'
          Dst:             array_idx_set_i
        - Src:             'smtp-server-connection.c:1654,2'
          Dst:             array_append_space_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.702
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.702
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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: 331
      functionLinenumberEnd: 336
      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:334,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: 1623
      functionLinenumberEnd: 1637
      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:1626,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1627,3'
              BranchSideFuncs:
                - array_count_i.792
                - array_idx_set_i
                - array_append_space_i
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1630,24'
              BranchSideFuncs:
                - array_count_i.792
                - array_idx_set_i
                - array_append_space_i
                - i_panic
        - Branch String:   'smtp-server-connection.c:1632,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1632,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1633,3'
              BranchSideFuncs:
                - array_idx_set_i
                - array_append_space_i
      Callsites:
        - Src:             'smtp-server-connection.c:1624,10'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:1626,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-connection.c:1627,3'
          Dst:             array_create_i
        - Src:             'smtp-server-connection.c:1628,3'
          Dst:             array_append_i
        - Src:             'smtp-server-connection.c:1630,24'
          Dst:             array_count_i
        - Src:             'smtp-server-connection.c:1632,3'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1633,3'
          Dst:             array_idx_set_i
        - Src:             'smtp-server-connection.c:1636,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: 1566
      functionLinenumberEnd: 1619
      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
        - 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:1567,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1568,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:1569,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:1569,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1570,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:1571,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:1571,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1572,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:1581,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:1576,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1577,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:1580,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:1581,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1582,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:1585,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:1585,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1586,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:1587,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:1587,34'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1588,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:1594,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:1587,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1589,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:1594,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:1589,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1589,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:1589,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:1594,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1595,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:1598,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:1598,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1599,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:1602,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
        - Branch String:   'smtp-server-connection.c:1602,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1603,28'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
            - BranchSide:      'smtp-server-connection.c:1604,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
        - Branch String:   'smtp-server-connection.c:1604,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1605,30'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
            - BranchSide:      'smtp-server-connection.c:1607,32'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
        - Branch String:   'smtp-server-connection.c:1610,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1610,30'
              BranchSideFuncs:
                - smtp_server_connection_get_proxy_data
            - BranchSide:      'smtp-server-connection.c:1611,6'
              BranchSideFuncs:
                - smtp_server_connection_get_proxy_data
        - Branch String:   'smtp-server-connection.c:1610,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1610,6'
              BranchSideFuncs:
                - smtp_server_connection_get_proxy_data
            - BranchSide:      'smtp-server-connection.c:1612,26'
              BranchSideFuncs:
                - smtp_server_connection_get_proxy_data
      Callsites:
        - Src:             'smtp-server-connection.c:1572,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1573,23'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1577,4'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1578,23'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1582,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1583,20'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1588,6'
          Dst:             strcmp
        - Src:             'smtp-server-connection.c:1589,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1589,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1589,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1591,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1592,22'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1595,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1596,28'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1599,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1600,22'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1607,2'
          Dst:             connection_update_properties
        - Src:             'smtp-server-connection.c:1608,2'
          Dst:             smtp_server_connection_update_event
        - Src:             'smtp-server-connection.c:1614,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:    138
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_update_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 764
      functionLinenumberEnd: 767
      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:765,2'
          Dst:             event_add_str
        - Src:             'smtp-server-connection.c:766,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: 1537
      functionLinenumberEnd: 1561
      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:1541,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1542,22'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1543,11'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1550,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1551,23'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1552,11'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1552,11'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1553,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1554,11'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1554,11'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1555,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1557,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_connection_get_transaction_id
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1529
      functionLinenumberEnd: 1533
      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:1530,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1531,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1532,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_connection_get_transaction
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1523
      functionLinenumberEnd: 1524
      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: 1498
      functionLinenumberEnd: 1518
      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:1501,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1503,7'
              BranchSideFuncs:
                - str_append.785
                - str_c
                - str_append_c.795
                - str_append_c.795
                - str_append.785
            - BranchSide:      'smtp-server-connection.c:1509,14'
              BranchSideFuncs:
                - str_append.785
                - str_c
                - str_append_c.795
                - str_append_c.795
            - BranchSide:      'smtp-server-connection.c:1512,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-server-connection.c:1503,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1504,15'
              BranchSideFuncs:
                - str_append.785
                - str_c
                - str_append_c.795
                - str_append_c.795
            - BranchSide:      'smtp-server-connection.c:1506,15'
              BranchSideFuncs:
                - str_append.785
                - str_c
                - str_append_c.795
                - str_append_c.795
        - Branch String:   'smtp-server-connection.c:1514,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1515,3'
              BranchSideFuncs:
                - str_append_c.795
                - str_c
                - str_append_c.795
            - BranchSide:      'smtp-server-connection.c:1516,6'
              BranchSideFuncs:
                - str_c
                - str_append_c.795
        - Branch String:   'smtp-server-connection.c:1516,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1516,6'
              BranchSideFuncs:
                - str_append_c.795
                - str_c
            - BranchSide:      'smtp-server-connection.c:1517,3'
              BranchSideFuncs:
                - str_append_c.795
                - str_c
      Callsites:
        - Src:             'smtp-server-connection.c:1499,20'
          Dst:             t_str_new
        - Src:             'smtp-server-connection.c:1504,4'
          Dst:             str_append
        - Src:             'smtp-server-connection.c:1506,4'
          Dst:             str_append
        - Src:             'smtp-server-connection.c:1509,3'
          Dst:             str_append
        - Src:             'smtp-server-connection.c:1512,3'
          Dst:             i_unreached
        - Src:             'smtp-server-connection.c:1515,3'
          Dst:             str_append_c
        - Src:             'smtp-server-connection.c:1517,3'
          Dst:             str_append_c
        - Src:             'smtp-server-connection.c:1518,9'
          Dst:             str_c
    - functionName:    smtp_server_connection_get_protocol
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1492
      functionLinenumberEnd: 1493
      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_trusted
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1484
      functionLinenumberEnd: 1488
      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:1485,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1485,33'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1486,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1485,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1486,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1487,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_connection_is_ssl_secured
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1479
      functionLinenumberEnd: 1480
      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: 1474
      functionLinenumberEnd: 1475
      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: 230
      functionLinenumberEnd: 233
      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:231,2'
          Dst:             buffer_insert
    - functionName:    smtp_server_connection_add_extra_capability
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1433
      functionLinenumberEnd: 1471
      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:1440,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1440,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1441,2'
              BranchSideFuncs:
                - smtp_ehlo_params_are_valid
                - smtp_capability_find_by_name
                - array_is_created_i.789
                - array_create_i.790
                - array_count_i.792
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-connection.c:1441,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1441,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1444,2'
              BranchSideFuncs:
                - smtp_capability_find_by_name
                - array_is_created_i.789
                - array_create_i.790
                - array_count_i.792
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-connection.c:1444,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1444,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1447,7'
              BranchSideFuncs:
                - array_is_created_i.789
                - array_create_i.790
                - array_count_i.792
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
        - Branch String:   'smtp-server-connection.c:1447,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1448,3'
              BranchSideFuncs:
                - array_count_i.792
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1451,15'
              BranchSideFuncs:
                - array_count_i.792
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
        - Branch String:   'smtp-server-connection.c:1452,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1453,24'
              BranchSideFuncs:
                - strcasecmp
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1465,2'
              BranchSideFuncs:
                - p_strdup
                - array_insert_i
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:1456,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1456,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1458,7'
              BranchSideFuncs:
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
        - Branch String:   'smtp-server-connection.c:1458,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1459,17'
              BranchSideFuncs:
                - p_strdup
                - array_insert_i
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:1463,2'
              BranchSideFuncs:
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
        - Branch String:   'smtp-server-connection.c:1467,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1467,6'
              BranchSideFuncs:
                - p_strarray_dup
                - array_insert_i
            - BranchSide:      'smtp-server-connection.c:1468,35'
              BranchSideFuncs:
                - p_strarray_dup
                - array_insert_i
      Callsites:
        - Src:             'smtp-server-connection.c:1440,2'
          Dst:             smtp_ehlo_keyword_is_valid
        - Src:             'smtp-server-connection.c:1440,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1441,2'
          Dst:             smtp_ehlo_params_are_valid
        - Src:             'smtp-server-connection.c:1441,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1444,2'
          Dst:             smtp_capability_find_by_name
        - Src:             'smtp-server-connection.c:1444,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1447,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-connection.c:1448,3'
          Dst:             array_create_i
        - Src:             'smtp-server-connection.c:1451,15'
          Dst:             array_count_i
        - Src:             'smtp-server-connection.c:1453,13'
          Dst:             strcasecmp
        - Src:             'smtp-server-connection.c:1456,3'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1466,17'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:1468,20'
          Dst:             p_strarray_dup
        - Src:             'smtp-server-connection.c:1470,2'
          Dst:             array_insert_i
    - functionName:    smtp_server_connection_set_capabilities
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1426
      functionLinenumberEnd: 1428
      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: 1416
      functionLinenumberEnd: 1422
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - event_send_abort
        - event_want_level
        - p_free_internal
        - smtp_server_connection_reset_state
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1417,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1417,2'
              BranchSideFuncs:
                - e_debug
                - p_free_internal
                - smtp_server_connection_reset_state
            - BranchSide:      'smtp-server-connection.c:1417,2'
              BranchSideFuncs:
                - event_send_abort
                - p_free_internal
                - smtp_server_connection_reset_state
      Callsites:
        - Src:             'smtp-server-connection.c:1417,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1417,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1417,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1419,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1421,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: 1386
      functionLinenumberEnd: 1390
      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:1387,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1388,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1389,42'
              BranchSideFuncs:
                - ssl_iostream_get_security_string
      Callsites:
        - Src:             'smtp-server-connection.c:1389,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: 1357
      functionLinenumberEnd: 1360
      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:1358,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1358,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1359,13'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_connection_get_helo_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1350
      functionLinenumberEnd: 1351
      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_abort
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1262
      functionLinenumberEnd: 1282
      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:1266,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1267,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1268,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:1270,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1270,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1271,2'
              BranchSideFuncs:
                - smtp_server_connection_terminate
                - t_strsplit_spaces
                - smtp_server_connection_reply_lines
                - smtp_server_connection_terminate
        - Branch String:   'smtp-server-connection.c:1273,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1274,36'
              BranchSideFuncs:
                - t_strsplit_spaces
                - smtp_server_connection_reply_lines
                - smtp_server_connection_terminate
            - BranchSide:      'smtp-server-connection.c:1280,43'
              BranchSideFuncs:
                - smtp_server_connection_terminate
      Callsites:
        - Src:             'smtp-server-connection.c:1270,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1274,18'
          Dst:             t_strsplit_spaces
        - Src:             'smtp-server-connection.c:1275,3'
          Dst:             smtp_server_connection_reply_lines
        - Src:             'smtp-server-connection.c:1277,3'
          Dst:             smtp_server_connection_terminate
        - Src:             'smtp-server-connection.c:1280,3'
          Dst:             smtp_server_connection_terminate
    - functionName:    smtp_server_connection_resume
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1293
      functionLinenumberEnd: 1297
      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:1294,2'
          Dst:             smtp_server_connection_input_unlock
        - Src:             'smtp-server-connection.c:1295,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: 131
      functionLinenumberEnd: 134
      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:133,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: 1254
      functionLinenumberEnd: 1257
      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:1255,2'
          Dst:             smtp_server_connection_start_pending
        - Src:             'smtp-server-connection.c:1256,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: 1240
      functionLinenumberEnd: 1251
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         13
      ICount:          83
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - smtp_server_connection_input_unlock
        - smtp_server_connection_ready
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1241,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1241,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1242,2'
              BranchSideFuncs:
                - smtp_server_connection_ready
                - smtp_server_connection_input_unlock
        - Branch String:   'smtp-server-connection.c:1247,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1248,32'
              BranchSideFuncs:
                - smtp_server_connection_input_unlock
            - BranchSide:      'smtp-server-connection.c:1249,11'
              BranchSideFuncs:
                - smtp_server_connection_input_unlock
      Callsites:
        - Src:             'smtp-server-connection.c:1241,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1248,3'
          Dst:             smtp_server_connection_ready
        - Src:             'smtp-server-connection.c:1250,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: 1218
      functionLinenumberEnd: 1237
      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:1219,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1219,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1221,2'
              BranchSideFuncs:
                - p_free_internal
                - i_strdup
                - i_stream_add_data
                - i_panic
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1224,19'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1224,23'
              BranchSideFuncs:
                - i_stream_add_data
                - i_panic
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1230,2'
              BranchSideFuncs:
                - i_stream_add_data
                - i_panic
        - Branch String:   'smtp-server-connection.c:1224,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1225,3'
              BranchSideFuncs:
                - p_free_internal
                - i_strdup
                - i_stream_add_data
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1230,2'
              BranchSideFuncs:
                - i_stream_add_data
                - i_panic
        - Branch String:   'smtp-server-connection.c:1233,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1233,6'
              BranchSideFuncs:
                - i_stream_add_data
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1234,26'
              BranchSideFuncs:
                - i_stream_add_data
                - i_panic
        - Branch String:   'smtp-server-connection.c:1234,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1235,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1236,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:1219,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1222,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1223,19'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1225,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1226,23'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1234,8'
          Dst:             i_stream_add_data
        - Src:             'smtp-server-connection.c:1235,4'
          Dst:             i_panic
    - functionName:    smtp_server_connection_reply_immediate
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1189
      functionLinenumberEnd: 1212
      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:
        - 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_printfa
        - str_vprintfa
        - t_pop
        - t_push
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1200,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1200,3'
              BranchSideFuncs:
                - str_c
                - e_debug
                - str_append.785
                - str_data.751
                - str_len.705
                - o_stream_nsend
                - t_pop
                - o_stream_is_corked
                - o_stream_uncork
                - o_stream_cork
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1200,3'
              BranchSideFuncs:
                - event_send_abort
                - str_append.785
                - str_data.751
                - str_len.705
                - o_stream_nsend
                - t_pop
                - o_stream_is_corked
                - o_stream_uncork
                - o_stream_cork
                - i_panic
        - Branch String:   'smtp-server-connection.c:1204,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1204,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1204,4'
              BranchSideFuncs:
                - o_stream_is_corked
                - o_stream_uncork
                - o_stream_cork
        - Branch String:   'smtp-server-connection.c:1208,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1208,6'
              BranchSideFuncs:
                - o_stream_uncork
                - o_stream_cork
            - BranchSide:      'smtp-server-connection.c:1209,19'
              BranchSideFuncs:
                - o_stream_uncork
                - o_stream_cork
      Callsites:
        - Src:             'smtp-server-connection.c:1193,2'
          Dst:             t_push
        - Src:             'smtp-server-connection.c:1196,9'
          Dst:             t_str_new
        - Src:             'smtp-server-connection.c:1197,3'
          Dst:             str_printfa
        - Src:             'smtp-server-connection.c:1198,3'
          Dst:             str_vprintfa
        - Src:             'smtp-server-connection.c:1200,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1200,3'
          Dst:             str_c
        - Src:             'smtp-server-connection.c:1200,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1200,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1202,3'
          Dst:             str_append
        - Src:             'smtp-server-connection.c:1203,37'
          Dst:             str_data
        - Src:             'smtp-server-connection.c:1203,52'
          Dst:             str_len
        - Src:             'smtp-server-connection.c:1203,3'
          Dst:             o_stream_nsend
        - Src:             'smtp-server-connection.c:1204,4'
          Dst:             t_pop
        - Src:             'smtp-server-connection.c:1204,4'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1208,6'
          Dst:             o_stream_is_corked
        - Src:             'smtp-server-connection.c:1209,3'
          Dst:             o_stream_uncork
        - Src:             'smtp-server-connection.c:1210,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: 984
      functionLinenumberEnd: 1014
      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:         24
      ICount:          198
      EdgeCount:       28
      CyclomaticComplexity: 6
      functionsReached:
        - connection_init_from_streams
        - event_send_abort
        - event_unref
        - event_want_level
        - i_panic
        - i_stream_get_fd
        - o_stream_get_fd
        - smtp_server_connection_alloc
        - smtp_server_connection_event_create
        - smtp_server_connection_halt
        - smtp_server_connection_update_event
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:991,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:991,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:992,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_halt
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-connection.c:992,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:992,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:994,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_halt
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:996,24'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:996,27'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_halt
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:998,6'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_halt
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:996,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:997,3'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_halt
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:998,6'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_halt
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:998,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:999,28'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_halt
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1000,51'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_halt
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:1012,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1012,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1012,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-connection.c:989,10'
          Dst:             i_stream_get_fd
        - Src:             'smtp-server-connection.c:990,11'
          Dst:             o_stream_get_fd
        - Src:             'smtp-server-connection.c:991,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:992,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:994,9'
          Dst:             smtp_server_connection_alloc
        - Src:             'smtp-server-connection.c:1000,15'
          Dst:             smtp_server_connection_event_create
        - Src:             'smtp-server-connection.c:1002,2'
          Dst:             connection_init_from_streams
        - Src:             'smtp-server-connection.c:1006,2'
          Dst:             smtp_server_connection_update_event
        - Src:             'smtp-server-connection.c:1007,2'
          Dst:             event_unref
        - Src:             'smtp-server-connection.c:1010,2'
          Dst:             smtp_server_connection_halt
        - Src:             'smtp-server-connection.c:1012,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1012,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1012,2'
          Dst:             event_send_abort
    - functionName:    smtp_server_connection_alloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 792
      functionLinenumberEnd: 942
      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:          915
      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
        - smtp_command_limits_merge
        - smtp_server_connection_init_session
        - ssl_iostream_settings_dup
        - str_array_length
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:806,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:807,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
                - ssl_iostream_settings_dup
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:896,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:808,31'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:808,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
                - ssl_iostream_settings_dup
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:811,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
                - ssl_iostream_settings_dup
        - Branch String:   'smtp-server-connection.c:808,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:809,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
                - ssl_iostream_settings_dup
            - BranchSide:      'smtp-server-connection.c:811,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
                - ssl_iostream_settings_dup
        - Branch String:   'smtp-server-connection.c:811,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:812,46'
              BranchSideFuncs:
                - ssl_iostream_settings_dup
                - 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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:814,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-server-connection.c:814,29'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:814,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:816,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
        - Branch String:   'smtp-server-connection.c:814,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:815,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:816,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
        - Branch String:   'smtp-server-connection.c:816,35'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:817,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:821,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:816,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:819,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:821,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:821,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:822,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:823,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:825,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:827,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:829,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:829,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:831,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:833,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:833,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:834,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:836,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:836,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:837,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:838,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:842,34'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:843,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:844,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:842,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:844,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:845,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:845,14'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:847,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:847,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:847,14'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:850,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:855,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:859,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:861,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:863,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:863,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:865,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:867,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:867,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:869,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:872,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:872,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:874,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:876,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:876,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:878,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:882,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:882,27'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:881,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:882,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:884,28'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:883,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:884,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:886,37'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:885,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:887,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:889,35'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:888,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:890,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:892,26'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:891,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:892,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:893,37'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:893,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:893,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:896,18'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:896,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - str_array_length
                - array_create_i.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:907,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:896,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:899,3'
              BranchSideFuncs:
                - str_array_length
                - array_create_i.790
                - 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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:907,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:901,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:902,31'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.791
                - 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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:905,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
        - Branch String:   'smtp-server-connection.c:907,18'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:907,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.790
                - array_append_space_i
                - p_strdup
                - array_append_i.791
            - BranchSide:      'smtp-server-connection.c:919,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:907,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:910,3'
              BranchSideFuncs:
                - str_array_length
                - array_create_i.790
                - 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.791
            - BranchSide:      'smtp-server-connection.c:919,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:912,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:913,31'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.791
                - 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:916,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:920,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:921,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:922,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:925,39'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:926,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:932,6'
              BranchSideFuncs:
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
        - Branch String:   'smtp-server-connection.c:925,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:928,3'
              BranchSideFuncs:
                - e_error
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
            - BranchSide:      'smtp-server-connection.c:932,6'
              BranchSideFuncs:
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
        - Branch String:   'smtp-server-connection.c:932,39'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:932,39'
              BranchSideFuncs:
                - net_set_recv_buffer_size
                - smtp_server_connection_init_session
                - e_error
            - BranchSide:      'smtp-server-connection.c:933,31'
              BranchSideFuncs:
                - net_set_recv_buffer_size
                - smtp_server_connection_init_session
                - e_error
        - Branch String:   'smtp-server-connection.c:932,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:932,6'
              BranchSideFuncs:
                - e_error
                - smtp_server_connection_init_session
            - BranchSide:      'smtp-server-connection.c:935,3'
              BranchSideFuncs:
                - e_error
                - smtp_server_connection_init_session
      Callsites:
        - Src:             'smtp-server-connection.c:796,9'
          Dst:             pool_alloconly_create
        - Src:             'smtp-server-connection.c:797,9'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-connection.c:797,9'
          Dst:             p_malloc
        - Src:             'smtp-server-connection.c:809,27'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:812,20'
          Dst:             ssl_iostream_settings_dup
        - Src:             'smtp-server-connection.c:815,25'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:819,5'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:838,3'
          Dst:             smtp_command_limits_merge
        - Src:             'smtp-server-connection.c:861,5'
          Dst:             p_strarray_dup
        - Src:             'smtp-server-connection.c:865,5'
          Dst:             p_strarray_dup
        - Src:             'smtp-server-connection.c:869,5'
          Dst:             p_strarray_dup
        - Src:             'smtp-server-connection.c:899,3'
          Dst:             str_array_length
        - Src:             'smtp-server-connection.c:899,3'
          Dst:             array_create_i
        - Src:             'smtp-server-connection.c:902,22'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:903,4'
          Dst:             array_append_i
        - Src:             'smtp-server-connection.c:905,3'
          Dst:             array_append_space_i
        - Src:             'smtp-server-connection.c:910,3'
          Dst:             str_array_length
        - Src:             'smtp-server-connection.c:910,3'
          Dst:             array_create_i
        - Src:             'smtp-server-connection.c:913,22'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:914,4'
          Dst:             array_append_i
        - Src:             'smtp-server-connection.c:916,3'
          Dst:             array_append_space_i
        - Src:             'smtp-server-connection.c:919,2'
          Dst:             net_set_nonblock
        - Src:             'smtp-server-connection.c:921,3'
          Dst:             net_set_nonblock
        - Src:             'smtp-server-connection.c:922,8'
          Dst:             net_set_tcp_nodelay
        - Src:             'smtp-server-connection.c:926,6'
          Dst:             net_set_send_buffer_size
        - Src:             'smtp-server-connection.c:928,3'
          Dst:             e_error
        - Src:             'smtp-server-connection.c:933,6'
          Dst:             net_set_recv_buffer_size
        - Src:             'smtp-server-connection.c:935,3'
          Dst:             e_error
        - Src:             'smtp-server-connection.c:940,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: 747
      functionLinenumberEnd: 759
      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:750,18'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:750,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:754,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:750,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:751,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:754,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:757,50'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:757,53'
              BranchSideFuncs:
                - event_set_forced_debug
            - BranchSide:      'smtp-server-connection.c:757,50'
              BranchSideFuncs:
                - event_set_forced_debug
      Callsites:
        - Src:             'smtp-server-connection.c:751,16'
          Dst:             event_create
        - Src:             'smtp-server-connection.c:752,3'
          Dst:             smtp_server_event_init
        - Src:             'smtp-server-connection.c:754,16'
          Dst:             event_create
        - Src:             'smtp-server-connection.c:756,18'
          Dst:             smtp_protocol_name
        - Src:             'smtp-server-connection.c:755,42'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-connection.c:755,2'
          Dst:             event_set_append_log_prefix
        - Src:             'smtp-server-connection.c:757,2'
          Dst:             event_set_forced_debug
    - functionName:    smtp_server_connection_halt
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1285
      functionLinenumberEnd: 1290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         11
      ICount:          59
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_server_connection_input_lock
        - smtp_server_connection_timeout_stop
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1288,21'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1288,25'
              BranchSideFuncs:
                - smtp_server_connection_input_lock
            - BranchSide:      'smtp-server-connection.c:1289,37'
              BranchSideFuncs:
                - smtp_server_connection_input_lock
        - Branch String:   'smtp-server-connection.c:1288,41'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1288,44'
              BranchSideFuncs:
                - smtp_server_connection_input_lock
            - BranchSide:      'smtp-server-connection.c:1289,37'
              BranchSideFuncs:
                - smtp_server_connection_input_lock
        - Branch String:   'smtp-server-connection.c:1288,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1288,6'
              BranchSideFuncs:
                - smtp_server_connection_input_lock
            - BranchSide:      'smtp-server-connection.c:1289,37'
              BranchSideFuncs:
                - smtp_server_connection_input_lock
      Callsites:
        - Src:             'smtp-server-connection.c:1287,2'
          Dst:             smtp_server_connection_timeout_stop
        - Src:             'smtp-server-connection.c:1289,3'
          Dst:             smtp_server_connection_input_lock
    - functionName:    smtp_server_connection_create
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 951
      functionLinenumberEnd: 974
      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:         11
      ICount:          138
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - connection_init_server_ip
        - event_send_abort
        - event_unref
        - event_want_level
        - smtp_server_connection_alloc
        - smtp_server_connection_event_create
        - smtp_server_connection_halt
        - smtp_server_connection_update_event
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:966,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:967,3'
              BranchSideFuncs:
                - smtp_server_connection_halt
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:970,30'
              BranchSideFuncs:
                - smtp_server_connection_halt
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:972,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:972,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-connection.c:972,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-connection.c:955,9'
          Dst:             smtp_server_connection_alloc
        - Src:             'smtp-server-connection.c:957,15'
          Dst:             smtp_server_connection_event_create
        - Src:             'smtp-server-connection.c:959,2'
          Dst:             connection_init_server_ip
        - Src:             'smtp-server-connection.c:962,2'
          Dst:             smtp_server_connection_update_event
        - Src:             'smtp-server-connection.c:963,2'
          Dst:             event_unref
        - Src:             'smtp-server-connection.c:970,2'
          Dst:             smtp_server_connection_halt
        - Src:             'smtp-server-connection.c:972,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:972,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:972,2'
          Dst:             event_send_abort
    - functionName:    smtp_server_connection_list_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 740
      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:740,9'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:740,9'
              BranchSideFuncs:
                - connection_list_init
            - BranchSide:      'smtp-server-connection.c:740,9'
              BranchSideFuncs:
                - connection_list_init
      Callsites:
        - Src:             'smtp-server-connection.c:740,9'
          Dst:             connection_list_init
    - functionName:    smtp_server_connection_trigger_output
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 720
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         11
      ICount:          56
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - event_send_abort
        - event_want_level
        - o_stream_set_flush_pending
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:716,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:716,6'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - o_stream_set_flush_pending
                - e_debug
            - BranchSide:      'smtp-server-connection.c:717,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - o_stream_set_flush_pending
                - e_debug
        - Branch String:   'smtp-server-connection.c:717,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:717,3'
              BranchSideFuncs:
                - e_debug
                - o_stream_set_flush_pending
            - BranchSide:      'smtp-server-connection.c:717,3'
              BranchSideFuncs:
                - event_send_abort
                - o_stream_set_flush_pending
      Callsites:
        - Src:             'smtp-server-connection.c:717,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:717,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:717,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:718,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: 654
      functionLinenumberEnd: 663
      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:656,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:656,6'
              BranchSideFuncs:
                - o_stream_uncork_flush
                - smtp_server_connection_trigger_output
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:657,29'
              BranchSideFuncs:
                - o_stream_uncork_flush
                - smtp_server_connection_trigger_output
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:657,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:658,47'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:661,41'
              BranchSideFuncs:
                - smtp_server_connection_trigger_output
      Callsites:
        - Src:             'smtp-server-connection.c:657,7'
          Dst:             o_stream_uncork_flush
        - Src:             'smtp-server-connection.c:658,4'
          Dst:             smtp_server_connection_handle_output_error
        - Src:             'smtp-server-connection.c:661,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: 647
      functionLinenumberEnd: 651
      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:649,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:649,6'
              BranchSideFuncs:
                - o_stream_cork
            - BranchSide:      'smtp-server-connection.c:650,17'
              BranchSideFuncs:
                - o_stream_cork
      Callsites:
        - Src:             'smtp-server-connection.c:650,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: 614
      functionLinenumberEnd: 618
      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:615,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:616,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:617,42'
              BranchSideFuncs:
                - smtp_command_parser_pending_data
      Callsites:
        - Src:             'smtp-server-connection.c:617,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: 200
      functionLinenumberEnd: 205
      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:204,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: 178
      functionLinenumberEnd: 195
      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:182,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:182,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:182,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:182,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:185,2'
          Dst:             i_stream_ref
        - Src:             'smtp-server-connection.c:188,2'
          Dst:             o_stream_ref
        - Src:             'smtp-server-connection.c:189,2'
          Dst:             o_stream_set_no_error_handling
        - Src:             'smtp-server-connection.c:191,2'
          Dst:             i_stream_unref
        - Src:             'smtp-server-connection.c:192,2'
          Dst:             o_stream_unref
        - Src:             'smtp-server-connection.c:194,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: 139
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - callback
        - context
      BBCount:         10
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - connection_input_halt
        - i_panic
        - io_add_istream
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:140,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:140,2'
              BranchSideFuncs:
                - connection_input_halt
                - io_add_istream
                - i_panic
            - BranchSide:      'smtp-server-connection.c:140,2'
              BranchSideFuncs:
                - connection_input_halt
                - io_add_istream
                - i_panic
        - Branch String:   'smtp-server-connection.c:140,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:140,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:140,2'
              BranchSideFuncs:
                - connection_input_halt
                - io_add_istream
      Callsites:
        - Src:             'smtp-server-connection.c:140,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:141,2'
          Dst:             connection_input_halt
        - Src:             'smtp-server-connection.c:142,18'
          Dst:             io_add_istream
    - functionName:    smtp_server_connection_get_stats
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 60
      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:59,2'
          Dst:             smtp_server_connection_update_stats
    - functionName:    smtp_server_init_ssl_ctx
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server.c'
      linkageType:     externalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - server
        - error_r
      BBCount:         11
      ICount:          66
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ssl_iostream_server_context_cache_get
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server.c:143,30'
          Branch Sides:
            - BranchSide:      'smtp-server.c:143,33'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server.c:144,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server.c:143,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:144,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server.c:146,44'
              BranchSideFuncs:
                - ssl_iostream_server_context_cache_get
                - t_strdup_printf
        - Branch String:   'smtp-server.c:146,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:149,9'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-server.c:152,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server.c:146,6'
          Dst:             ssl_iostream_server_context_cache_get
        - Src:             'smtp-server.c:148,14'
          Dst:             t_strdup_printf
    - 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: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_deinit
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server.c'
      linkageType:     externalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _server
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - connection_list_deinit
        - event_unref
        - pool_unref
        - ssl_iostream_context_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server.c:116,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:116,6'
              BranchSideFuncs:
                - ssl_iostream_context_unref
                - event_unref
                - pool_unref.855
            - BranchSide:      'smtp-server.c:117,31'
              BranchSideFuncs:
                - ssl_iostream_context_unref
                - event_unref
                - pool_unref.855
      Callsites:
        - Src:             'smtp-server.c:114,2'
          Dst:             connection_list_deinit
        - Src:             'smtp-server.c:117,3'
          Dst:             ssl_iostream_context_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: 104
      functionLinenumberEnd: 108
      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:105,2'
          Dst:             event_add_category
        - Src:             'smtp-server.c:107,9'
          Dst:             smtp_protocol_name
        - Src:             'smtp-server.c:106,2'
          Dst:             event_add_str
    - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    smtp_server_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server.c'
      linkageType:     externalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
      BBCount:         36
      ICount:          480
      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
        - smtp_server_commands_init
        - smtp_server_connection_list_init
        - smtp_server_event_init
        - ssl_iostream_settings_dup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server.c:40,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:42,30'
              BranchSideFuncs:
                - ssl_iostream_settings_dup
                - 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:45,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:45,28'
          Branch Sides:
            - BranchSide:      'smtp-server.c:45,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:48,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:45,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:46,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:48,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:49,34'
          Branch Sides:
            - BranchSide:      'smtp-server.c:49,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:52,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:49,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:50,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:52,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:53,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:54,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:56,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:60,40'
          Branch Sides:
            - BranchSide:      'smtp-server.c:60,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:61,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:62,34'
          Branch Sides:
            - BranchSide:      'smtp-server.c:62,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:63,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:68,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:70,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:72,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:72,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:74,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:76,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:76,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:76,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:78,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:32,9'
          Dst:             pool_alloconly_create
        - Src:             'smtp-server.c:33,11'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server.c:33,11'
          Dst:             p_malloc
        - Src:             'smtp-server.c:37,3'
          Dst:             p_strdup
        - Src:             'smtp-server.c:38,27'
          Dst:             p_strdup_empty
        - Src:             'smtp-server.c:42,4'
          Dst:             ssl_iostream_settings_dup
        - Src:             'smtp-server.c:46,26'
          Dst:             p_strdup
        - Src:             'smtp-server.c:48,41'
          Dst:             my_hostdomain
        - Src:             'smtp-server.c:48,26'
          Dst:             p_strdup
        - Src:             'smtp-server.c:50,32'
          Dst:             p_strdup
        - Src:             'smtp-server.c:70,4'
          Dst:             p_strarray_dup
        - Src:             'smtp-server.c:74,4'
          Dst:             p_strarray_dup
        - Src:             'smtp-server.c:78,4'
          Dst:             p_strarray_dup
        - Src:             'smtp-server.c:94,18'
          Dst:             event_create
        - Src:             'smtp-server.c:95,2'
          Dst:             smtp_server_event_init
        - Src:             'smtp-server.c:96,2'
          Dst:             event_set_forced_debug
        - Src:             'smtp-server.c:98,22'
          Dst:             smtp_server_connection_list_init
        - Src:             'smtp-server.c:99,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: 133
      functionLinenumberEnd: 136
      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: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:273,2'
          Dst:             i_panic
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 336
      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:334,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.936
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.936
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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.944
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.943
                - malloc_multiply_check.945
                - p_malloc.947
                - __ctype_b_loc
            - BranchSide:      'smtp-syntax.c:259,2'
              BranchSideFuncs:
                - p_strdup_until
                - array_create_i.944
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.943
                - malloc_multiply_check.945
                - p_malloc.947
                - __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.944
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.943
                - malloc_multiply_check.945
                - p_malloc.947
            - BranchSide:      'smtp-syntax.c:262,10'
              BranchSideFuncs:
                - __ctype_b_loc
                - p_strdup_until
                - array_create_i.944
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.943
                - malloc_multiply_check.945
                - p_malloc.947
        - Branch String:   'smtp-syntax.c:261,2'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:263,3'
              BranchSideFuncs:
                - p_strdup_until
                - array_create_i.944
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.943
                - malloc_multiply_check.945
                - p_malloc.947
                - __ctype_b_loc
            - BranchSide:      'smtp-syntax.c:265,26'
              BranchSideFuncs:
                - p_strdup_until
                - array_create_i.944
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.943
                - malloc_multiply_check.945
                - p_malloc.947
        - Branch String:   'smtp-syntax.c:267,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:268,15'
              BranchSideFuncs:
                - malloc_multiply_check.945
                - p_malloc.947
            - BranchSide:      'smtp-syntax.c:271,7'
              BranchSideFuncs:
                - array_create_i.944
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.943
        - 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.944
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.943
        - 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.943
                - array_append_space_i.942
                - array_idx_i.937
                - p_strdup_until
                - array_append_i.943
            - BranchSide:      'smtp-syntax.c:299,25'
              BranchSideFuncs:
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
        - Branch String:   'smtp-syntax.c:280,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:281,8'
              BranchSideFuncs:
                - p_strdup_until
                - array_append_i.943
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
                - smtp_char_is_ehlo_param
            - BranchSide:      'smtp-syntax.c:291,40'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
                - p_strdup_until
                - array_append_i.943
        - 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.943
                - p_strdup_until
                - array_append_i.943
                - array_append_space_i.942
                - array_idx_i.937
                - 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.943
                - array_append_space_i.942
                - array_idx_i.937
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.943
            - 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:    32
      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.958
                - str_printfa
                - smtp_char_is_xtext
            - BranchSide:      'smtp-syntax.c:139,12'
              BranchSideFuncs:
                - str_append_data.958
                - 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.958
                - str_printfa
            - BranchSide:      'smtp-syntax.c:140,3'
              BranchSideFuncs:
                - str_append_data.958
                - 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.958
                - str_printfa
                - smtp_char_is_xtext
            - BranchSide:      'smtp-syntax.c:143,19'
              BranchSideFuncs:
                - str_append_data.958
                - 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.958
                - 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.962
        - 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.962
        - 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.962
        - 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.964
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - str_append_c.964
                - i_panic
                - i_panic
                - str_insert.965
                - smtp_char_is_atext
        - Branch String:   'smtp-syntax.c:52,2'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:53,12'
              BranchSideFuncs:
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - str_append_c.964
                - str_append_c.964
                - i_panic
                - i_panic
                - str_insert.965
                - smtp_char_is_atext
            - BranchSide:      'smtp-syntax.c:76,6'
              BranchSideFuncs:
                - str_append_c.964
        - Branch String:   'smtp-syntax.c:54,19'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:54,42'
              BranchSideFuncs:
                - smtp_char_is_atext
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - str_append_c.964
                - str_append_c.964
                - i_panic
                - i_panic
                - str_insert.965
            - BranchSide:      'smtp-syntax.c:54,3'
              BranchSideFuncs:
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - str_append_c.964
                - str_append_c.964
                - smtp_char_is_atext
                - i_panic
                - i_panic
                - str_insert.965
        - Branch String:   'smtp-syntax.c:54,3'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:55,5'
              BranchSideFuncs:
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - str_append_c.964
                - str_append_c.964
                - i_panic
                - i_panic
                - str_insert.965
                - smtp_char_is_atext
            - BranchSide:      'smtp-syntax.c:57,8'
              BranchSideFuncs:
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - str_append_c.964
                - str_append_c.964
                - smtp_char_is_atext
                - i_panic
                - i_panic
                - str_insert.965
        - Branch String:   'smtp-syntax.c:57,15'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:57,18'
              BranchSideFuncs:
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - str_append_c.964
                - str_append_c.964
                - str_insert.965
                - smtp_char_is_atext
                - i_panic
                - i_panic
            - BranchSide:      'smtp-syntax.c:62,19'
              BranchSideFuncs:
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - str_append_c.964
                - str_append_c.964
                - str_insert.965
                - 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.965
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - str_append_c.964
                - str_append_c.964
                - smtp_char_is_atext
                - i_panic
                - i_panic
            - BranchSide:      'smtp-syntax.c:62,19'
              BranchSideFuncs:
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - str_append_c.964
                - str_append_c.964
                - str_insert.965
                - 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.964
            - BranchSide:      'smtp-syntax.c:66,3'
              BranchSideFuncs:
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - str_append_c.964
                - str_append_c.964
                - str_append_data.958
                - str_insert.965
                - 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.964
                - str_append_c.964
                - str_append_c.964
                - str_append_data.958
                - i_panic
                - str_insert.965
                - 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.964
                - str_append_c.964
                - str_append_c.964
                - str_append_data.958
                - smtp_char_is_qpair
                - i_panic
                - i_panic
                - str_insert.965
                - smtp_char_is_atext
        - Branch String:   'smtp-syntax.c:69,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:70,4'
              BranchSideFuncs:
                - str_append_c.964
                - str_append_c.964
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - i_panic
                - i_panic
                - str_insert.965
                - smtp_char_is_atext
            - BranchSide:      'smtp-syntax.c:71,3'
              BranchSideFuncs:
                - str_append_c.964
                - str_append_c.964
                - str_append_data.958
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.964
                - i_panic
                - i_panic
                - str_insert.965
                - smtp_char_is_atext
        - Branch String:   'smtp-syntax.c:76,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:76,6'
              BranchSideFuncs:
                - str_append_c.964
            - BranchSide:      'smtp-syntax.c:77,3'
              BranchSideFuncs:
                - str_append_c.964
      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.1067
            - BranchSide:      'smtp-address.c:70,2'
              BranchSideFuncs:
                - t_strndup
                - smtp_char_is_atext.1067
        - 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.1067
        - Branch String:   'smtp-address.c:72,35'
          Branch Sides:
            - BranchSide:      'smtp-address.c:72,2'
              BranchSideFuncs:
                - smtp_char_is_atext.1067
                - t_strndup
            - BranchSide:      'smtp-address.c:73,30'
              BranchSideFuncs:
                - smtp_char_is_atext.1067
                - t_strndup
        - Branch String:   'smtp-address.c:72,2'
          Branch Sides:
            - BranchSide:      'smtp-address.c:74,3'
              BranchSideFuncs:
                - t_strndup
                - smtp_char_is_atext.1067
            - 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.1076
                - 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.1076
                - p_malloc.1078
                - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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.1080
        - Branch String:   'smtp-address.c:774,2'
          Branch Sides:
            - BranchSide:      'smtp-address.c:775,28'
              BranchSideFuncs:
                - smtp_char_is_qpair.1080
            - 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.1080
            - BranchSide:      'smtp-address.c:777,2'
              BranchSideFuncs:
                - smtp_char_is_qpair.1080
        - 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.1076
                - 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.1078
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
                - 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.1078
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
                - strlen
                - malloc_add_check
                - strlen
                - malloc_add_check
            - BranchSide:      'smtp-address.c:802,6'
              BranchSideFuncs:
                - p_malloc.1078
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
                - 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.1078
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
                - strlen
                - malloc_add_check
                - strlen
                - malloc_add_check
            - BranchSide:      'smtp-address.c:806,6'
              BranchSideFuncs:
                - p_malloc.1078
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
                - 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.1078
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
                - strlen
                - malloc_add_check
            - BranchSide:      'smtp-address.c:806,6'
              BranchSideFuncs:
                - p_malloc.1078
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
                - strlen
                - malloc_add_check
        - Branch String:   'smtp-address.c:806,23'
          Branch Sides:
            - BranchSide:      'smtp-address.c:806,27'
              BranchSideFuncs:
                - p_malloc.1078
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
                - strlen
                - malloc_add_check
            - BranchSide:      'smtp-address.c:811,18'
              BranchSideFuncs:
                - p_malloc.1078
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
        - Branch String:   'smtp-address.c:806,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:807,18'
              BranchSideFuncs:
                - strlen
                - malloc_add_check
                - p_malloc.1078
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
            - BranchSide:      'smtp-address.c:811,18'
              BranchSideFuncs:
                - p_malloc.1078
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
        - Branch String:   'smtp-address.c:813,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:814,15'
              BranchSideFuncs:
                - i_memcpy.1083
                - i_memcpy.1083
                - i_memcpy.1083
            - BranchSide:      'smtp-address.c:817,6'
              BranchSideFuncs:
                - i_memcpy.1083
                - i_memcpy.1083
        - Branch String:   'smtp-address.c:817,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:818,12'
              BranchSideFuncs:
                - i_memcpy.1083
                - i_memcpy.1083
            - BranchSide:      'smtp-address.c:821,6'
              BranchSideFuncs:
                - i_memcpy.1083
        - Branch String:   'smtp-address.c:821,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:822,9'
              BranchSideFuncs:
                - i_memcpy.1083
            - 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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:80,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.1095
                - strlen
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - str_append_data.1098
                - str_append_c.1092
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
                - str_insert.1097
                - smtp_char_is_atext.1067
        - Branch String:   'smtp-address.c:668,2'
          Branch Sides:
            - BranchSide:      'smtp-address.c:669,3'
              BranchSideFuncs:
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
                - str_insert.1097
                - smtp_char_is_atext.1067
            - BranchSide:      'smtp-address.c:694,6'
              BranchSideFuncs:
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
        - Branch String:   'smtp-address.c:669,19'
          Branch Sides:
            - BranchSide:      'smtp-address.c:669,42'
              BranchSideFuncs:
                - smtp_char_is_atext.1067
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
                - str_insert.1097
            - BranchSide:      'smtp-address.c:669,3'
              BranchSideFuncs:
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - smtp_char_is_atext.1067
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
                - str_insert.1097
        - Branch String:   'smtp-address.c:669,3'
          Branch Sides:
            - BranchSide:      'smtp-address.c:670,5'
              BranchSideFuncs:
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
                - str_insert.1097
                - smtp_char_is_atext.1067
            - BranchSide:      'smtp-address.c:672,8'
              BranchSideFuncs:
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - smtp_char_is_atext.1067
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
                - str_insert.1097
        - Branch String:   'smtp-address.c:672,15'
          Branch Sides:
            - BranchSide:      'smtp-address.c:672,18'
              BranchSideFuncs:
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - str_insert.1097
                - smtp_char_is_atext.1067
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
            - BranchSide:      'smtp-address.c:677,19'
              BranchSideFuncs:
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - str_insert.1097
                - smtp_char_is_atext.1067
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
        - Branch String:   'smtp-address.c:672,27'
          Branch Sides:
            - BranchSide:      'smtp-address.c:672,32'
              BranchSideFuncs:
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - smtp_char_is_atext.1067
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
                - str_insert.1097
            - BranchSide:      'smtp-address.c:677,19'
              BranchSideFuncs:
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - str_insert.1097
                - smtp_char_is_atext.1067
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
        - Branch String:   'smtp-address.c:672,41'
          Branch Sides:
            - BranchSide:      'smtp-address.c:672,44'
              BranchSideFuncs:
                - str_insert.1097
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - smtp_char_is_atext.1067
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
            - BranchSide:      'smtp-address.c:673,11'
              BranchSideFuncs:
                - str_insert.1097
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - smtp_char_is_atext.1067
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
        - Branch String:   'smtp-address.c:672,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:673,11'
              BranchSideFuncs:
                - str_insert.1097
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - smtp_char_is_atext.1067
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
            - BranchSide:      'smtp-address.c:677,19'
              BranchSideFuncs:
                - str_append_data.1098
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - str_insert.1097
                - smtp_char_is_atext.1067
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
        - Branch String:   'smtp-address.c:678,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:679,4'
              BranchSideFuncs:
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
            - BranchSide:      'smtp-address.c:681,8'
              BranchSideFuncs:
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - str_append_data.1098
                - str_insert.1097
                - smtp_char_is_atext.1067
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - i_panic
        - Branch String:   'smtp-address.c:681,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:682,4'
              BranchSideFuncs:
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - str_append_data.1098
                - str_append_c.1092
                - str_insert.1097
                - smtp_char_is_atext.1067
                - i_panic
            - BranchSide:      'smtp-address.c:684,4'
              BranchSideFuncs:
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - str_append_data.1098
                - str_append_c.1092
                - str_insert.1097
                - smtp_char_is_atext.1067
                - 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.1100
                - str_append_c.1092
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - str_append_data.1098
                - str_append_c.1092
                - smtp_char_is_qpair.1080
                - i_panic
                - str_insert.1097
                - smtp_char_is_atext.1067
        - Branch String:   'smtp-address.c:685,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:686,5'
              BranchSideFuncs:
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - str_append_data.1098
                - str_append_c.1092
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - i_panic
                - str_insert.1097
                - smtp_char_is_atext.1067
            - BranchSide:      'smtp-address.c:687,4'
              BranchSideFuncs:
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
                - str_insert.1097
                - str_append_data.1098
                - str_append_c.1092
                - smtp_char_is_qpair.1080
                - smtp_char_is_qtext.1100
                - str_append_c.1092
                - i_panic
                - str_insert.1097
                - smtp_char_is_atext.1067
        - Branch String:   'smtp-address.c:694,18'
          Branch Sides:
            - BranchSide:      'smtp-address.c:694,22'
              BranchSideFuncs:
                - str_insert.1097
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
            - BranchSide:      'smtp-address.c:699,6'
              BranchSideFuncs:
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
        - Branch String:   'smtp-address.c:694,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:695,10'
              BranchSideFuncs:
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
            - BranchSide:      'smtp-address.c:699,6'
              BranchSideFuncs:
                - str_append_c.1092
                - str_append.1101
                - str_append_c.1092
        - Branch String:   'smtp-address.c:699,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:700,3'
              BranchSideFuncs:
                - str_append_c.1092
                - str_append_c.1092
                - str_append.1101
            - BranchSide:      'smtp-address.c:702,6'
              BranchSideFuncs:
                - str_append_c.1092
                - str_append.1101
        - 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.1092
                - str_append.1101
      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.1100
                - smtp_char_is_qpair.1080
                - 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.1100
                - smtp_char_is_qpair.1080
                - 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.1100
                - smtp_char_is_qpair.1080
        - 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.1100
                - smtp_char_is_qpair.1080
        - 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.1100
                - smtp_char_is_qpair.1080
            - BranchSide:      'smtp-address.c:144,3'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1100
                - smtp_char_is_qpair.1080
        - 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.1100
                - smtp_char_is_qpair.1080
            - BranchSide:      'smtp-address.c:146,7'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1100
                - smtp_char_is_qpair.1080
        - 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.1100
                - smtp_char_is_qpair.1080
            - BranchSide:      'smtp-address.c:150,12'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1100
                - smtp_char_is_qpair.1080
        - Branch String:   'smtp-address.c:150,3'
          Branch Sides:
            - BranchSide:      'smtp-address.c:151,29'
              BranchSideFuncs:
                - smtp_char_is_qtext.1100
                - smtp_char_is_qpair.1080
                - 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.1100
                - smtp_char_is_qpair.1080
            - BranchSide:      'smtp-address.c:157,3'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1100
                - smtp_char_is_qpair.1080
        - 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.1100
                - smtp_char_is_qpair.1080
            - BranchSide:      'smtp-address.c:157,3'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1100
                - smtp_char_is_qpair.1080
        - 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.1076
                - p_malloc.1078
            - 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.1076
                - p_malloc.1078
        - 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.1076
                - p_malloc.1078
            - 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.1076
                - p_malloc.1078
        - 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.1076
                - p_malloc.1078
            - 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.1076
                - p_malloc.1078
        - Branch String:   'smtp-address.c:399,19'
          Branch Sides:
            - BranchSide:      'smtp-address.c:399,23'
              BranchSideFuncs:
                - malloc_multiply_check.1076
                - p_malloc.1078
            - BranchSide:      'smtp-address.c:400,8'
              BranchSideFuncs:
                - malloc_multiply_check.1076
                - p_malloc.1078
        - Branch String:   'smtp-address.c:399,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:400,8'
              BranchSideFuncs:
                - malloc_multiply_check.1076
                - p_malloc.1078
            - 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.1076
                - p_malloc.1078
        - 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.1076
                - p_malloc.1078
            - 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.1076
                - p_malloc.1078
            - BranchSide:      'smtp-address.c:304,6'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
                - malloc_multiply_check.1076
                - p_malloc.1078
        - 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.1076
                - p_malloc.1078
            - BranchSide:      'smtp-address.c:307,6'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
                - malloc_multiply_check.1076
                - p_malloc.1078
        - 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.1076
                - p_malloc.1078
            - BranchSide:      'smtp-address.c:310,7'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
                - malloc_multiply_check.1076
                - p_malloc.1078
        - Branch String:   'smtp-address.c:310,23'
          Branch Sides:
            - BranchSide:      'smtp-address.c:310,27'
              BranchSideFuncs:
                - malloc_multiply_check.1076
                - p_malloc.1078
            - BranchSide:      'smtp-address.c:311,8'
              BranchSideFuncs:
                - malloc_multiply_check.1076
                - p_malloc.1078
        - Branch String:   'smtp-address.c:310,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:311,8'
              BranchSideFuncs:
                - malloc_multiply_check.1076
                - p_malloc.1078
            - 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.1076
                - p_malloc.1078
        - 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.1076
                - p_malloc.1078
            - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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.1138
                - p_malloc.1140
                - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      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.1322
                - str_append.1321
                - str_append_c.1323
                - str_len.1322
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - 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.1322
                - str_append.1321
                - str_append_c.1323
                - str_len.1322
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
        - 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.1321
                - str_c
                - event_add_str
                - str_len.1322
                - str_append.1321
                - str_append_c.1323
                - str_len.1322
                - str_append.1321
                - str_append_c.1323
            - BranchSide:      'smtp-params.c:1362,8'
              BranchSideFuncs:
                - str_c
                - event_add_str
                - str_len.1322
                - str_append.1321
                - str_append_c.1323
                - str_len.1322
                - str_append.1321
                - str_append_c.1323
        - Branch String:   'smtp-params.c:1362,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1363,16'
              BranchSideFuncs:
                - str_len.1322
                - str_append.1321
                - str_c
                - event_add_str
                - str_len.1322
                - str_append.1321
                - str_append_c.1323
                - str_append_c.1323
            - BranchSide:      'smtp-params.c:1367,8'
              BranchSideFuncs:
                - str_c
                - event_add_str
                - str_len.1322
                - str_append.1321
                - str_append_c.1323
        - Branch String:   'smtp-params.c:1363,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1364,5'
              BranchSideFuncs:
                - str_append_c.1323
                - str_append.1321
                - str_c
                - event_add_str
                - str_len.1322
                - str_append.1321
                - str_append_c.1323
            - BranchSide:      'smtp-params.c:1365,15'
              BranchSideFuncs:
                - str_append.1321
                - str_c
                - event_add_str
                - str_len.1322
                - str_append.1321
                - str_append_c.1323
        - Branch String:   'smtp-params.c:1367,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1368,16'
              BranchSideFuncs:
                - str_len.1322
                - str_append.1321
                - str_c
                - event_add_str
                - str_append_c.1323
            - 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.1323
                - str_append.1321
                - str_c
                - event_add_str
            - BranchSide:      'smtp-params.c:1370,15'
              BranchSideFuncs:
                - str_append.1321
                - 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.1328
        - 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.1328
        - 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.1328
        - Branch String:   'smtp-params.c:1330,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1331,28'
              BranchSideFuncs:
                - smtp_address_equals.1328
                - 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.1332
                - array_is_created_i.1331
                - array_count_i.1332
                - array_count_i.1332
                - array_count_i.1332
                - smtp_params_get_param
                - null_strcmp
                - array_is_created_i.1331
                - array_count_i.1332
            - BranchSide:      'smtp-params.c:236,12'
              BranchSideFuncs:
                - array_is_created_i.1331
                - array_count_i.1332
        - Branch String:   'smtp-params.c:235,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:236,12'
              BranchSideFuncs:
                - array_is_created_i.1331
                - array_count_i.1332
            - BranchSide:      'smtp-params.c:239,7'
              BranchSideFuncs:
                - array_is_created_i.1331
                - array_count_i.1332
                - array_count_i.1332
                - array_count_i.1332
                - 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.1332
            - BranchSide:      'smtp-params.c:237,4'
              BranchSideFuncs:
                - array_count_i.1332
        - Branch String:   'smtp-params.c:239,33'
          Branch Sides:
            - BranchSide:      'smtp-params.c:239,36'
              BranchSideFuncs:
                - array_count_i.1332
                - array_count_i.1332
                - array_count_i.1332
                - 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.1332
                - array_count_i.1332
                - 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: 172
      functionLinenumberEnd: 173
      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: 196
      functionLinenumberEnd: 197
      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.1323
                - 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.1323
                - 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.1323
                - 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.1323
                - 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.1323
                - 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.1323
            - BranchSide:      'smtp-params.c:1278,3'
              BranchSideFuncs:
                - smtp_xtext_encode_cstr
                - str_append_c.1323
                - 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.1323
      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.1321
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - str_append.1321
                - 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.1321
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - str_append.1321
                - i_panic
        - Branch String:   'smtp-params.c:1237,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1238,3'
              BranchSideFuncs:
                - str_append.1321
                - str_append_c.1323
                - i_panic
            - BranchSide:      'smtp-params.c:1241,8'
              BranchSideFuncs:
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
        - 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.1321
                - str_append_c.1323
        - Branch String:   'smtp-params.c:1242,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1243,15'
              BranchSideFuncs:
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
            - BranchSide:      'smtp-params.c:1246,8'
              BranchSideFuncs:
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
        - Branch String:   'smtp-params.c:1246,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1247,8'
              BranchSideFuncs:
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
                - str_append_c.1323
            - BranchSide:      'smtp-params.c:1252,8'
              BranchSideFuncs:
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
        - Branch String:   'smtp-params.c:1247,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1248,5'
              BranchSideFuncs:
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
            - BranchSide:      'smtp-params.c:1249,15'
              BranchSideFuncs:
                - str_append.1321
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
        - Branch String:   'smtp-params.c:1253,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1254,5'
              BranchSideFuncs:
                - str_append_c.1323
                - str_append.1321
                - str_append_c.1323
            - BranchSide:      'smtp-params.c:1255,15'
              BranchSideFuncs:
                - str_append.1321
                - str_append_c.1323
      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
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-params.c:1295,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1295,6'
              BranchSideFuncs:
                - str_len.1322
                - str_truncate.1335
            - BranchSide:      'smtp-params.c:1296,16'
              BranchSideFuncs:
                - str_len.1322
                - str_truncate.1335
      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.1331
                - str_array_icase_find
                - str_append_c.1323
                - 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.1323
                - smtp_param_write
            - BranchSide:      'smtp-params.c:189,2'
              BranchSideFuncs:
                - str_array_icase_find
                - str_append_c.1323
                - 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.1323
                - smtp_param_write
            - BranchSide:      'smtp-params.c:190,28'
              BranchSideFuncs:
                - str_array_icase_find
                - str_append_c.1323
                - 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.1323
                - str_array_icase_find
            - BranchSide:      'smtp-params.c:192,3'
              BranchSideFuncs:
                - str_append_c.1323
                - 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.1323
                - str_append.1321
                - i_panic
            - BranchSide:      'smtp-params.c:172,3'
              BranchSideFuncs:
                - smtp_param_value_valid
                - str_append_c.1323
                - str_append.1321
                - 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.1323
                - str_append.1321
      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.1337
            - BranchSide:      'smtp-params.c:145,2'
              BranchSideFuncs:
                - strcasecmp
                - array_delete_i.1337
        - Branch String:   'smtp-params.c:145,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:146,18'
              BranchSideFuncs:
                - strcasecmp
                - array_delete_i.1337
            - 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.1337
            - BranchSide:      'smtp-params.c:153,2'
              BranchSideFuncs:
                - strcasecmp
                - array_delete_i.1337
        - Branch String:   'smtp-params.c:147,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:148,16'
              BranchSideFuncs:
                - array_delete_i.1337
            - BranchSide:      'smtp-params.c:149,4'
              BranchSideFuncs:
                - array_delete_i.1337
      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: 241
      functionLinenumberEnd: 244
      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:242,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.1339
            - BranchSide:      'smtp-params.c:119,3'
              BranchSideFuncs:
                - array_create_i.1338
                - p_strdup
                - p_strdup
                - array_append_i.1339
      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: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.1310
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.1310
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:210,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_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.1332
                - array_create_i.1338
                - p_strdup
                - p_strdup
                - array_append_i.1339
            - BranchSide:      'smtp-params.c:103,2'
              BranchSideFuncs:
                - array_count_i.1332
                - array_create_i.1338
                - p_strdup
                - p_strdup
                - array_append_i.1339
        - Branch String:   'smtp-params.c:104,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:104,2'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - array_append_i.1339
            - BranchSide:      'smtp-params.c:107,32'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - array_append_i.1339
      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.1305
                - str_len.1322
                - 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.1305
                - str_len.1322
                - 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.1305
                - str_len.1322
                - 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.1305
                - str_len.1322
                - 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.1321
                - str_append.1321
                - 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.1321
            - BranchSide:      'smtp-params.c:719,14'
              BranchSideFuncs:
                - str_append.1321
            - 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.1321
                - strlen
                - smtp_xtext_encode
                - str_append_c.1323
        - 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.1321
                - strlen
                - smtp_xtext_encode
                - str_append_c.1323
      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.1321
            - BranchSide:      'smtp-params.c:668,3'
              BranchSideFuncs:
                - str_append.1321
                - i_panic
            - BranchSide:      'smtp-params.c:673,3'
              BranchSideFuncs:
                - str_append.1321
                - i_panic
            - BranchSide:      'smtp-params.c:678,14'
              BranchSideFuncs:
                - str_append.1321
                - str_append.1321
                - str_append_c.1323
            - 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.1321
        - Branch String:   'smtp-params.c:673,3'
          Branch Sides:
            - BranchSide:      'smtp-params.c:673,3'
              BranchSideFuncs:
                - str_append.1321
                - i_panic
            - BranchSide:      'smtp-params.c:673,3'
              BranchSideFuncs:
                - str_append.1321
                - 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.1321
      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
        - 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.1321
                - str_data.1305
                - str_len.1322
                - smtp_xtext_encode
                - str_append_c.1323
                - str_append.1321
        - 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.1321
                - str_data.1305
                - str_len.1322
                - smtp_xtext_encode
                - str_append_c.1323
                - str_append.1321
        - Branch String:   'smtp-params.c:645,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:646,14'
              BranchSideFuncs:
                - str_append.1321
                - str_append.1321
                - str_data.1305
                - str_len.1322
                - smtp_xtext_encode
                - str_append_c.1323
            - BranchSide:      'smtp-params.c:648,22'
              BranchSideFuncs:
                - smtp_address_write
                - str_append.1321
                - str_data.1305
                - str_len.1322
                - smtp_xtext_encode
                - str_append_c.1323
      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
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-params.c:769,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:769,6'
              BranchSideFuncs:
                - str_len.1322
                - str_truncate.1335
            - BranchSide:      'smtp-params.c:770,16'
              BranchSideFuncs:
                - str_len.1322
                - str_truncate.1335
      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.1306
                - p_malloc.1308
                - 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.1306
                - p_malloc.1308
                - 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.1306
                - p_malloc.1308
        - Branch String:   'smtp-params.c:301,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:302,18'
              BranchSideFuncs:
                - malloc_multiply_check.1306
                - p_malloc.1308
            - 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.1454
                - str_append.1462
                - str_append_c.1461
            - 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.1461
                - str_append.1462
                - str_len.1454
            - BranchSide:      'smtp-reply.c:112,14'
              BranchSideFuncs:
                - str_append.1462
                - str_len.1454
                - str_append_c.1461
      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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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.1461
                - str_append.1462
            - 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.1461
                - str_append.1462
        - Branch String:   'smtp-reply.c:141,7'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:142,4'
              BranchSideFuncs:
                - str_append_c.1461
                - str_append.1462
                - 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.1461
                - str_append.1462
                - 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.1461
                - str_append.1462
        - Branch String:   'smtp-reply.c:125,6'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:125,6'
              BranchSideFuncs:
                - str_append_c.1461
                - str_append.1462
                - smtp_reply_write_message_one_line
            - BranchSide:      'smtp-reply.c:126,3'
              BranchSideFuncs:
                - str_append_c.1461
                - str_append.1462
                - 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.1462
                - str_append_c.1461
                - str_append.1462
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append_c.1461
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
                - 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.1462
                - str_append_c.1461
                - str_append.1462
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append_c.1461
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
        - Branch String:   'smtp-reply.c:76,32'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:76,36'
              BranchSideFuncs:
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
            - BranchSide:      'smtp-reply.c:77,14'
              BranchSideFuncs:
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
        - Branch String:   'smtp-reply.c:76,6'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:77,14'
              BranchSideFuncs:
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
            - BranchSide:      'smtp-reply.c:86,10'
              BranchSideFuncs:
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append_c.1461
        - Branch String:   'smtp-reply.c:78,7'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:79,4'
              BranchSideFuncs:
                - str_append_c.1461
                - str_append.1462
                - str_append.1462
            - BranchSide:      'smtp-reply.c:82,14'
              BranchSideFuncs:
                - str_append.1462
        - Branch String:   'smtp-reply.c:87,2'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:87,2'
              BranchSideFuncs:
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append_c.1461
            - BranchSide:      'smtp-reply.c:88,14'
              BranchSideFuncs:
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append_c.1461
        - Branch String:   'smtp-reply.c:89,7'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:90,4'
              BranchSideFuncs:
                - str_append_c.1461
                - str_append.1462
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
                - str_append_c.1461
            - BranchSide:      'smtp-reply.c:92,4'
              BranchSideFuncs:
                - str_append_c.1461
                - str_append.1462
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
                - str_append_c.1461
        - Branch String:   'smtp-reply.c:93,7'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:94,15'
              BranchSideFuncs:
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append_c.1461
            - BranchSide:      'smtp-reply.c:97,14'
              BranchSideFuncs:
                - str_append.1462
                - str_append.1462
                - str_append.1462
                - str_append_c.1461
                - str_append.1462
                - str_append_c.1461
                - str_append_c.1461
      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.1467
                - 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: 209
      functionLinenumberEnd: 211
      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:210,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: 133
      functionLinenumberEnd: 136
      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: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.1561
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.1561
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,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.1562
                - str_append_data.1560
                - smtp_char_is_ehlo_greet
                - str_append_c.1566
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
        - Branch String:   'smtp-reply-parser.c:290,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:291,3'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - smtp_char_is_ehlo_greet
                - str_append_c.1566
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
            - 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.1558
                - str_len.1562
                - str_append_data.1560
                - smtp_char_is_ehlo_greet
                - str_append_c.1566
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:293,27'
              BranchSideFuncs:
                - smtp_char_is_textstr.1558
                - str_len.1562
                - str_append_data.1560
                - smtp_char_is_ehlo_greet
                - str_append_c.1566
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:292,4'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:294,5'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - smtp_char_is_ehlo_greet
                - str_append_c.1566
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
            - BranchSide:      'smtp-reply-parser.c:296,10'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - smtp_char_is_ehlo_greet
                - str_append_c.1566
                - smtp_char_is_textstr.1558
                - 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.1560
                - smtp_char_is_ehlo_greet
                - str_append_c.1566
                - str_len.1562
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
        - 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.1566
                - str_len.1562
                - str_append_data.1560
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
        - Branch String:   'smtp-reply-parser.c:310,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:311,5'
              BranchSideFuncs:
                - str_append_c.1566
                - str_len.1562
                - str_append_data.1560
                - smtp_char_is_ehlo_greet
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
            - BranchSide:      'smtp-reply-parser.c:312,4'
              BranchSideFuncs:
                - str_append_c.1566
                - str_len.1562
                - str_append_data.1560
                - smtp_char_is_ehlo_greet
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
      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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:140,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.1562
                - str_len.1562
                - p_strdup
                - array_append_i.1555
                - str_truncate.1564
                - smtp_reply_parser_parse_enhanced_code
            - BranchSide:      'smtp-reply-parser.c:371,29'
              BranchSideFuncs:
                - str_len.1562
                - p_strdup
                - array_append_i.1555
                - str_truncate.1564
        - 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.1562
                - p_strdup
                - array_append_i.1555
                - str_truncate.1564
            - BranchSide:      'smtp-reply-parser.c:372,41'
              BranchSideFuncs:
                - smtp_reply_parser_parse_enhanced_code
                - str_len.1562
                - p_strdup
                - array_append_i.1555
                - str_truncate.1564
      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.1558
                - str_len.1562
                - str_append_data.1560
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:241,2'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
        - Branch String:   'smtp-reply-parser.c:241,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:242,3'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
            - BranchSide:      'smtp-reply-parser.c:244,8'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - 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.1560
        - 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.1562
                - str_append_data.1560
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
            - BranchSide:      'smtp-reply-parser.c:263,2'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
        - Branch String:   'smtp-reply-parser.c:263,58'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:263,2'
              BranchSideFuncs:
                - smtp_char_is_textstr.1558
                - str_len.1562
                - str_append_data.1560
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:264,25'
              BranchSideFuncs:
                - smtp_char_is_textstr.1558
                - str_len.1562
                - str_append_data.1560
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:263,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:265,3'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1558
            - BranchSide:      'smtp-reply-parser.c:267,8'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - 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.1560
        - 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.1562
                - str_append_data.1560
                - str_len.1562
                - str_data.1559
                - str_truncate.1564
            - BranchSide:      'smtp-reply-parser.c:216,2'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - str_len.1562
                - str_data.1559
                - str_truncate.1564
                - __ctype_b_loc
        - Branch String:   'smtp-reply-parser.c:216,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:217,3'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - str_len.1562
                - str_data.1559
                - str_truncate.1564
                - __ctype_b_loc
            - BranchSide:      'smtp-reply-parser.c:219,14'
              BranchSideFuncs:
                - str_len.1562
                - str_append_data.1560
                - str_len.1562
                - str_data.1559
                - str_truncate.1564
        - 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.1560
                - str_len.1562
                - str_data.1559
                - str_truncate.1564
        - 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.1562
                - str_data.1559
                - str_truncate.1564
        - 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.1559
                - str_truncate.1564
        - 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.1564
      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: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    i_stream_read_bytes
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 225
      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:224,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/istream.h:224,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/istream.h:224,2'
              BranchSideFuncs:
                - i_stream_read_data
      Callsites:
        - Src:             '../../src/lib/istream.h:224,2'
          Dst:             i_panic
        - Src:             '../../src/lib/istream.h:225,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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - _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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - _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.1566
                - _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.1566
                - _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.1566
                - _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.1566
                - 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.1566
                - 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.1566
                - _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.1566
                - 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.1566
                - _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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - _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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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.1566
                - 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: 231
      functionLinenumberEnd: 234
      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:233,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/istream.h:233,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/istream.h:233,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/istream.h:232,12'
          Dst:             i_stream_read_bytes
        - Src:             '../../src/lib/istream.h:233,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.1567
                - smtp_reply_parse
                - array_count_i.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - i_panic
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:619,2'
              BranchSideFuncs:
                - p_free_internal.1567
                - smtp_reply_parse
                - array_count_i.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - 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.1567
                - smtp_reply_parse
                - array_count_i.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - i_panic
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:619,2'
              BranchSideFuncs:
                - p_free_internal.1567
                - smtp_reply_parse
                - array_count_i.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - 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.1567
                - smtp_reply_parse
                - array_count_i.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - 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.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - 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.1590
                - array_idx_i.1591
      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: 196
      functionLinenumberEnd: 197
      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: 331
      functionLinenumberEnd: 336
      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:334,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:273,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.1567
                - smtp_reply_parse
                - array_count_i.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - i_panic
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:583,2'
              BranchSideFuncs:
                - p_free_internal.1567
                - smtp_reply_parse
                - array_count_i.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - 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.1567
                - smtp_reply_parse
                - array_count_i.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - i_panic
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:583,2'
              BranchSideFuncs:
                - p_free_internal.1567
                - smtp_reply_parse
                - array_count_i.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - 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.1567
                - smtp_reply_parse
                - array_count_i.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - 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.1588
                - array_append_space_i.1590
                - array_idx_i.1591
                - 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.1590
                - array_idx_i.1591
      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: 109
      functionLinenumberEnd: 114
      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:111,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/unichar.h:112,3'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/unichar.h:113,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: 306
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         94
      ICount:          620
      EdgeCount:       125
      CyclomaticComplexity: 33
      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.1647
                - 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.1647
                - 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.1647
                - 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.1647
                - 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.1647
                - 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.1647
                - 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.1647
                - 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.1647
                - 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.1647
                - 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.1647
                - 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.1647
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:232,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.1647
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:217,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.1647
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:220,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:221,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:222,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.1647
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:222,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:224,5'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:228,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.1647
        - Branch String:   'smtp-command-parser.c:228,16'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:228,56'
              BranchSideFuncs:
                - smtp_char_is_textstr.1647
                - 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:230,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.1647
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:228,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:229,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.1647
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:230,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.1647
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:232,19'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:232,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:239,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:232,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:234,4'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:239,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:240,23'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:240,26'
              BranchSideFuncs:
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
            - BranchSide:      'smtp-command-parser.c:243,27'
              BranchSideFuncs:
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
        - Branch String:   'smtp-command-parser.c:240,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:243,27'
              BranchSideFuncs:
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
            - BranchSide:      'smtp-command-parser.c:278,7'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:243,27'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:243,16'
              BranchSideFuncs:
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
            - BranchSide:      'smtp-command-parser.c:244,31'
              BranchSideFuncs:
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
        - Branch String:   'smtp-command-parser.c:250,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:251,8'
              BranchSideFuncs:
                - buffer_append
                - buffer_create_dynamic
            - BranchSide:      'smtp-command-parser.c:268,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:251,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:252,17'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
            - BranchSide:      'smtp-command-parser.c:260,8'
              BranchSideFuncs:
                - buffer_append
        - Branch String:   'smtp-command-parser.c:252,17'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:252,14'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
            - BranchSide:      'smtp-command-parser.c:253,10'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
        - Branch String:   'smtp-command-parser.c:254,16'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:254,14'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
            - BranchSide:      'smtp-command-parser.c:254,14'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
        - Branch String:   'smtp-command-parser.c:255,16'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:255,14'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
            - BranchSide:      'smtp-command-parser.c:255,14'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
        - Branch String:   'smtp-command-parser.c:260,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:261,5'
              BranchSideFuncs:
                - buffer_append
            - BranchSide:      'smtp-command-parser.c:262,18'
              BranchSideFuncs:
                - buffer_append
        - Branch String:   'smtp-command-parser.c:279,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:280,3'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:284,7'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:280,27'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:280,33'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:280,3'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:280,3'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:281,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:282,2'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:284,29'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:284,32'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
            - BranchSide:      'smtp-command-parser.c:291,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
        - Branch String:   'smtp-command-parser.c:284,49'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:284,53'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:291,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
        - Branch String:   'smtp-command-parser.c:284,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:286,4'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:291,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
        - Branch String:   'smtp-command-parser.c:291,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:292,3'
              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:293,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:295,45'
              BranchSideFuncs:
                - i_strdup_until
            - BranchSide:      'smtp-command-parser.c:298,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:217,10'
          Dst:             uni_utf8_get_char_n
        - Src:             'smtp-command-parser.c:223,4'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:228,20'
          Dst:             smtp_char_is_textstr
        - Src:             'smtp-command-parser.c:233,3'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:244,10'
          Dst:             uni_utf8_char_bytes
        - Src:             'smtp-command-parser.c:245,22'
          Dst:             i_stream_get_max_buffer_size
        - Src:             'smtp-command-parser.c:257,27'
          Dst:             buffer_create_dynamic
        - Src:             'smtp-command-parser.c:262,4'
          Dst:             buffer_append
        - Src:             'smtp-command-parser.c:285,3'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:295,30'
          Dst:             i_strdup_until
        - Src:             'smtp-command-parser.c:298,3'
          Dst:             buffer_append
        - Src:             'smtp-command-parser.c:301,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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:140,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: 309
      functionLinenumberEnd: 422
      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:321,3'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:323,32'
              BranchSideFuncs:
                - smtp_command_parser_restart
                - smtp_command_parse_identifier
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:338,40'
              BranchSideFuncs:
                - smtp_command_parse_identifier
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:346,9'
              BranchSideFuncs:
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:368,40'
              BranchSideFuncs:
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:376,9'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:393,9'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:408,4'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:417,4'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-command-parser.c:324,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:326,5'
              BranchSideFuncs:
                - smtp_command_parse_identifier
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:329,5'
              BranchSideFuncs:
                - smtp_command_parse_identifier
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:332,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:333,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:334,8'
              BranchSideFuncs:
                - smtp_command_parse_identifier
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - 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:334,16'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:335,5'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:339,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:340,12'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:341,4'
              BranchSideFuncs:
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:342,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:342,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:343,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:346,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:347,5'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:350,16'
              BranchSideFuncs:
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:350,15'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:351,5'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:354,16'
              BranchSideFuncs:
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:364,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:364,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:365,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:369,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:370,12'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:371,4'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:372,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:372,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:373,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:376,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:377,5'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:378,16'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:378,15'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:0,0'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:379,31'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:389,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:389,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:390,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:393,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:394,31'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:403,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:408,37'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:408,4'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:409,12'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:408,4'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:410,5'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:411,8'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:411,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:412,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:413,4'
              BranchSideFuncs:
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1657
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
      Callsites:
        - Src:             'smtp-command-parser.c:323,4'
          Dst:             smtp_command_parser_restart
        - Src:             'smtp-command-parser.c:338,10'
          Dst:             smtp_command_parse_identifier
        - Src:             'smtp-command-parser.c:358,6'
          Dst:             _chr_sanitize
        - Src:             'smtp-command-parser.c:355,5'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:368,10'
          Dst:             smtp_command_parse_parameters
        - Src:             'smtp-command-parser.c:382,6'
          Dst:             _chr_sanitize
        - Src:             'smtp-command-parser.c:379,5'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:400,6'
          Dst:             _chr_sanitize
        - Src:             'smtp-command-parser.c:394,5'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:417,4'
          Dst:             i_unreached
    - functionName:    smtp_command_parse_auth_response
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 636
      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:601,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:601,2'
              BranchSideFuncs:
                - p_free_internal.1656
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
            - BranchSide:      'smtp-command-parser.c:601,2'
              BranchSideFuncs:
                - p_free_internal.1656
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
        - Branch String:   'smtp-command-parser.c:601,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:601,2'
              BranchSideFuncs:
                - p_free_internal.1656
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
            - BranchSide:      'smtp-command-parser.c:601,2'
              BranchSideFuncs:
                - p_free_internal.1656
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
        - Branch String:   'smtp-command-parser.c:601,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:601,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:604,2'
              BranchSideFuncs:
                - p_free_internal.1656
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
        - Branch String:   'smtp-command-parser.c:614,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:615,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:622,27'
              BranchSideFuncs:
                - smtp_command_parse
                - i_panic
        - Branch String:   'smtp-command-parser.c:615,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:616,20'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:619,10'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:623,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:624,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:632,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-command-parser.c:624,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:625,20'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:629,10'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:632,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:632,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:633,12'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-command-parser.c:601,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:609,2'
          Dst:             p_free_internal
        - Src:             'smtp-command-parser.c:613,8'
          Dst:             smtp_command_parse_finish_data
        - Src:             'smtp-command-parser.c:622,8'
          Dst:             smtp_command_parse
        - Src:             'smtp-command-parser.c:632,2'
          Dst:             i_panic
    - functionName:    smtp_command_parse_finish_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 504
      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:477,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:478,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:479,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:479,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:480,19'
              BranchSideFuncs:
                - i_stream_unref
            - BranchSide:      'smtp-command-parser.c:484,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:484,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:485,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:486,6'
              BranchSideFuncs:
                - i_stream_unref
                - smtp_command_parser_error
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:486,15'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:486,18'
              BranchSideFuncs:
                - smtp_command_parser_error
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:487,11'
              BranchSideFuncs:
                - smtp_command_parser_error
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:486,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:487,11'
              BranchSideFuncs:
                - smtp_command_parser_error
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:502,18'
              BranchSideFuncs:
                - i_stream_unref
        - Branch String:   'smtp-command-parser.c:487,3'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:489,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:492,5'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:497,5'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
      Callsites:
        - Src:             'smtp-command-parser.c:480,3'
          Dst:             i_stream_unref
        - Src:             'smtp-command-parser.c:484,16'
          Dst:             i_stream_read_data
        - Src:             'smtp-command-parser.c:485,3'
          Dst:             i_stream_skip
        - Src:             'smtp-command-parser.c:491,4'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:498,11'
          Dst:             i_stream_get_disconnect_reason
        - Src:             'smtp-command-parser.c:496,4'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:502,2'
          Dst:             i_stream_unref
    - functionName:    smtp_command_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 459
      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:430,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:432,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:441,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:437,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:438,11'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:439,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:441,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:441,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:443,6'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
        - Branch String:   'smtp-command-parser.c:443,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:444,3'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
            - BranchSide:      'smtp-command-parser.c:458,9'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:444,3'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:444,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:445,7'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:445,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:446,8'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:454,5'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:446,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:448,9'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:450,5'
              BranchSideFuncs:
                - smtp_command_parser_error
      Callsites:
        - Src:             'smtp-command-parser.c:430,16'
          Dst:             i_stream_read_data
        - Src:             'smtp-command-parser.c:435,9'
          Dst:             smtp_command_parse_line
        - Src:             'smtp-command-parser.c:436,3'
          Dst:             i_stream_skip
        - Src:             'smtp-command-parser.c:439,15'
          Dst:             i_stream_get_data_size
        - Src:             'smtp-command-parser.c:441,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:444,3'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:449,4'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:455,11'
          Dst:             i_stream_get_disconnect_reason
        - Src:             'smtp-command-parser.c:453,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: 575
      functionLinenumberEnd: 592
      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:577,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:577,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:579,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:581,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:583,4'
              BranchSideFuncs:
                - t_strdup_printf
                - i_stream_create_failure_at
                - i_stream_unref
                - i_stream_ref
            - BranchSide:      'smtp-command-parser.c:589,18'
              BranchSideFuncs:
                - i_stream_ref
      Callsites:
        - Src:             'smtp-command-parser.c:577,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:579,9'
          Dst:             i_stream_create_dot
        - Src:             'smtp-command-parser.c:584,4'
          Dst:             t_strdup_printf
        - Src:             'smtp-command-parser.c:582,18'
          Dst:             i_stream_create_failure_at
        - Src:             'smtp-command-parser.c:587,3'
          Dst:             i_stream_unref
        - Src:             'smtp-command-parser.c:591,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: 554
      functionLinenumberEnd: 570
      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:555,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:555,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:556,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:556,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:561,4'
              BranchSideFuncs:
                - i_stream_create_error_str
                - i_stream_ref
            - BranchSide:      'smtp-command-parser.c:564,19'
              BranchSideFuncs:
                - i_stream_create_limit
                - i_stream_create_min_sized
                - i_stream_unref
                - i_stream_ref
      Callsites:
        - Src:             'smtp-command-parser.c:555,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:558,18'
          Dst:             i_stream_create_error_str
        - Src:             'smtp-command-parser.c:565,4'
          Dst:             i_stream_create_limit
        - Src:             'smtp-command-parser.c:566,18'
          Dst:             i_stream_create_min_sized
        - Src:             'smtp-command-parser.c:567,3'
          Dst:             i_stream_unref
        - Src:             'smtp-command-parser.c:569,2'
          Dst:             i_stream_ref
    - functionName:    smtp_command_parse_next
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 549
      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:513,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:513,2'
              BranchSideFuncs:
                - p_free_internal.1656
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
            - BranchSide:      'smtp-command-parser.c:513,2'
              BranchSideFuncs:
                - p_free_internal.1656
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
        - Branch String:   'smtp-command-parser.c:513,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:513,2'
              BranchSideFuncs:
                - p_free_internal.1656
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
            - BranchSide:      'smtp-command-parser.c:513,2'
              BranchSideFuncs:
                - p_free_internal.1656
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
        - Branch String:   'smtp-command-parser.c:513,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:513,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:516,2'
              BranchSideFuncs:
                - p_free_internal.1656
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
        - Branch String:   'smtp-command-parser.c:526,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:527,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:534,27'
              BranchSideFuncs:
                - smtp_command_parse
                - i_panic
        - Branch String:   'smtp-command-parser.c:527,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:528,20'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:531,10'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:535,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:536,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:544,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-command-parser.c:536,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:537,20'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:541,10'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:544,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:544,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:545,16'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:546,19'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:546,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:547,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-command-parser.c:513,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:521,2'
          Dst:             p_free_internal
        - Src:             'smtp-command-parser.c:525,8'
          Dst:             smtp_command_parse_finish_data
        - Src:             'smtp-command-parser.c:534,8'
          Dst:             smtp_command_parse
        - Src:             'smtp-command-parser.c:544,2'
          Dst:             i_panic
    - functionName:    smtp_command_parser_pending_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 466
      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:463,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:464,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:465,34'
              BranchSideFuncs:
                - i_stream_have_bytes_left
      Callsites:
        - Src:             'smtp-command-parser.c:465,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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: 196
      functionLinenumberEnd: 197
      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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:140,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.1731
                - 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.1731
                - i_strdup
            - BranchSide:      'smtp-server-cmd-helo.c:25,6'
              BranchSideFuncs:
                - smtp_server_connection_reset_state
                - p_free_internal.1731
                - 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.1731
                - i_strdup
            - BranchSide:      'smtp-server-cmd-helo.c:29,37'
              BranchSideFuncs:
                - smtp_server_connection_reset_state
                - p_free_internal.1731
                - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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.1745
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
                - array_get_i.1746
                - 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.1745
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
                - array_get_i.1746
        - Branch String:   'smtp-server-cmd-helo.c:170,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:171,16'
              BranchSideFuncs:
                - array_get_i.1746
                - 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: 172
      functionLinenumberEnd: 173
      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: 250
      functionLinenumberEnd: 252
      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:251,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.1735
                - p_malloc.1737
                - 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.1735
                - p_malloc.1737
                - 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.1735
                - p_malloc.1737
                - 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.1735
                - p_malloc.1737
                - 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.1735
                - p_malloc.1737
                - 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:
        - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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:
        - 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.1824
                - p_malloc.1826
                - 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.1824
                - p_malloc.1826
                - 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.1824
                - p_malloc.1826
                - 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.1824
                - p_malloc.1826
                - 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.1824
                - p_malloc.1826
                - 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.1824
                - p_malloc.1826
                - 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.1824
                - p_malloc.1826
                - 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.1824
                - p_malloc.1826
                - 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
        - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:133,12'
              BranchSideFuncs:
                - malloc_multiply_check.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - e_debug
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:145,14'
              BranchSideFuncs:
                - malloc_multiply_check.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
        - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
                - 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.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
            - BranchSide:      'smtp-server-cmd-mail.c:141,3'
              BranchSideFuncs:
                - event_send_abort
                - malloc_multiply_check.1891
                - p_malloc.1892
                - array_is_created_i.1893
                - 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.1894
        - Branch String:   'smtp-server-cmd-mail.c:147,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:148,3'
              BranchSideFuncs:
                - array_is_created_i.1893
                - 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.1894
            - BranchSide:      'smtp-server-cmd-mail.c:151,6'
              BranchSideFuncs:
                - array_is_created_i.1893
                - 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.1894
        - Branch String:   'smtp-server-cmd-mail.c:151,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:152,22'
              BranchSideFuncs:
                - array_idx_i.1894
                - 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:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 114
      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.1875
            - BranchSide:      './smtp-address.h:210,23'
              BranchSideFuncs:
                - smtp_address_isnull.1875
        - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:273,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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.1944
            - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.1944
        - 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.1944
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1944
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - strcasecmp
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:159,12'
              BranchSideFuncs:
                - array_is_created_i.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:172,20'
              BranchSideFuncs:
                - array_is_created_i.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
        - Branch String:   'smtp-server-cmd-rcpt.c:164,62'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:165,14'
              BranchSideFuncs:
                - array_is_created_i.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
            - BranchSide:      'smtp-server-cmd-rcpt.c:172,20'
              BranchSideFuncs:
                - array_is_created_i.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
        - 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.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
        - Branch String:   'smtp-server-cmd-rcpt.c:173,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:174,21'
              BranchSideFuncs:
                - array_is_created_i.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
            - BranchSide:      'smtp-server-cmd-rcpt.c:175,6'
              BranchSideFuncs:
                - array_is_created_i.1952
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1953
        - Branch String:   'smtp-server-cmd-rcpt.c:175,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:176,22'
              BranchSideFuncs:
                - array_idx_i.1953
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1957
                - p_malloc.1958
                - 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.1957
                - p_malloc.1958
                - 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.1957
                - p_malloc.1958
                - 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: 112
      functionLinenumberEnd: 114
      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: 172
      functionLinenumberEnd: 173
      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: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:273,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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: 196
      functionLinenumberEnd: 197
      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: 133
      functionLinenumberEnd: 136
      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: 331
      functionLinenumberEnd: 336
      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:334,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.2082
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.2082
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,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: 250
      functionLinenumberEnd: 252
      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:251,13'
          Dst:             array_count_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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.2092
                - array_create_i.2084
                - array_append_space_i.2083
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-server-cmd-xclient.c:79,7'
              BranchSideFuncs:
                - array_is_created_i.2092
                - array_create_i.2084
                - array_append_space_i.2083
                - 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.2083
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-server-cmd-xclient.c:81,10'
              BranchSideFuncs:
                - array_append_space_i.2083
                - 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: 112
      functionLinenumberEnd: 114
      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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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.2094
                - p_malloc.2096
                - t_strsplit
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2094
                - p_malloc.2096
                - t_strsplit
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2094
                - p_malloc.2096
                - t_strsplit
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2094
                - p_malloc.2096
                - t_strsplit
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:118,15'
              BranchSideFuncs:
                - malloc_multiply_check.2094
                - p_malloc.2096
                - t_strsplit
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:222,6'
              BranchSideFuncs:
                - array_is_created_i.2092
                - 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.2091
        - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
        - 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.2092
                - 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.2091
                - 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.2093
            - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:145,8'
              BranchSideFuncs:
                - str_begins_icase
                - net_addr2ip
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
        - 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.2093
                - net_addr2ip
                - array_is_created_i.2092
                - 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.2091
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:147,26'
              BranchSideFuncs:
                - net_addr2ip
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:145,8'
              BranchSideFuncs:
                - str_begins_builtin_success.2093
                - net_addr2ip
                - array_is_created_i.2092
                - 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.2091
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:147,26'
              BranchSideFuncs:
                - net_addr2ip
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:147,26'
              BranchSideFuncs:
                - net_addr2ip
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:153,3'
              BranchSideFuncs:
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:157,12'
              BranchSideFuncs:
                - smtp_helo_domain_parse
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:160,3'
              BranchSideFuncs:
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:163,33'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:167,27'
              BranchSideFuncs:
                - net_str2port
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:176,26'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - smtp_server_reply
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:178,26'
              BranchSideFuncs:
                - strcmp
                - smtp_server_reply
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:188,35'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:193,14'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:200,38'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2092
                - 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.2091
                - 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.2093
                - 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.2091
                - 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: 230
      functionLinenumberEnd: 256
      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:239,25'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:239,29'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:240,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:239,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:240,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:241,2'
              BranchSideFuncs:
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:242,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:243,8'
              BranchSideFuncs:
                - str_append_data.2174
            - BranchSide:      'smtp-parser.c:248,11'
              BranchSideFuncs:
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:243,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:244,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:245,19'
              BranchSideFuncs:
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:245,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:246,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:247,3'
              BranchSideFuncs:
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:250,31'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:250,35'
              BranchSideFuncs:
                - str_append_data.2174
            - BranchSide:      'smtp-parser.c:250,2'
              BranchSideFuncs:
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:250,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:242,7'
              BranchSideFuncs:
                - str_append_data.2174
            - BranchSide:      'smtp-parser.c:252,6'
              BranchSideFuncs:
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:252,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:253,19'
              BranchSideFuncs:
                - str_append_data.2174
            - BranchSide:      'smtp-parser.c:254,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:253,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: 522
      functionLinenumberEnd: 537
      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:523,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:526,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:526,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:526,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:526,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:526,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:526,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:526,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:526,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:526,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:526,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:530,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:530,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:530,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:530,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:530,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:530,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:534,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: 541
      functionLinenumberEnd: 584
      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:550,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:551,25'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:552,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:551,38'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:551,42'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_xtext.2176
            - BranchSide:      'smtp-parser.c:554,2'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_xtext.2176
        - Branch String:   'smtp-parser.c:550,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:552,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:554,2'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_xtext.2176
        - Branch String:   'smtp-parser.c:554,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:555,33'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_xtext.2176
            - BranchSide:      'smtp-parser.c:583,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:557,36'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:557,3'
              BranchSideFuncs:
                - smtp_char_is_xtext.2176
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2179
                - str_append_data.2174
            - BranchSide:      'smtp-parser.c:558,24'
              BranchSideFuncs:
                - smtp_char_is_xtext.2176
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2179
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:557,3'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:559,4'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_xtext.2176
            - BranchSide:      'smtp-parser.c:561,7'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - smtp_char_is_xtext.2176
                - str_append_c.2179
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:561,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:562,20'
              BranchSideFuncs:
                - str_append_data.2174
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - smtp_char_is_xtext.2176
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:564,7'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_data.2174
                - smtp_char_is_xtext.2176
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:564,34'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:564,38'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:565,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:564,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:565,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:566,3'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_data.2174
                - smtp_char_is_xtext.2176
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:569,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:570,4'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_data.2174
                - smtp_char_is_xtext.2176
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:579,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:571,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:572,5'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_data.2174
                - smtp_char_is_xtext.2176
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:577,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:573,9'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:574,6'
              BranchSideFuncs:
                - str_append_c.2179
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_data.2174
                - smtp_char_is_xtext.2176
            - BranchSide:      'smtp-parser.c:575,5'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_xtext.2176
      Callsites:
        - Src:             'smtp-parser.c:551,5'
          Dst:             smtp_char_is_xtext
        - Src:             'smtp-parser.c:558,4'
          Dst:             smtp_char_is_xtext
        - Src:             'smtp-parser.c:562,4'
          Dst:             str_append_data
        - Src:             'smtp-parser.c:569,7'
          Dst:             smtp_parse_xtext_hexdigit
        - Src:             'smtp-parser.c:571,8'
          Dst:             smtp_parse_xtext_hexdigit
        - Src:             'smtp-parser.c:574,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: 509
      functionLinenumberEnd: 517
      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:514,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:515,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:516,32'
              BranchSideFuncs:
                - smtp_parser_parse_atom
      Callsites:
        - Src:             'smtp-parser.c:514,11'
          Dst:             smtp_parser_parse_quoted_string
        - Src:             'smtp-parser.c:516,9'
          Dst:             smtp_parser_parse_atom
    - functionName:    smtp_parser_parse_quoted_string
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 477
      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:428,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:428,37'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:429,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:428,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:429,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:430,2'
              BranchSideFuncs:
                - str_c
                - smtp_char_is_qpair.2188
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_qtext.2187
                - t_str_new
        - Branch String:   'smtp-parser.c:432,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:433,11'
              BranchSideFuncs:
                - t_str_new
                - str_c
                - smtp_char_is_qpair.2188
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_qtext.2187
            - BranchSide:      'smtp-parser.c:436,2'
              BranchSideFuncs:
                - str_c
                - smtp_char_is_qpair.2188
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_qtext.2187
        - Branch String:   'smtp-parser.c:436,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:437,12'
              BranchSideFuncs:
                - smtp_char_is_qpair.2188
                - str_c
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_qtext.2187
            - BranchSide:      'smtp-parser.c:465,6'
              BranchSideFuncs:
                - str_c
        - Branch String:   'smtp-parser.c:438,36'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:438,3'
              BranchSideFuncs:
                - smtp_char_is_qtext.2187
                - smtp_char_is_qpair.2188
                - str_c
                - str_append_c.2179
                - str_append_data.2174
            - BranchSide:      'smtp-parser.c:439,24'
              BranchSideFuncs:
                - smtp_char_is_qtext.2187
                - smtp_char_is_qpair.2188
                - str_c
                - str_append_c.2179
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:438,3'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:441,4'
              BranchSideFuncs:
                - smtp_char_is_qpair.2188
                - str_c
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_qtext.2187
            - BranchSide:      'smtp-parser.c:444,7'
              BranchSideFuncs:
                - smtp_char_is_qpair.2188
                - str_c
                - smtp_char_is_qtext.2187
                - str_append_c.2179
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:444,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:445,20'
              BranchSideFuncs:
                - str_append_data.2174
                - smtp_char_is_qpair.2188
                - str_c
                - smtp_char_is_qtext.2187
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:447,7'
              BranchSideFuncs:
                - smtp_char_is_qpair.2188
                - str_c
                - str_append_data.2174
                - smtp_char_is_qtext.2187
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:447,34'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:447,38'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:448,4'
              BranchSideFuncs:
                - str_c
        - Branch String:   'smtp-parser.c:447,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:448,4'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:449,3'
              BranchSideFuncs:
                - smtp_char_is_qpair.2188
                - str_c
                - str_append_data.2174
                - smtp_char_is_qtext.2187
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:452,34'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:453,25'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:454,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:452,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:454,4'
              BranchSideFuncs:
                - str_c
                - smtp_char_is_qpair.2188
                - str_append_data.2174
                - smtp_char_is_qtext.2187
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:459,7'
              BranchSideFuncs:
                - str_c
                - smtp_char_is_qpair.2188
                - str_append_data.2174
                - smtp_char_is_qtext.2187
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:459,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:460,4'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
                - smtp_char_is_qpair.2188
                - str_append_data.2174
                - smtp_char_is_qtext.2187
            - BranchSide:      'smtp-parser.c:461,3'
              BranchSideFuncs:
                - str_c
                - smtp_char_is_qpair.2188
                - str_append_c.2179
                - str_append_data.2174
                - smtp_char_is_qtext.2187
        - Branch String:   'smtp-parser.c:465,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:466,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:469,7'
              BranchSideFuncs:
                - str_c
        - Branch String:   'smtp-parser.c:469,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:470,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:473,2'
              BranchSideFuncs:
                - str_c
        - Branch String:   'smtp-parser.c:474,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:475,20'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:476,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:433,11'
          Dst:             t_str_new
        - Src:             'smtp-parser.c:439,4'
          Dst:             smtp_char_is_qtext
        - Src:             'smtp-parser.c:445,4'
          Dst:             str_append_data
        - Src:             'smtp-parser.c:453,5'
          Dst:             smtp_char_is_qpair
        - Src:             'smtp-parser.c:460,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:475,14'
          Dst:             str_c
    - functionName:    smtp_parser_parse_atom
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 505
      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:499,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:500,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:502,6'
              BranchSideFuncs:
                - t_strndup
        - Branch String:   'smtp-parser.c:502,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:503,24'
              BranchSideFuncs:
                - t_strndup
            - BranchSide:      'smtp-parser.c:504,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:499,11'
          Dst:             smtp_parser_skip_atom
        - Src:             'smtp-parser.c:503,14'
          Dst:             t_strndup
    - functionName:    smtp_parser_skip_atom
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 491
      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:484,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:484,57'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:485,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:484,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:485,3'
              BranchSideFuncs:
                - smtp_char_is_atext.2171
            - BranchSide:      'smtp-parser.c:486,2'
              BranchSideFuncs:
                - smtp_char_is_atext.2171
        - Branch String:   'smtp-parser.c:488,35'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:488,58'
              BranchSideFuncs:
                - smtp_char_is_atext.2171
            - BranchSide:      'smtp-parser.c:488,2'
              BranchSideFuncs:
                - smtp_char_is_atext.2171
        - Branch String:   'smtp-parser.c:488,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:489,3'
              BranchSideFuncs:
                - smtp_char_is_atext.2171
            - BranchSide:      'smtp-parser.c:490,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:484,37'
          Dst:             smtp_char_is_atext
        - Src:             'smtp-parser.c:488,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: 136
      functionLinenumberEnd: 161
      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:145,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:146,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_data.2174
            - BranchSide:      'smtp-parser.c:152,6'
              BranchSideFuncs:
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:146,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:147,13'
              BranchSideFuncs:
                - str_append_data.2174
                - __ctype_b_loc
            - BranchSide:      'smtp-parser.c:148,13'
              BranchSideFuncs:
                - str_append_data.2174
                - __ctype_b_loc
        - Branch String:   'smtp-parser.c:148,12'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:0,0'
              BranchSideFuncs:
                - str_append_data.2174
            - BranchSide:      'smtp-parser.c:149,4'
              BranchSideFuncs:
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:152,28'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:152,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:153,17'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:152,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:153,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:157,16'
              BranchSideFuncs:
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:158,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:159,19'
              BranchSideFuncs:
                - str_append_data.2174
            - BranchSide:      'smtp-parser.c:160,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:146,7'
          Dst:             __ctype_b_loc
        - Src:             'smtp-parser.c:159,3'
          Dst:             str_append_data
    - functionName:    smtp_parser_parse_ipv4_address
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 288
      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:268,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:269,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:270,7'
              BranchSideFuncs:
                - htonl
                - smtp_parser_parse_snum
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:272,20'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:272,23'
              BranchSideFuncs:
                - htonl
                - smtp_parser_parse_snum
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:272,2'
              BranchSideFuncs:
                - htonl
                - smtp_parser_parse_snum
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:272,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:273,8'
              BranchSideFuncs:
                - smtp_parser_parse_snum
                - htonl
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:285,6'
              BranchSideFuncs:
                - htonl
        - Branch String:   'smtp-parser.c:273,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:274,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:276,7'
              BranchSideFuncs:
                - smtp_parser_parse_snum
                - htonl
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:276,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:277,4'
              BranchSideFuncs:
                - str_append_c.2179
                - smtp_parser_parse_snum
                - htonl
            - BranchSide:      'smtp-parser.c:278,3'
              BranchSideFuncs:
                - smtp_parser_parse_snum
                - htonl
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:280,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:281,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:282,9'
              BranchSideFuncs:
                - htonl
                - smtp_parser_parse_snum
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:285,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:286,25'
              BranchSideFuncs:
                - htonl
            - BranchSide:      'smtp-parser.c:287,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:268,13'
          Dst:             smtp_parser_parse_snum
        - Src:             'smtp-parser.c:277,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:280,7'
          Dst:             smtp_parser_parse_snum
        - Src:             'smtp-parser.c:286,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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_parser_parse_address_literal
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 407
      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:315,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:315,37'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:316,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:315,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:316,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:317,2'
              BranchSideFuncs:
                - smtp_parser_parse_ipv4_address
                - t_str_new
                - str_append_c.2179
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strdup_printf
                - t_str_new
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:319,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:320,11'
              BranchSideFuncs:
                - t_str_new
                - str_append_c.2179
                - smtp_parser_parse_ipv4_address
                - t_str_new
                - str_append_c.2179
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strdup_printf
            - BranchSide:      'smtp-parser.c:323,6'
              BranchSideFuncs:
                - smtp_parser_parse_ipv4_address
                - t_str_new
                - str_append_c.2179
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:323,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:324,3'
              BranchSideFuncs:
                - smtp_parser_parse_ipv4_address
                - t_str_new
                - str_append_c.2179
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strdup_printf
            - BranchSide:      'smtp-parser.c:327,2'
              BranchSideFuncs:
                - smtp_parser_parse_ipv4_address
                - t_str_new
                - str_append_c.2179
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:328,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:329,7'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
            - BranchSide:      'smtp-parser.c:344,7'
              BranchSideFuncs:
                - t_str_new
                - str_append_c.2179
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:329,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:330,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:333,7'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
        - Branch String:   'smtp-parser.c:333,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:334,4'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
            - BranchSide:      'smtp-parser.c:339,2'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
        - Branch String:   'smtp-parser.c:344,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:345,13'
              BranchSideFuncs:
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strdup_printf
            - BranchSide:      'smtp-parser.c:347,13'
              BranchSideFuncs:
                - t_str_new
                - str_append_c.2179
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:350,54'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:351,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:352,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:351,31'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:351,35'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:352,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:350,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:352,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:355,24'
              BranchSideFuncs:
                - str_c
                - strcasecmp
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:355,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:356,9'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:357,12'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:357,12'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:0,0'
              BranchSideFuncs:
                - str_c
                - t_strdup_printf
            - BranchSide:      'smtp-parser.c:360,11'
              BranchSideFuncs:
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:364,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:365,4'
              BranchSideFuncs:
                - str_append_c.2179
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
            - BranchSide:      'smtp-parser.c:368,12'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
        - Branch String:   'smtp-parser.c:369,36'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:369,3'
              BranchSideFuncs:
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
            - BranchSide:      'smtp-parser.c:370,27'
              BranchSideFuncs:
                - smtp_char_is_dcontent
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:369,3'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:371,4'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
                - smtp_char_is_dcontent
            - BranchSide:      'smtp-parser.c:373,7'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:373,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:374,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:377,7'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2174
        - Branch String:   'smtp-parser.c:377,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:378,20'
              BranchSideFuncs:
                - str_append_data.2174
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
            - BranchSide:      'smtp-parser.c:380,7'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
                - t_strndup
                - net_addr2ip
        - Branch String:   'smtp-parser.c:382,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:384,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:387,8'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
        - Branch String:   'smtp-parser.c:387,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:388,6'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
            - BranchSide:      'smtp-parser.c:389,3'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
        - Branch String:   'smtp-parser.c:393,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:394,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:396,14'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
        - Branch String:   'smtp-parser.c:402,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:403,3'
              BranchSideFuncs:
                - str_append_c.2179
                - str_c
            - BranchSide:      'smtp-parser.c:406,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:320,11'
          Dst:             t_str_new
        - Src:             'smtp-parser.c:321,3'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:328,11'
          Dst:             smtp_parser_parse_ipv4_address
        - Src:             'smtp-parser.c:347,13'
          Dst:             t_str_new
        - Src:             'smtp-parser.c:348,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:350,7'
          Dst:             smtp_parser_parse_ldh_str
        - Src:             'smtp-parser.c:355,18'
          Dst:             str_c
        - Src:             'smtp-parser.c:355,7'
          Dst:             strcasecmp
        - Src:             'smtp-parser.c:360,5'
          Dst:             str_c
        - Src:             'smtp-parser.c:358,20'
          Dst:             t_strdup_printf
        - Src:             'smtp-parser.c:365,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:370,4'
          Dst:             smtp_char_is_dcontent
        - Src:             'smtp-parser.c:378,4'
          Dst:             str_append_data
        - Src:             'smtp-parser.c:382,20'
          Dst:             t_strndup
        - Src:             'smtp-parser.c:382,8'
          Dst:             net_addr2ip
        - Src:             'smtp-parser.c:403,3'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:404,14'
          Dst:             str_c
    - functionName:    smtp_parser_parse_domain
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 225
      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:179,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:180,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:182,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:180,29'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:180,33'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - t_str_new
            - BranchSide:      'smtp-parser.c:184,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - t_str_new
        - Branch String:   'smtp-parser.c:180,52'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:181,5'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - t_str_new
            - BranchSide:      'smtp-parser.c:184,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - t_str_new
        - Branch String:   'smtp-parser.c:179,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:182,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:184,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - t_str_new
        - Branch String:   'smtp-parser.c:184,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:185,11'
              BranchSideFuncs:
                - t_str_new
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:187,2'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:189,34'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:189,38'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:190,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:189,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:190,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:193,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:193,32'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:193,36'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:198,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:193,55'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:194,5'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:198,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:193,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:195,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:198,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:198,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:199,4'
              BranchSideFuncs:
                - str_append_c.2179
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:200,3'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:203,3'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:204,9'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_c
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:214,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_append_c.2179
                - str_c
        - Branch String:   'smtp-parser.c:204,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:204,37'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:208,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:204,56'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:205,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:208,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:204,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:206,5'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_append_c.2179
                - str_c
            - BranchSide:      'smtp-parser.c:208,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:208,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:209,5'
              BranchSideFuncs:
                - str_append_c.2179
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
            - BranchSide:      'smtp-parser.c:210,4'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:214,34'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:214,38'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:215,4'
              BranchSideFuncs:
                - str_c
        - Branch String:   'smtp-parser.c:214,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:215,4'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:217,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:217,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:218,4'
              BranchSideFuncs:
                - str_append_c.2179
                - __ctype_b_loc
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
            - BranchSide:      'smtp-parser.c:219,3'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2179
                - str_c
                - __ctype_b_loc
                - str_append_c.2179
                - str_append_c.2179
        - Branch String:   'smtp-parser.c:222,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:223,20'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:224,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:180,5'
          Dst:             __ctype_b_loc
        - Src:             'smtp-parser.c:185,11'
          Dst:             t_str_new
        - Src:             'smtp-parser.c:193,8'
          Dst:             __ctype_b_loc
        - Src:             'smtp-parser.c:199,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:204,9'
          Dst:             __ctype_b_loc
        - Src:             'smtp-parser.c:209,5'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:218,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:223,14'
          Dst:             str_c
    - functionName:    smtp_parser_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 127
      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:125,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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.2347
                - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:80,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.2348
                - str_append_c.2349
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_append_c.2349
                - 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.2348
                - str_append_c.2349
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_c
                - p_strdup
                - str_append_c.2349
        - Branch String:   'message-address.c:150,7'
          Branch Sides:
            - BranchSide:      'message-address.c:151,4'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_c.2349
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_len.2348
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:153,3'
              BranchSideFuncs:
                - str_append_c.2349
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_len.2348
                - str_append_c.2349
                - 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.2348
                - str_append_c.2349
                - rfc822_parse_domain
                - str_append_c.2349
                - str_c
                - p_strdup
        - Branch String:   'message-address.c:157,45'
          Branch Sides:
            - BranchSide:      'message-address.c:157,3'
              BranchSideFuncs:
                - str_len.2348
                - str_append_c.2349
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_append_c.2349
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:158,11'
              BranchSideFuncs:
                - str_len.2348
                - str_append_c.2349
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_append_c.2349
                - 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.2348
                - str_append_c.2349
                - rfc822_parse_domain
                - str_append_c.2349
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:159,4'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - str_len.2348
                - str_append_c.2349
                - rfc822_parse_domain
                - str_append_c.2349
                - 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.2349
                - rfc822_parse_atom
            - BranchSide:      'message-address.c:94,8'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_append_c.2349
        - 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.2349
        - 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.2349
        - Branch String:   'message-address.c:97,19'
          Branch Sides:
            - BranchSide:      'message-address.c:97,23'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_append_c.2349
            - BranchSide:      'message-address.c:97,2'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_append_c.2349
        - Branch String:   'message-address.c:97,2'
          Branch Sides:
            - BranchSide:      'message-address.c:84,3'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_append_c.2349
            - 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.2347
                - parse_local_part
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - 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.2348
                - str_append_c.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - str_c
                - p_strdup
                - str_c
                - p_strdup
                - parse_domain
            - BranchSide:      'message-address.c:249,6'
              BranchSideFuncs:
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - 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.2348
                - str_append_c.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - str_c
                - p_strdup
                - str_c
                - p_strdup
                - parse_domain
            - BranchSide:      'message-address.c:256,14'
              BranchSideFuncs:
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - 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.2348
                - str_append_c.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - str_c
                - p_strdup
                - str_c
                - p_strdup
                - parse_domain
            - BranchSide:      'message-address.c:256,14'
              BranchSideFuncs:
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - 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.2348
                - str_append_c.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - str_c
                - p_strdup
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:256,14'
              BranchSideFuncs:
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - 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.2348
                - str_append_c.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - str_c
                - p_strdup
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:254,2'
              BranchSideFuncs:
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - 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.2349
                - str_len.2348
                - rfc822_parse_phrase
                - str_len.2348
                - 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
        - 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.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append.2370
                - i_panic
        - Branch String:   'message-address.c:540,28'
          Branch Sides:
            - BranchSide:      'message-address.c:540,31'
              BranchSideFuncs:
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append.2370
                - i_panic
            - BranchSide:      'message-address.c:550,2'
              BranchSideFuncs:
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:540,6'
          Branch Sides:
            - BranchSide:      'message-address.c:541,3'
              BranchSideFuncs:
                - str_append.2370
                - i_panic
            - BranchSide:      'message-address.c:550,2'
              BranchSideFuncs:
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - 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.2370
        - Branch String:   'message-address.c:550,2'
          Branch Sides:
            - BranchSide:      'message-address.c:550,2'
              BranchSideFuncs:
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:551,7'
              BranchSideFuncs:
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:551,7'
          Branch Sides:
            - BranchSide:      'message-address.c:552,10'
              BranchSideFuncs:
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:554,15'
              BranchSideFuncs:
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:556,7'
          Branch Sides:
            - BranchSide:      'message-address.c:557,9'
              BranchSideFuncs:
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:592,4'
              BranchSideFuncs:
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
        - Branch String:   'message-address.c:557,8'
          Branch Sides:
            - BranchSide:      'message-address.c:560,9'
              BranchSideFuncs:
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:577,5'
              BranchSideFuncs:
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:560,31'
          Branch Sides:
            - BranchSide:      'message-address.c:560,35'
              BranchSideFuncs:
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - strstr
                - str_append_maybe_escape
                - str_append.2370
            - BranchSide:      'message-address.c:571,17'
              BranchSideFuncs:
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - 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.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append.2370
            - BranchSide:      'message-address.c:571,17'
              BranchSideFuncs:
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:562,10'
          Branch Sides:
            - BranchSide:      'message-address.c:566,18'
              BranchSideFuncs:
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:568,31'
              BranchSideFuncs:
                - str_append_maybe_escape
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - strstr
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - 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.2348
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
        - Branch String:   'message-address.c:581,5'
          Branch Sides:
            - BranchSide:      'message-address.c:581,5'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - i_panic
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
            - BranchSide:      'message-address.c:581,5'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - i_panic
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
        - Branch String:   'message-address.c:581,5'
          Branch Sides:
            - BranchSide:      'message-address.c:581,5'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - i_panic
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
            - BranchSide:      'message-address.c:581,5'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - i_panic
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - 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.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - i_panic
                - i_panic
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
        - Branch String:   'message-address.c:582,23'
          Branch Sides:
            - BranchSide:      'message-address.c:582,26'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - i_panic
                - i_panic
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
            - BranchSide:      'message-address.c:584,14'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_len.2348
                - str_truncate.2347
        - Branch String:   'message-address.c:582,9'
          Branch Sides:
            - BranchSide:      'message-address.c:583,19'
              BranchSideFuncs:
                - str_len.2348
                - str_truncate.2347
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:584,14'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_len.2348
                - str_truncate.2347
        - 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.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
        - Branch String:   'message-address.c:594,8'
          Branch Sides:
            - BranchSide:      'message-address.c:596,16'
              BranchSideFuncs:
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
            - BranchSide:      'message-address.c:604,8'
              BranchSideFuncs:
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
        - Branch String:   'message-address.c:596,9'
          Branch Sides:
            - BranchSide:      'message-address.c:600,17'
              BranchSideFuncs:
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
            - BranchSide:      'message-address.c:602,30'
              BranchSideFuncs:
                - str_append_maybe_escape
                - str_append.2370
                - strstr
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
        - Branch String:   'message-address.c:604,28'
          Branch Sides:
            - BranchSide:      'message-address.c:605,8'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
            - BranchSide:      'message-address.c:607,9'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
        - Branch String:   'message-address.c:605,33'
          Branch Sides:
            - BranchSide:      'message-address.c:606,8'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
            - BranchSide:      'message-address.c:607,9'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
        - Branch String:   'message-address.c:607,28'
          Branch Sides:
            - BranchSide:      'message-address.c:607,31'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
            - BranchSide:      'message-address.c:609,5'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
        - Branch String:   'message-address.c:607,9'
          Branch Sides:
            - BranchSide:      'message-address.c:608,6'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
            - BranchSide:      'message-address.c:609,5'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
        - Branch String:   'message-address.c:610,9'
          Branch Sides:
            - BranchSide:      'message-address.c:611,17'
              BranchSideFuncs:
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
            - BranchSide:      'message-address.c:614,9'
              BranchSideFuncs:
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
        - Branch String:   'message-address.c:614,9'
          Branch Sides:
            - BranchSide:      'message-address.c:615,17'
              BranchSideFuncs:
                - str_append.2370
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
            - BranchSide:      'message-address.c:617,30'
              BranchSideFuncs:
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
                - str_append_c.2349
                - str_append.2370
        - Branch String:   'message-address.c:618,9'
          Branch Sides:
            - BranchSide:      'message-address.c:619,6'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:622,5'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append.2370
                - str_append_c.2349
                - str_append_maybe_escape
                - str_append_c.2349
                - str_append.2370
                - str_append.2370
                - str_append.2370
                - str_append_c.2349
                - str_append_c.2349
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - i_panic
                - str_append.2370
                - str_append.2370
                - strstr
                - str_append_maybe_escape
                - str_append.2370
                - str_c
                - str_len.2348
                - str_append_c.2349
                - str_len.2348
                - str_truncate.2347
                - str_len.2348
                - str_truncate.2347
                - 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:    8
      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.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_data.2334
            - BranchSide:      'message-address.c:46,7'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_data.2334
        - Branch String:   'message-address.c:42,21'
          Branch Sides:
            - BranchSide:      'message-address.c:42,25'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_data.2334
            - BranchSide:      'message-address.c:44,2'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_data.2334
        - Branch String:   'message-address.c:42,36'
          Branch Sides:
            - BranchSide:      'message-address.c:42,40'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_data.2334
            - BranchSide:      'message-address.c:43,4'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_data.2334
        - Branch String:   'message-address.c:42,7'
          Branch Sides:
            - BranchSide:      'message-address.c:43,4'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_data.2334
            - BranchSide:      'message-address.c:44,2'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_data.2334
        - Branch String:   'message-address.c:46,6'
          Branch Sides:
            - BranchSide:      'message-address.c:47,19'
              BranchSideFuncs:
                - str_append_data.2334
            - BranchSide:      'message-address.c:52,11'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
        - Branch String:   'message-address.c:52,2'
          Branch Sides:
            - BranchSide:      'message-address.c:53,7'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
            - BranchSide:      'message-address.c:57,7'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
        - Branch String:   'message-address.c:53,7'
          Branch Sides:
            - BranchSide:      'message-address.c:53,7'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
            - BranchSide:      'message-address.c:54,4'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
        - Branch String:   'message-address.c:53,7'
          Branch Sides:
            - BranchSide:      'message-address.c:53,7'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
            - BranchSide:      'message-address.c:54,4'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
        - Branch String:   'message-address.c:53,7'
          Branch Sides:
            - BranchSide:      'message-address.c:54,4'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
            - BranchSide:      'message-address.c:55,2'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
        - Branch String:   'message-address.c:57,6'
          Branch Sides:
            - BranchSide:      'message-address.c:59,3'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
            - BranchSide:      'message-address.c:66,2'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_data.2334
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
        - Branch String:   'message-address.c:69,2'
          Branch Sides:
            - BranchSide:      'message-address.c:70,7'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
            - BranchSide:      'message-address.c:75,2'
              BranchSideFuncs:
                - str_append_c.2349
        - Branch String:   'message-address.c:70,7'
          Branch Sides:
            - BranchSide:      'message-address.c:70,7'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
            - BranchSide:      'message-address.c:71,4'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
        - Branch String:   'message-address.c:70,7'
          Branch Sides:
            - BranchSide:      'message-address.c:70,7'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
            - BranchSide:      'message-address.c:71,4'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
        - Branch String:   'message-address.c:70,7'
          Branch Sides:
            - BranchSide:      'message-address.c:71,4'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
            - BranchSide:      'message-address.c:72,3'
              BranchSideFuncs:
                - str_append_c.2349
                - str_append_c.2349
                - str_append_c.2349
      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.2407
                - str_len.2406
            - BranchSide:      'message-date.c:107,22'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_data.2407
                - str_len.2406
        - 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.2489
                - 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.2489
                - 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.2489
                - 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.2489
                - 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.2489
                - 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.2489
                - 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.2489
        - 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.2489
            - 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.2489
            - 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.2489
            - BranchSide:      'rfc822-parser.c:552,3'
              BranchSideFuncs:
                - str_c
                - str_append_c.2489
        - Branch String:   'rfc822-parser.c:552,52'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:552,3'
              BranchSideFuncs:
                - str_c
                - str_append_c.2489
            - BranchSide:      'rfc822-parser.c:553,11'
              BranchSideFuncs:
                - str_c
                - str_append_c.2489
        - Branch String:   'rfc822-parser.c:553,28'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:552,3'
              BranchSideFuncs:
                - str_c
                - str_append_c.2489
            - BranchSide:      'rfc822-parser.c:553,32'
              BranchSideFuncs:
                - str_c
                - str_append_c.2489
        - Branch String:   'rfc822-parser.c:553,50'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:552,3'
              BranchSideFuncs:
                - str_c
                - str_append_c.2489
            - BranchSide:      'rfc822-parser.c:554,11'
              BranchSideFuncs:
                - str_c
                - str_append_c.2489
        - Branch String:   'rfc822-parser.c:554,29'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:552,3'
              BranchSideFuncs:
                - str_c
                - str_append_c.2489
            - BranchSide:      'rfc822-parser.c:554,33'
              BranchSideFuncs:
                - str_c
                - str_append_c.2489
        - Branch String:   'rfc822-parser.c:552,3'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:555,4'
              BranchSideFuncs:
                - str_append_c.2489
                - 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,25'
              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,25'
              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,25'
              BranchSideFuncs:
                - rfc822_skip_comment
        - Branch String:   'rfc822-parser.c:141,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:143,25'
              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.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:238,18'
              BranchSideFuncs:
                - str_append_data.2494
        - Branch String:   'rfc822-parser.c:231,41'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:231,45'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:232,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:231,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:232,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:234,19'
              BranchSideFuncs:
                - str_append_data.2494
                - 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.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
                - 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.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:251,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:252,12'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - 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.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:261,20'
              BranchSideFuncs:
                - str_append_data.2494
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:266,10'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:273,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:289,2'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:254,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:255,21'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append.2495
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:259,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:267,16'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:267,19'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:269,20'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:267,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:268,8'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:269,20'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - 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.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:277,27'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:277,31'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:282,5'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:277,49'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:278,9'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:282,5'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:277,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:282,5'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:285,20'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
      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.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
                - str_truncate.2484
        - Branch String:   'rfc822-parser.c:73,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:74,16'
              BranchSideFuncs:
                - str_truncate.2484
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:76,12'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:77,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:78,12'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - 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.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:90,9'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:93,8'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:104,8'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:113,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:132,2'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:80,34'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:81,8'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:88,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:80,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:82,21'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append.2495
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:88,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:93,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:94,9'
              BranchSideFuncs:
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:101,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:94,9'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:95,22'
              BranchSideFuncs:
                - str_append_data.2494
            - 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.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:106,10'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:107,16'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:107,19'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:109,20'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:107,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:108,8'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:109,20'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
        - 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.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
                - str_append_data.2494
        - Branch String:   'rfc822-parser.c:117,27'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:117,31'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:122,5'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:117,49'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:118,9'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:122,5'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:117,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:122,5'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:125,8'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
                - str_append_data.2494
        - Branch String:   'rfc822-parser.c:125,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:126,21'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:129,12'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - str_append.2495
      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.2489
                - rfc822_parse_mime_token
                - str_truncate.2484
                - str_truncate.2484
                - str_truncate.2484
        - 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.2489
                - rfc822_parse_mime_token
                - str_truncate.2484
                - str_truncate.2484
                - str_truncate.2484
        - Branch String:   'rfc822-parser.c:489,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:490,16'
              BranchSideFuncs:
                - str_truncate.2484
            - BranchSide:      'rfc822-parser.c:493,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - str_append_c.2489
                - rfc822_parse_mime_token
                - str_truncate.2484
                - str_truncate.2484
        - Branch String:   'rfc822-parser.c:494,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:495,16'
              BranchSideFuncs:
                - str_truncate.2484
            - BranchSide:      'rfc822-parser.c:498,2'
              BranchSideFuncs:
                - str_append_c.2489
                - rfc822_parse_mime_token
                - str_truncate.2484
        - Branch String:   'rfc822-parser.c:505,52'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:506,6'
              BranchSideFuncs:
                - str_truncate.2484
            - BranchSide:      'rfc822-parser.c:508,16'
              BranchSideFuncs:
                - str_truncate.2484
        - Branch String:   'rfc822-parser.c:506,27'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:507,7'
              BranchSideFuncs:
                - str_truncate.2484
            - BranchSide:      'rfc822-parser.c:508,16'
              BranchSideFuncs:
                - str_truncate.2484
        - Branch String:   'rfc822-parser.c:507,29'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:507,33'
              BranchSideFuncs:
                - str_truncate.2484
            - 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.2484
            - 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.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
                - 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.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:369,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:370,12'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - 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.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:380,4'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:382,20'
              BranchSideFuncs:
                - str_append_data.2494
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:387,10'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:395,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:410,2'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:372,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:373,21'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append.2495
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:377,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:388,16'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:388,19'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:390,20'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:388,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:389,8'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:390,20'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - 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.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
                - str_append_data.2494
        - Branch String:   'rfc822-parser.c:399,27'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:399,31'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:404,21'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:399,49'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:400,9'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:404,21'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
        - Branch String:   'rfc822-parser.c:399,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:404,21'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
            - BranchSide:      'rfc822-parser.c:409,3'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
                - str_append.2495
      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,7'
              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.2494
                - i_panic
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_c.2489
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:197,15'
              BranchSideFuncs:
                - str_append_data.2494
                - i_panic
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_c.2489
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:197,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:198,7'
              BranchSideFuncs:
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_c.2489
                - rfc822_skip_lwsp
                - str_append_data.2494
                - i_panic
            - BranchSide:      'rfc822-parser.c:221,2'
              BranchSideFuncs:
                - str_append_data.2494
                - i_panic
        - Branch String:   'rfc822-parser.c:198,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:199,4'
              BranchSideFuncs:
                - str_append_data.2494
                - i_panic
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_c.2489
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:203,7'
              BranchSideFuncs:
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_c.2489
                - rfc822_skip_lwsp
                - str_append_data.2494
                - 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.2494
                - rfc822_skip_lwsp
                - str_append_c.2489
                - rfc822_skip_lwsp
                - str_append_data.2494
                - 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.2489
                - rfc822_skip_lwsp
                - str_append_data.2494
                - i_panic
                - str_append_data.2494
                - 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.2489
                - rfc822_skip_lwsp
                - str_append_data.2494
                - i_panic
                - str_append_data.2494
                - 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.2494
                - i_panic
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_c.2489
                - 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.2494
      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: 112
      functionLinenumberEnd: 114
      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.2494
                - str_append_data.2494
                - str_truncate.2484
                - punycode_decode
                - str_append_c.2489
                - str_append_data.2494
                - strncmp
                - str_begins_builtin_success.2507
            - BranchSide:      'rfc822-parser.c:440,6'
              BranchSideFuncs:
                - str_append_data.2494
        - Branch String:   'rfc822-parser.c:425,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:426,12'
              BranchSideFuncs:
                - str_begins
                - str_append_data.2494
                - str_append_data.2494
                - strchr
                - str_truncate.2484
                - punycode_decode
                - str_append_c.2489
                - str_append_data.2494
                - strncmp
                - str_begins_builtin_success.2507
            - BranchSide:      'rfc822-parser.c:427,7'
              BranchSideFuncs:
                - str_begins
                - str_append_data.2494
                - str_append_data.2494
                - strchr
                - str_truncate.2484
                - punycode_decode
                - str_append_c.2489
                - str_append_data.2494
                - strncmp
                - str_begins_builtin_success.2507
        - Branch String:   'rfc822-parser.c:427,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:427,7'
              BranchSideFuncs:
                - strncmp
                - str_begins_builtin_success.2507
                - str_append_data.2494
                - str_append_data.2494
                - strchr
                - str_begins
                - str_truncate.2484
                - punycode_decode
                - str_append_c.2489
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:427,7'
              BranchSideFuncs:
                - str_begins
                - str_append_data.2494
                - str_append_data.2494
                - strchr
                - strncmp
                - str_begins_builtin_success.2507
                - str_truncate.2484
                - punycode_decode
                - str_append_c.2489
                - str_append_data.2494
        - Branch String:   'rfc822-parser.c:427,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:428,17'
              BranchSideFuncs:
                - str_truncate.2484
                - punycode_decode
                - str_append_data.2494
                - strchr
                - str_begins
                - str_append_data.2494
                - strncmp
                - str_begins_builtin_success.2507
                - str_append_c.2489
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:436,20'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - strchr
                - str_begins
                - str_truncate.2484
                - punycode_decode
                - str_append_c.2489
                - str_append_data.2494
                - strncmp
                - str_begins_builtin_success.2507
        - Branch String:   'rfc822-parser.c:427,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:427,7'
              BranchSideFuncs:
                - str_truncate.2484
                - punycode_decode
                - str_append_data.2494
                - strchr
                - str_begins
                - str_append_data.2494
                - strncmp
                - str_begins_builtin_success.2507
                - str_append_c.2489
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:427,7'
              BranchSideFuncs:
                - str_begins_builtin_success.2507
                - str_append_data.2494
                - str_append_data.2494
                - strchr
                - str_begins
                - str_truncate.2484
                - punycode_decode
                - str_append_c.2489
                - str_append_data.2494
                - strncmp
        - Branch String:   'rfc822-parser.c:427,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:428,17'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - strchr
                - str_begins
                - str_truncate.2484
                - punycode_decode
                - str_append_c.2489
                - str_append_data.2494
                - strncmp
                - str_begins_builtin_success.2507
            - BranchSide:      'rfc822-parser.c:436,20'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - strchr
                - str_begins
                - str_truncate.2484
                - punycode_decode
                - str_append_c.2489
                - str_append_data.2494
                - strncmp
                - str_begins_builtin_success.2507
        - Branch String:   'rfc822-parser.c:427,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:428,17'
              BranchSideFuncs:
                - str_truncate.2484
                - punycode_decode
                - str_append_data.2494
                - strchr
                - str_begins
                - str_append_data.2494
                - strncmp
                - str_begins_builtin_success.2507
                - str_append_c.2489
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:436,20'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - strchr
                - str_begins
                - str_truncate.2484
                - punycode_decode
                - str_append_c.2489
                - str_append_data.2494
                - strncmp
                - str_begins_builtin_success.2507
        - Branch String:   'rfc822-parser.c:429,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:431,21'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - strchr
                - str_begins
                - str_append_data.2494
                - str_truncate.2484
                - punycode_decode
                - str_append_c.2489
                - strncmp
                - str_begins_builtin_success.2507
            - BranchSide:      'rfc822-parser.c:432,14'
              BranchSideFuncs:
                - str_append_data.2494
                - strchr
                - str_begins
                - str_append_data.2494
                - str_truncate.2484
                - punycode_decode
                - str_append_data.2494
                - strncmp
                - str_begins_builtin_success.2507
                - str_append_c.2489
        - Branch String:   'rfc822-parser.c:440,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:440,6'
              BranchSideFuncs:
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:441,19'
              BranchSideFuncs:
                - str_append_data.2494
      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:    17
      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.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:316,18'
              BranchSideFuncs:
                - str_append_data.2494
        - Branch String:   'rfc822-parser.c:309,28'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:309,32'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:310,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:309,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:310,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:312,19'
              BranchSideFuncs:
                - str_append_data.2494
                - 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.2489
                - 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.2489
                - 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.2489
                - rfc822_parse_atom_or_dot
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:339,35'
              BranchSideFuncs:
                - rfc822_parse_atom_or_dot
                - str_append_c.2489
                - 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.2489
                - 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.2489
                - rfc822_parse_atom_or_dot
                - rfc822_skip_lwsp
                - rfc822_parse_quoted_string
            - BranchSide:      'rfc822-parser.c:347,3'
              BranchSideFuncs:
                - str_append_c.2489
                - 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.2489
                - rfc822_parse_atom_or_dot
                - rfc822_parse_quoted_string
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:347,3'
              BranchSideFuncs:
                - str_append_c.2489
                - 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.2489
                - 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.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:168,15'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:168,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:169,7'
              BranchSideFuncs:
                - str_append_data.2494
                - rfc822_skip_lwsp
                - str_append_data.2494
            - BranchSide:      'rfc822-parser.c:176,18'
              BranchSideFuncs:
                - str_append_data.2494
        - Branch String:   'rfc822-parser.c:169,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:170,4'
              BranchSideFuncs:
                - str_append_data.2494
                - str_append_data.2494
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:172,19'
              BranchSideFuncs:
                - str_append_data.2494
                - 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:    timeval_diff_msecs
      functionSourceFile: '/src/dovecot/src/lib-master/../../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:             '../../src/lib/time-util.h:26,9'
          Dst:             timeval_diff_usecs
    - functionName:    master_service_overflow
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1675
      functionLinenumberEnd: 1708
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         21
      ICount:          105
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - io_loop_is_running
        - master_service_get_login_state
        - master_service_io_listeners_add
        - timeout_remove
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:1681,58'
          Branch Sides:
            - BranchSide:      'master-service.c:1682,6'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1684,3'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:1681,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1684,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1687,7'
              BranchSideFuncs:
                - master_service_io_listeners_add
                - io_loop_is_running
                - i_panic
                - i_panic
        - Branch String:   'master-service.c:1687,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1689,3'
              BranchSideFuncs:
                - master_service_io_listeners_add
                - io_loop_is_running
                - i_panic
                - i_panic
            - BranchSide:      'master-service.c:1691,6'
              BranchSideFuncs:
                - master_service_io_listeners_add
                - io_loop_is_running
                - i_panic
                - i_panic
        - Branch String:   'master-service.c:1691,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1696,3'
              BranchSideFuncs:
                - io_loop_is_running
                - i_panic
                - i_panic
            - BranchSide:      'master-service.c:1700,34'
              BranchSideFuncs:
                - master_service_io_listeners_add
        - Branch String:   'master-service.c:1696,3'
          Branch Sides:
            - BranchSide:      'master-service.c:1696,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1697,3'
              BranchSideFuncs:
                - io_loop_is_running
                - i_panic
        - Branch String:   'master-service.c:1697,3'
          Branch Sides:
            - BranchSide:      'master-service.c:1697,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1698,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1679,2'
          Dst:             timeout_remove
        - Src:             'master-service.c:1681,6'
          Dst:             master_service_get_login_state
        - Src:             'master-service.c:1696,3'
          Dst:             i_panic
        - Src:             'master-service.c:1697,3'
          Dst:             io_loop_is_running
        - Src:             'master-service.c:1697,3'
          Dst:             i_panic
        - Src:             'master-service.c:1700,2'
          Dst:             master_service_io_listeners_add
    - functionName:    master_service_get_login_state
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1562
      functionLinenumberEnd: 1573
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - state_r
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - e_error
        - lseek
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1566,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1567,3'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'master-service.c:1570,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1565,8'
          Dst:             lseek
        - Src:             'master-service.c:1567,3'
          Dst:             e_error
    - functionName:    master_service_io_listeners_add
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1869
      functionLinenumberEnd: 1887
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         17
      ICount:          98
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - io_add
        - master_service_listen
        - timeout_remove
      functionUses:    4
      BranchProfiles:
        - Branch String:   'master-service.c:1876,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1877,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1879,9'
              BranchSideFuncs:
                - io_add
        - Branch String:   'master-service.c:1879,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1879,2'
              BranchSideFuncs:
                - io_add
            - BranchSide:      'master-service.c:1880,40'
              BranchSideFuncs:
                - io_add
        - Branch String:   'master-service.c:1882,21'
          Branch Sides:
            - BranchSide:      'master-service.c:1882,24'
              BranchSideFuncs:
                - io_add
            - BranchSide:      'master-service.c:1886,2'
              BranchSideFuncs:
                - io_add
        - Branch String:   'master-service.c:1882,36'
          Branch Sides:
            - BranchSide:      'master-service.c:1882,40'
              BranchSideFuncs:
                - io_add
            - BranchSide:      'master-service.c:1886,2'
              BranchSideFuncs:
                - io_add
        - Branch String:   'master-service.c:1882,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1883,12'
              BranchSideFuncs:
                - io_add
            - BranchSide:      'master-service.c:1886,2'
              BranchSideFuncs:
                - io_add
      Callsites:
        - Src:             'master-service.c:1874,2'
          Dst:             timeout_remove
        - Src:             'master-service.c:1883,12'
          Dst:             io_add
        - Src:             'master-service.c:1883,12'
          Dst:             master_service_listen
    - functionName:    master_service_listen
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1832
      functionLinenumberEnd: 1866
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - l
      BBCount:         23
      ICount:          135
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - block_sigterm
        - e_error
        - i_panic
        - master_admin_client_can_accept
        - master_service_accept
        - master_service_full
        - master_service_get_socket_name
        - master_service_io_listeners_remove
        - sigprocmask
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:1840,50'
          Branch Sides:
            - BranchSide:      'master-service.c:1840,54'
              BranchSideFuncs:
                - master_service_full
                - master_service_accept
                - sigprocmask
                - e_error
                - block_sigterm
                - i_panic
                - master_service_io_listeners_remove
            - BranchSide:      'master-service.c:1852,7'
              BranchSideFuncs:
                - master_service_accept
                - sigprocmask
                - e_error
                - block_sigterm
        - Branch String:   'master-service.c:1840,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1841,27'
              BranchSideFuncs:
                - master_service_accept
                - sigprocmask
                - e_error
                - block_sigterm
            - BranchSide:      'master-service.c:1852,7'
              BranchSideFuncs:
                - master_service_accept
                - sigprocmask
                - e_error
                - block_sigterm
        - Branch String:   'master-service.c:1841,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1844,39'
              BranchSideFuncs:
                - master_service_io_listeners_remove
            - BranchSide:      'master-service.c:1848,3'
              BranchSideFuncs:
                - master_service_accept
                - sigprocmask
                - e_error
                - block_sigterm
                - i_panic
        - Branch String:   'master-service.c:1848,3'
          Branch Sides:
            - BranchSide:      'master-service.c:1848,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1849,2'
              BranchSideFuncs:
                - master_service_accept
                - sigprocmask
                - e_error
                - block_sigterm
        - Branch String:   'master-service.c:1853,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1858,21'
              BranchSideFuncs:
                - block_sigterm
                - master_service_accept
                - sigprocmask
                - e_error
            - BranchSide:      'master-service.c:1860,24'
              BranchSideFuncs:
                - master_service_accept
                - sigprocmask
                - e_error
        - Branch String:   'master-service.c:1861,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1861,6'
              BranchSideFuncs:
                - sigprocmask
                - e_error
            - BranchSide:      'master-service.c:1862,7'
              BranchSideFuncs:
                - sigprocmask
                - e_error
        - Branch String:   'master-service.c:1862,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1863,4'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'master-service.c:1865,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1837,14'
          Dst:             master_service_get_socket_name
        - Src:             'master-service.c:1838,22'
          Dst:             master_admin_client_can_accept
        - Src:             'master-service.c:1841,7'
          Dst:             master_service_full
        - Src:             'master-service.c:1844,4'
          Dst:             master_service_io_listeners_remove
        - Src:             'master-service.c:1848,3'
          Dst:             i_panic
        - Src:             'master-service.c:1858,21'
          Dst:             block_sigterm
        - Src:             'master-service.c:1860,2'
          Dst:             master_service_accept
        - Src:             'master-service.c:1862,7'
          Dst:             sigprocmask
        - Src:             'master-service.c:1863,4'
          Dst:             e_error
    - functionName:    master_service_get_socket_name
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1143
      functionLinenumberEnd: 1151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - service
        - listen_fd
      BBCount:         14
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:1146,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1146,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1148,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:1149,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1149,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1150,9'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:1150,9'
          Branch Sides:
            - BranchSide:      'master-service.c:1150,9'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1151,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1146,2'
          Dst:             i_panic
        - Src:             'master-service.c:1149,2'
          Dst:             i_panic
    - functionName:    master_service_full
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1734
      functionLinenumberEnd: 1767
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         17
      ICount:          99
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - master_service_overflow_timeout_msecs
        - timeout_add
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:1738,36'
          Branch Sides:
            - BranchSide:      'master-service.c:1739,6'
              BranchSideFuncs:
                - master_service_overflow_timeout_msecs
                - timeout_add
                - i_panic
            - BranchSide:      'master-service.c:1740,3'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:1738,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1740,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1744,6'
              BranchSideFuncs:
                - master_service_overflow_timeout_msecs
                - timeout_add
                - i_panic
        - Branch String:   'master-service.c:1744,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1748,11'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1758,7'
              BranchSideFuncs:
                - master_service_overflow_timeout_msecs
                - timeout_add
                - i_panic
        - Branch String:   'master-service.c:1758,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1760,3'
              BranchSideFuncs:
                - master_service_overflow_timeout_msecs
                - timeout_add
                - i_panic
            - BranchSide:      'master-service.c:1762,2'
              BranchSideFuncs:
                - master_service_overflow_timeout_msecs
                - timeout_add
                - i_panic
        - Branch String:   'master-service.c:1762,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1762,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1764,3'
              BranchSideFuncs:
                - master_service_overflow_timeout_msecs
                - timeout_add
      Callsites:
        - Src:             'master-service.c:1762,2'
          Dst:             i_panic
        - Src:             'master-service.c:1764,3'
          Dst:             master_service_overflow_timeout_msecs
        - Src:             'master-service.c:1764,3'
          Dst:             timeout_add
        - Src:             'master-service.c:1764,3'
          Dst:             master_service_overflow
    - functionName:    master_service_io_listeners_remove
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1890
      functionLinenumberEnd: 1897
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - io_remove
        - master_admin_client_can_accept
      functionUses:    4
      BranchProfiles:
        - Branch String:   'master-service.c:1893,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1894,39'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - io_remove
            - BranchSide:      'master-service.c:1897,1'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:1894,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1895,15'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - io_remove
            - BranchSide:      'master-service.c:1896,2'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - io_remove
      Callsites:
        - Src:             'master-service.c:1894,8'
          Dst:             master_admin_client_can_accept
        - Src:             'master-service.c:1895,4'
          Dst:             io_remove
    - functionName:    block_sigterm
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - oldmask_r
      BBCount:         13
      ICount:          55
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_error
        - sigaddset
        - sigemptyset
        - sigprocmask
      functionUses:    4
      BranchProfiles:
        - Branch String:   'master-service.c:78,6'
          Branch Sides:
            - BranchSide:      'master-service.c:79,3'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'master-service.c:80,11'
              BranchSideFuncs:
                - sigaddset
                - sigprocmask
                - i_error
                - i_error
        - Branch String:   'master-service.c:80,11'
          Branch Sides:
            - BranchSide:      'master-service.c:81,3'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'master-service.c:82,44'
              BranchSideFuncs:
                - sigprocmask
                - i_error
        - Branch String:   'master-service.c:82,11'
          Branch Sides:
            - BranchSide:      'master-service.c:83,3'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'master-service.c:85,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:78,6'
          Dst:             sigemptyset
        - Src:             'master-service.c:79,3'
          Dst:             i_error
        - Src:             'master-service.c:80,11'
          Dst:             sigaddset
        - Src:             'master-service.c:81,3'
          Dst:             i_error
        - Src:             'master-service.c:82,11'
          Dst:             sigprocmask
        - Src:             'master-service.c:83,3'
          Dst:             i_error
    - functionName:    master_service_accept
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1772
      functionLinenumberEnd: 1829
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - l
        - conn_name
        - master_admin_conn
      BBCount:         27
      ICount:          227
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - e_error
        - fstat
        - io_remove
        - master_admin_client_create
        - master_service_client_connection_callback
        - master_service_client_connection_created
        - master_service_haproxy_new
        - master_service_io_listeners_remove
        - net_accept
        - net_getsockname
        - net_set_nonblock
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:1779,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1781,20'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - e_error
                - master_service_io_listeners_remove
                - fstat
                - io_remove
                - net_getsockname
                - net_set_nonblock
                - master_service_client_connection_created
                - master_service_client_connection_callback
                - master_service_haproxy_new
                - master_admin_client_create
            - BranchSide:      'master-service.c:1808,13'
              BranchSideFuncs:
                - net_getsockname
                - net_set_nonblock
                - master_service_client_connection_created
                - master_service_client_connection_callback
                - master_service_haproxy_new
                - master_admin_client_create
        - Branch String:   'master-service.c:1783,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1784,4'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1786,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - e_error
                - master_service_io_listeners_remove
                - fstat
                - io_remove
                - net_getsockname
                - net_set_nonblock
                - master_service_client_connection_created
                - master_service_client_connection_callback
                - master_service_haproxy_new
                - master_admin_client_create
        - Branch String:   'master-service.c:1786,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1788,3'
              BranchSideFuncs:
                - io_remove
                - net_getsockname
                - net_set_nonblock
                - master_service_client_connection_created
                - master_service_client_connection_callback
                - master_service_haproxy_new
                - master_admin_client_create
            - BranchSide:      'master-service.c:1788,14'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - e_error
                - master_service_io_listeners_remove
                - fstat
                - io_remove
                - net_getsockname
                - net_set_nonblock
                - master_service_client_connection_created
                - master_service_client_connection_callback
                - master_service_haproxy_new
                - master_admin_client_create
        - Branch String:   'master-service.c:1788,30'
          Branch Sides:
            - BranchSide:      'master-service.c:1789,14'
              BranchSideFuncs:
                - fstat
                - __errno_location
                - e_error
                - master_service_io_listeners_remove
                - io_remove
                - net_getsockname
                - net_set_nonblock
                - master_service_client_connection_created
                - master_service_client_connection_callback
                - master_service_haproxy_new
                - master_admin_client_create
            - BranchSide:      'master-service.c:1792,12'
              BranchSideFuncs:
                - __errno_location
                - e_error
                - master_service_io_listeners_remove
        - Branch String:   'master-service.c:1789,31'
          Branch Sides:
            - BranchSide:      'master-service.c:1789,34'
              BranchSideFuncs:
                - __errno_location
                - e_error
                - master_service_io_listeners_remove
                - io_remove
                - net_getsockname
                - net_set_nonblock
                - master_service_client_connection_created
                - master_service_client_connection_callback
                - master_service_haproxy_new
                - master_admin_client_create
            - BranchSide:      'master-service.c:1792,12'
              BranchSideFuncs:
                - __errno_location
                - e_error
                - master_service_io_listeners_remove
        - Branch String:   'master-service.c:1788,14'
          Branch Sides:
            - BranchSide:      'master-service.c:1791,3'
              BranchSideFuncs:
                - io_remove
                - net_getsockname
                - net_set_nonblock
                - master_service_client_connection_created
                - master_service_client_connection_callback
                - master_service_haproxy_new
                - master_admin_client_create
            - BranchSide:      'master-service.c:1792,12'
              BranchSideFuncs:
                - __errno_location
                - e_error
                - master_service_io_listeners_remove
        - Branch String:   'master-service.c:1810,15'
          Branch Sides:
            - BranchSide:      'master-service.c:1810,33'
              BranchSideFuncs:
                - net_getsockname
                - net_set_nonblock
                - master_service_client_connection_created
                - master_service_client_connection_callback
                - master_service_haproxy_new
                - master_admin_client_create
            - BranchSide:      'master-service.c:1810,7'
              BranchSideFuncs:
                - net_getsockname
                - net_set_nonblock
                - master_service_client_connection_created
                - master_service_client_connection_callback
                - master_service_haproxy_new
                - master_admin_client_create
        - Branch String:   'master-service.c:1820,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1821,3'
              BranchSideFuncs:
                - master_admin_client_create
            - BranchSide:      'master-service.c:1824,43'
              BranchSideFuncs:
                - master_service_client_connection_created
                - master_service_client_connection_callback
                - master_service_haproxy_new
        - Branch String:   'master-service.c:1825,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1826,30'
              BranchSideFuncs:
                - master_service_haproxy_new
            - BranchSide:      'master-service.c:1828,45'
              BranchSideFuncs:
                - master_service_client_connection_callback
      Callsites:
        - Src:             'master-service.c:1778,12'
          Dst:             net_accept
        - Src:             'master-service.c:1781,20'
          Dst:             __errno_location
        - Src:             'master-service.c:1786,7'
          Dst:             __errno_location
        - Src:             'master-service.c:1788,14'
          Dst:             __errno_location
        - Src:             'master-service.c:1789,8'
          Dst:             fstat
        - Src:             'master-service.c:1792,4'
          Dst:             __errno_location
        - Src:             'master-service.c:1793,4'
          Dst:             e_error
        - Src:             'master-service.c:1796,4'
          Dst:             master_service_io_listeners_remove
        - Src:             'master-service.c:1805,3'
          Dst:             io_remove
        - Src:             'master-service.c:1812,8'
          Dst:             net_getsockname
        - Src:             'master-service.c:1818,2'
          Dst:             net_set_nonblock
        - Src:             'master-service.c:1821,3'
          Dst:             master_admin_client_create
        - Src:             'master-service.c:1824,2'
          Dst:             master_service_client_connection_created
        - Src:             'master-service.c:1826,3'
          Dst:             master_service_haproxy_new
        - Src:             'master-service.c:1828,3'
          Dst:             master_service_client_connection_callback
    - 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:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __errno_location
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    252
      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:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_client_connection_created
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1397
      functionLinenumberEnd: 1401
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         7
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - master_status_update
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:1398,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1398,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1398,2'
              BranchSideFuncs:
                - master_status_update
      Callsites:
        - Src:             'master-service.c:1398,2'
          Dst:             i_panic
        - Src:             'master-service.c:1400,2'
          Dst:             master_status_update
    - functionName:    master_service_client_connection_callback
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1459
      functionLinenumberEnd: 1463
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - conn
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - master_service_client_connection_handled
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:1462,2'
          Dst:             master_service_client_connection_handled
    - functionName:    master_service_client_connection_handled
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1425
      functionLinenumberEnd: 1455
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - conn
      BBCount:         24
      ICount:          117
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - close
        - e_error
        - i_panic
        - master_service_client_connection_destroyed
        - master_service_io_listeners_close
        - master_service_io_listeners_remove
        - master_service_want_listener
      functionUses:    3
      BranchProfiles:
        - Branch String:   'master-service.c:1426,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1427,13'
              BranchSideFuncs:
                - master_service_want_listener
                - master_service_io_listeners_remove
                - master_service_io_listeners_close
                - i_panic
                - master_service_client_connection_destroyed
            - BranchSide:      'master-service.c:1430,13'
              BranchSideFuncs:
                - master_service_want_listener
                - master_service_io_listeners_remove
                - master_service_io_listeners_close
                - i_panic
                - master_service_client_connection_destroyed
        - Branch String:   'master-service.c:1427,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1428,4'
              BranchSideFuncs:
                - e_error
                - master_service_client_connection_destroyed
                - master_service_want_listener
                - master_service_io_listeners_remove
                - master_service_io_listeners_close
                - i_panic
            - BranchSide:      'master-service.c:1429,46'
              BranchSideFuncs:
                - master_service_client_connection_destroyed
                - master_service_want_listener
                - master_service_io_listeners_remove
                - master_service_io_listeners_close
                - i_panic
        - Branch String:   'master-service.c:1435,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1435,6'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1436,3'
              BranchSideFuncs:
                - master_service_io_listeners_remove
                - master_service_io_listeners_close
                - i_panic
        - Branch String:   'master-service.c:1436,3'
          Branch Sides:
            - BranchSide:      'master-service.c:1436,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1437,38'
              BranchSideFuncs:
                - master_service_io_listeners_remove
                - master_service_io_listeners_close
        - Branch String:   'master-service.c:1438,40'
          Branch Sides:
            - BranchSide:      'master-service.c:1439,6'
              BranchSideFuncs:
                - master_service_io_listeners_close
            - BranchSide:      'master-service.c:1454,2'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:1438,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1452,38'
              BranchSideFuncs:
                - master_service_io_listeners_close
            - BranchSide:      'master-service.c:1454,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1427,7'
          Dst:             close
        - Src:             'master-service.c:1428,4'
          Dst:             e_error
        - Src:             'master-service.c:1429,3'
          Dst:             master_service_client_connection_destroyed
        - Src:             'master-service.c:1433,3'
          Dst:             master_service_client_connection_destroyed
        - Src:             'master-service.c:1435,7'
          Dst:             master_service_want_listener
        - Src:             'master-service.c:1436,3'
          Dst:             i_panic
        - Src:             'master-service.c:1437,3'
          Dst:             master_service_io_listeners_remove
        - Src:             'master-service.c:1452,4'
          Dst:             master_service_io_listeners_close
    - 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:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_client_connection_destroyed
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1471
      functionLinenumberEnd: 1505
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         37
      ICount:          210
      EdgeCount:       43
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - master_service_io_listeners_add
        - master_service_stop
        - master_status_update
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1475,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1475,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1476,2'
              BranchSideFuncs:
                - master_status_update
                - master_service_stop
                - master_service_stop
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'master-service.c:1476,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1476,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1478,6'
              BranchSideFuncs:
                - master_status_update
                - master_service_stop
                - master_service_stop
                - i_panic
                - i_panic
        - Branch String:   'master-service.c:1478,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1479,3'
              BranchSideFuncs:
                - master_status_update
                - master_service_stop
                - master_service_stop
                - i_panic
            - BranchSide:      'master-service.c:1482,7'
              BranchSideFuncs:
                - master_status_update
                - master_service_stop
                - master_service_stop
                - i_panic
                - i_panic
        - Branch String:   'master-service.c:1482,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1483,4'
              BranchSideFuncs:
                - master_status_update
                - master_service_stop
                - master_service_stop
                - i_panic
                - i_panic
            - BranchSide:      'master-service.c:1485,3'
              BranchSideFuncs:
                - master_status_update
                - master_service_stop
                - master_service_stop
                - i_panic
                - i_panic
        - Branch String:   'master-service.c:1485,3'
          Branch Sides:
            - BranchSide:      'master-service.c:1485,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1487,3'
              BranchSideFuncs:
                - master_status_update
                - master_service_stop
                - master_service_stop
                - i_panic
        - Branch String:   'master-service.c:1490,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1491,3'
              BranchSideFuncs:
                - master_service_stop
                - i_panic
            - BranchSide:      'master-service.c:1494,14'
              BranchSideFuncs:
                - master_status_update
                - master_service_stop
        - Branch String:   'master-service.c:1491,3'
          Branch Sides:
            - BranchSide:      'master-service.c:1491,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1493,23'
              BranchSideFuncs:
                - master_service_stop
        - Branch String:   'master-service.c:1494,47'
          Branch Sides:
            - BranchSide:      'master-service.c:1495,7'
              BranchSideFuncs:
                - master_status_update
                - master_service_stop
            - BranchSide:      'master-service.c:1496,6'
              BranchSideFuncs:
                - master_status_update
                - master_service_stop
        - Branch String:   'master-service.c:1495,35'
          Branch Sides:
            - BranchSide:      'master-service.c:1496,6'
              BranchSideFuncs:
                - master_status_update
                - master_service_stop
            - BranchSide:      'master-service.c:1503,24'
              BranchSideFuncs:
                - master_status_update
        - Branch String:   'master-service.c:1494,13'
          Branch Sides:
            - BranchSide:      'master-service.c:1501,23'
              BranchSideFuncs:
                - master_service_stop
            - BranchSide:      'master-service.c:1503,24'
              BranchSideFuncs:
                - master_status_update
      Callsites:
        - Src:             'master-service.c:1473,2'
          Dst:             master_service_io_listeners_add
        - Src:             'master-service.c:1475,2'
          Dst:             i_panic
        - Src:             'master-service.c:1476,2'
          Dst:             i_panic
        - Src:             'master-service.c:1485,3'
          Dst:             i_panic
        - Src:             'master-service.c:1491,3'
          Dst:             i_panic
        - Src:             'master-service.c:1493,3'
          Dst:             master_service_stop
        - Src:             'master-service.c:1501,3'
          Dst:             master_service_stop
        - Src:             'master-service.c:1503,3'
          Dst:             master_status_update
    - functionName:    master_service_want_listener
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1404
      functionLinenumberEnd: 1421
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:1405,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1407,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1409,6'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:1409,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1411,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1413,6'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:1413,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1417,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1420,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    master_service_io_listeners_close
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1911
      functionLinenumberEnd: 1927
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         15
      ICount:          106
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - close
        - e_error
        - master_admin_client_can_accept
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1916,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1917,7'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - close
                - e_error
            - BranchSide:      'master-service.c:1927,1'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:1917,38'
          Branch Sides:
            - BranchSide:      'master-service.c:1918,39'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - close
                - e_error
            - BranchSide:      'master-service.c:1926,2'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - close
                - e_error
        - Branch String:   'master-service.c:1917,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1919,14'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - close
                - e_error
            - BranchSide:      'master-service.c:1926,2'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - close
                - e_error
        - Branch String:   'master-service.c:1919,8'
          Branch Sides:
            - BranchSide:      'master-service.c:1920,5'
              BranchSideFuncs:
                - e_error
                - master_admin_client_can_accept
                - close
            - BranchSide:      'master-service.c:1924,4'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - close
                - e_error
      Callsites:
        - Src:             'master-service.c:1918,8'
          Dst:             master_admin_client_can_accept
        - Src:             'master-service.c:1919,8'
          Dst:             close
        - Src:             'master-service.c:1920,5'
          Dst:             e_error
    - functionName:    master_service_stop
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1213
      functionLinenumberEnd: 1215
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_loop_stop
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:1214,2'
          Dst:             io_loop_stop
    - functionName:    master_status_update
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1997
      functionLinenumberEnd: 2033
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         33
      ICount:          184
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - i_panic
        - io_remove
        - master_status_send
        - master_status_update
        - master_status_update_is_important
        - process_title_set
        - t_pop
        - t_push
        - t_strdup_printf
        - timeout_add
        - timeout_remove
        - timeout_reset
      functionUses:    6
      BranchProfiles:
        - Branch String:   'master-service.c:2000,67'
          Branch Sides:
            - BranchSide:      'master-service.c:2001,6'
              BranchSideFuncs:
                - master_status_update_is_important
                - master_status_send
                - timeout_add
                - io_remove
                - timeout_reset
                - timeout_remove
                - io_remove
                - t_push
                - t_strdup_printf
                - process_title_set
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:2009,55'
              BranchSideFuncs:
                - master_status_update_is_important
                - master_status_send
                - timeout_add
                - io_remove
                - timeout_reset
                - timeout_remove
                - io_remove
        - Branch String:   'master-service.c:2001,27'
          Branch Sides:
            - BranchSide:      'master-service.c:2001,30'
              BranchSideFuncs:
                - master_status_update_is_important
                - master_status_send
                - timeout_add
                - io_remove
                - timeout_reset
                - timeout_remove
                - io_remove
                - t_push
                - t_strdup_printf
                - process_title_set
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:2009,55'
              BranchSideFuncs:
                - master_status_update_is_important
                - master_status_send
                - timeout_add
                - io_remove
                - timeout_reset
                - timeout_remove
                - io_remove
        - Branch String:   'master-service.c:2000,6'
          Branch Sides:
            - BranchSide:      'master-service.c:2001,63'
              BranchSideFuncs:
                - t_push
                - t_strdup_printf
                - process_title_set
                - t_pop
                - master_status_update_is_important
                - master_status_send
                - timeout_add
                - io_remove
                - timeout_reset
                - timeout_remove
                - io_remove
                - i_panic
            - BranchSide:      'master-service.c:2009,55'
              BranchSideFuncs:
                - master_status_update_is_important
                - master_status_send
                - timeout_add
                - io_remove
                - timeout_reset
                - timeout_remove
                - io_remove
        - Branch String:   'master-service.c:2007,4'
          Branch Sides:
            - BranchSide:      'master-service.c:2007,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:2007,4'
              BranchSideFuncs:
                - master_status_update_is_important
                - master_status_send
                - timeout_add
                - io_remove
                - timeout_reset
                - timeout_remove
                - io_remove
        - Branch String:   'master-service.c:2010,38'
          Branch Sides:
            - BranchSide:      'master-service.c:2011,6'
              BranchSideFuncs:
                - timeout_remove
                - io_remove
            - BranchSide:      'master-service.c:2014,19'
              BranchSideFuncs:
                - timeout_remove
                - io_remove
        - Branch String:   'master-service.c:2010,6'
          Branch Sides:
            - BranchSide:      'master-service.c:2014,19'
              BranchSideFuncs:
                - timeout_remove
                - io_remove
            - BranchSide:      'master-service.c:2018,6'
              BranchSideFuncs:
                - master_status_send
                - timeout_add
                - io_remove
                - timeout_reset
        - Branch String:   'master-service.c:2018,52'
          Branch Sides:
            - BranchSide:      'master-service.c:2019,7'
              BranchSideFuncs:
                - timeout_add
                - io_remove
                - timeout_reset
                - master_status_send
            - BranchSide:      'master-service.c:2032,21'
              BranchSideFuncs:
                - master_status_send
        - Branch String:   'master-service.c:2018,6'
          Branch Sides:
            - BranchSide:      'master-service.c:2021,7'
              BranchSideFuncs:
                - master_status_send
            - BranchSide:      'master-service.c:2032,21'
              BranchSideFuncs:
                - master_status_send
        - Branch String:   'master-service.c:2021,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2022,18'
              BranchSideFuncs:
                - timeout_reset
                - io_remove
            - BranchSide:      'master-service.c:2025,5'
              BranchSideFuncs:
                - timeout_add
                - io_remove
        - Branch String:   'master-service.c:2028,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2029,15'
              BranchSideFuncs:
                - io_remove
            - BranchSide:      'master-service.c:2030,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:2001,63'
          Dst:             t_push
        - Src:             'master-service.c:2005,21'
          Dst:             t_strdup_printf
        - Src:             'master-service.c:2005,3'
          Dst:             process_title_set
        - Src:             'master-service.c:2007,4'
          Dst:             t_pop
        - Src:             'master-service.c:2007,4'
          Dst:             i_panic
        - Src:             'master-service.c:2009,21'
          Dst:             master_status_update_is_important
        - Src:             'master-service.c:2014,3'
          Dst:             timeout_remove
        - Src:             'master-service.c:2015,3'
          Dst:             io_remove
        - Src:             'master-service.c:2022,4'
          Dst:             timeout_reset
        - Src:             'master-service.c:2025,5'
          Dst:             timeout_add
        - Src:             'master-service.c:2025,5'
          Dst:             master_status_update
        - Src:             'master-service.c:2029,4'
          Dst:             io_remove
        - Src:             'master-service.c:2032,2'
          Dst:             master_status_send
    - functionName:    master_status_update_is_important
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1930
      functionLinenumberEnd: 1946
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         12
      ICount:          64
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:1931,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1933,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1935,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:1935,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1940,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1944,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:1944,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1944,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1945,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1944,2'
          Dst:             i_panic
    - functionName:    master_status_send
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1950
      functionLinenumberEnd: 1994
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - service
        - important_update
      BBCount:         26
      ICount:          161
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - e_error
        - io_add
        - io_loop_stop
        - io_remove
        - master_status_update
        - timeout_remove
        - write
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1957,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1959,14'
              BranchSideFuncs:
                - io_remove
                - io_loop_stop
            - BranchSide:      'master-service.c:1964,13'
              BranchSideFuncs:
                - __errno_location
                - io_loop_stop
                - io_add
                - __errno_location
                - io_remove
                - e_error
                - e_error
                - io_remove
        - Branch String:   'master-service.c:1964,13'
          Branch Sides:
            - BranchSide:      'master-service.c:1966,3'
              BranchSideFuncs:
                - e_error
                - io_remove
                - io_loop_stop
            - BranchSide:      'master-service.c:1970,13'
              BranchSideFuncs:
                - __errno_location
                - io_loop_stop
                - io_add
                - __errno_location
                - io_remove
                - e_error
        - Branch String:   'master-service.c:1970,13'
          Branch Sides:
            - BranchSide:      'master-service.c:1972,7'
              BranchSideFuncs:
                - __errno_location
                - io_remove
                - io_loop_stop
                - e_error
            - BranchSide:      'master-service.c:1978,13'
              BranchSideFuncs:
                - io_loop_stop
                - io_add
        - Branch String:   'master-service.c:1972,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1973,4'
              BranchSideFuncs:
                - e_error
                - io_remove
                - io_loop_stop
            - BranchSide:      'master-service.c:1976,3'
              BranchSideFuncs:
                - io_remove
                - io_loop_stop
        - Branch String:   'master-service.c:1981,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1983,5'
              BranchSideFuncs:
                - io_add
                - io_loop_stop
            - BranchSide:      'master-service.c:1986,2'
              BranchSideFuncs:
                - io_loop_stop
        - Branch String:   'master-service.c:1987,33'
          Branch Sides:
            - BranchSide:      'master-service.c:1987,33'
              BranchSideFuncs:
                - io_loop_stop
            - BranchSide:      'master-service.c:1988,6'
              BranchSideFuncs:
                - io_loop_stop
        - Branch String:   'master-service.c:1987,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1987,6'
              BranchSideFuncs:
                - io_loop_stop
            - BranchSide:      'master-service.c:1992,16'
              BranchSideFuncs:
                - io_loop_stop
      Callsites:
        - Src:             'master-service.c:1953,2'
          Dst:             timeout_remove
        - Src:             'master-service.c:1955,8'
          Dst:             write
        - Src:             'master-service.c:1959,3'
          Dst:             io_remove
        - Src:             'master-service.c:1966,3'
          Dst:             e_error
        - Src:             'master-service.c:1969,3'
          Dst:             io_remove
        - Src:             'master-service.c:1970,13'
          Dst:             __errno_location
        - Src:             'master-service.c:1972,7'
          Dst:             __errno_location
        - Src:             'master-service.c:1973,4'
          Dst:             e_error
        - Src:             'master-service.c:1977,3'
          Dst:             io_remove
        - Src:             'master-service.c:1983,5'
          Dst:             io_add
        - Src:             'master-service.c:1983,5'
          Dst:             master_status_update
        - Src:             'master-service.c:1992,3'
          Dst:             io_loop_stop
    - 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:    7
      BranchProfiles:  []
      Callsites:       []
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sigaddset
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_overflow_timeout_msecs
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1712
      functionLinenumberEnd: 1730
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - created
      BBCount:         13
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - i_rand_limit
        - timeval_diff_msecs
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:1721,18'
          Branch Sides:
            - BranchSide:      'master-service.c:1721,16'
              BranchSideFuncs:
                - i_rand_limit
                - i_panic
            - BranchSide:      'master-service.c:1721,16'
              BranchSideFuncs:
                - i_rand_limit
                - i_panic
        - Branch String:   'master-service.c:1722,18'
          Branch Sides:
            - BranchSide:      'master-service.c:1722,16'
              BranchSideFuncs:
                - i_rand_limit
                - i_panic
            - BranchSide:      'master-service.c:1722,16'
              BranchSideFuncs:
                - i_rand_limit
                - i_panic
        - Branch String:   'master-service.c:1725,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1725,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1725,2'
              BranchSideFuncs:
                - i_rand_limit
      Callsites:
        - Src:             'master-service.c:1718,28'
          Dst:             timeval_diff_msecs
        - Src:             'master-service.c:1725,2'
          Dst:             i_panic
        - Src:             'master-service.c:1730,17'
          Dst:             i_rand_limit
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 158
      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:157,2'
          Dst:             buffer_free
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:273,2'
          Dst:             i_panic
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 336
      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:334,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    master_service_error
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 909
      functionLinenumberEnd: 927
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - master_admin_clients_deinit
        - master_service_stop
        - master_service_stop_new_connections
        - timeout_add
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:916,37'
          Branch Sides:
            - BranchSide:      'master-service.c:916,40'
              BranchSideFuncs:
                - timeout_add
                - master_service_stop
            - BranchSide:      'master-service.c:917,7'
              BranchSideFuncs:
                - timeout_add
                - master_service_stop
        - Branch String:   'master-service.c:915,6'
          Branch Sides:
            - BranchSide:      'master-service.c:915,6'
              BranchSideFuncs:
                - timeout_add
                - master_service_stop
            - BranchSide:      'master-service.c:917,7'
              BranchSideFuncs:
                - timeout_add
                - master_service_stop
        - Branch String:   'master-service.c:917,7'
          Branch Sides:
            - BranchSide:      'master-service.c:918,24'
              BranchSideFuncs:
                - master_service_stop
            - BranchSide:      'master-service.c:921,5'
              BranchSideFuncs:
                - timeout_add
      Callsites:
        - Src:             'master-service.c:912,2'
          Dst:             master_admin_clients_deinit
        - Src:             'master-service.c:914,2'
          Dst:             master_service_stop_new_connections
        - Src:             'master-service.c:918,4'
          Dst:             master_service_stop
        - Src:             'master-service.c:921,5'
          Dst:             timeout_add
        - Src:             'master-service.c:921,5'
          Dst:             master_service_stop
    - functionName:    master_service_stop_new_connections
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1218
      functionLinenumberEnd: 1246
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         11
      ICount:          95
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - master_service_io_listeners_close
        - master_service_io_listeners_remove
        - master_service_stop
        - master_status_update
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1221,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1222,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1224,2'
              BranchSideFuncs:
                - master_service_io_listeners_remove
                - master_service_io_listeners_close
                - master_status_update
                - master_service_stop
        - Branch String:   'master-service.c:1234,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1235,23'
              BranchSideFuncs:
                - master_service_stop
            - BranchSide:      'master-service.c:1239,3'
              BranchSideFuncs:
                - master_status_update
        - Branch String:   'master-service.c:1242,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1242,6'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1243,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1225,2'
          Dst:             master_service_io_listeners_remove
        - Src:             'master-service.c:1226,2'
          Dst:             master_service_io_listeners_close
        - Src:             'master-service.c:1235,3'
          Dst:             master_service_stop
        - Src:             'master-service.c:1240,3'
          Dst:             master_status_update
    - functionName:    master_service_set_login_state
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1533
      functionLinenumberEnd: 1558
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - service
        - state
      BBCount:         9
      ICount:          71
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - e_error
        - master_service_io_listeners_add
        - master_service_refresh_login_state
        - timeout_add
        - timeout_remove
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:1536,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1538,3'
              BranchSideFuncs:
                - timeout_add
            - BranchSide:      'master-service.c:1553,3'
              BranchSideFuncs:
                - master_service_io_listeners_add
            - BranchSide:      'master-service.c:1557,2'
              BranchSideFuncs:
                - e_error
        - Branch String:   'master-service.c:1539,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1540,4'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1547,4'
              BranchSideFuncs:
                - timeout_add
      Callsites:
        - Src:             'master-service.c:1534,2'
          Dst:             timeout_remove
        - Src:             'master-service.c:1547,4'
          Dst:             timeout_add
        - Src:             'master-service.c:1547,4'
          Dst:             master_service_refresh_login_state
        - Src:             'master-service.c:1554,3'
          Dst:             master_service_io_listeners_add
        - Src:             'master-service.c:1557,2'
          Dst:             e_error
    - functionName:    master_service_refresh_login_state
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1576
      functionLinenumberEnd: 1581
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - master_service_get_login_state
        - master_service_set_login_state
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1579,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1579,6'
              BranchSideFuncs:
                - master_service_set_login_state
            - BranchSide:      'master-service.c:1580,34'
              BranchSideFuncs:
                - master_service_set_login_state
      Callsites:
        - Src:             'master-service.c:1579,6'
          Dst:             master_service_get_login_state
        - Src:             'master-service.c:1580,3'
          Dst:             master_service_set_login_state
    - functionName:    sig_term_buf_get_kick_user
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - buf
        - user_r
      BBCount:         18
      ICount:          111
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - strncmp
        - strpbrk
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:145,6'
          Branch Sides:
            - BranchSide:      'master-service.c:146,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:147,6'
              BranchSideFuncs:
                - strncmp
                - strpbrk
        - Branch String:   'master-service.c:149,21'
          Branch Sides:
            - BranchSide:      'master-service.c:149,25'
              BranchSideFuncs:
                - strncmp
                - strpbrk
            - BranchSide:      'master-service.c:149,2'
              BranchSideFuncs:
                - strncmp
                - strpbrk
        - Branch String:   'master-service.c:149,2'
          Branch Sides:
            - BranchSide:      'master-service.c:149,40'
              BranchSideFuncs:
                - strncmp
                - strpbrk
            - BranchSide:      'master-service.c:150,7'
              BranchSideFuncs:
                - strncmp
                - strpbrk
        - Branch String:   'master-service.c:150,6'
          Branch Sides:
            - BranchSide:      'master-service.c:151,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:152,5'
              BranchSideFuncs:
                - strncmp
                - strpbrk
        - Branch String:   'master-service.c:154,6'
          Branch Sides:
            - BranchSide:      'master-service.c:155,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:156,6'
              BranchSideFuncs:
                - strpbrk
        - Branch String:   'master-service.c:161,6'
          Branch Sides:
            - BranchSide:      'master-service.c:162,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:163,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:145,6'
          Dst:             strncmp
        - Src:             'master-service.c:154,6'
          Dst:             strncmp
        - Src:             'master-service.c:160,12'
          Dst:             strpbrk
    - 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:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sig_service_kick_user_match
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - user
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:174,6'
          Branch Sides:
            - BranchSide:      'master-service.c:175,17'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'master-service.c:180,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:175,10'
          Dst:             strcmp
    - functionName:    sig_term_try_kick_user
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - service
        - fd_listen
      BBCount:         28
      ICount:          160
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - accept
        - alarm
        - close
        - lib_signals_syscall_error
        - read
        - sig_service_kick_user_match
        - sig_term_buf_get_kick_user
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:192,45'
          Branch Sides:
            - BranchSide:      'master-service.c:193,6'
              BranchSideFuncs:
                - accept
                - alarm
                - read
                - alarm
                - __errno_location
                - close
                - lib_signals_syscall_error
                - lib_signals_syscall_error
                - sig_term_buf_get_kick_user
                - sig_service_kick_user_match
                - __errno_location
                - __errno_location
                - lib_signals_syscall_error
                - sig_service_kick_user_match
            - BranchSide:      'master-service.c:201,14'
              BranchSideFuncs:
                - accept
                - alarm
                - read
                - alarm
                - __errno_location
                - close
                - lib_signals_syscall_error
                - lib_signals_syscall_error
                - sig_term_buf_get_kick_user
                - sig_service_kick_user_match
                - __errno_location
                - __errno_location
                - lib_signals_syscall_error
        - Branch String:   'master-service.c:192,6'
          Branch Sides:
            - BranchSide:      'master-service.c:196,3'
              BranchSideFuncs:
                - sig_service_kick_user_match
            - BranchSide:      'master-service.c:201,14'
              BranchSideFuncs:
                - accept
                - alarm
                - read
                - alarm
                - __errno_location
                - close
                - lib_signals_syscall_error
                - lib_signals_syscall_error
                - sig_term_buf_get_kick_user
                - sig_service_kick_user_match
                - __errno_location
                - __errno_location
                - lib_signals_syscall_error
        - Branch String:   'master-service.c:202,6'
          Branch Sides:
            - BranchSide:      'master-service.c:203,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - lib_signals_syscall_error
            - BranchSide:      'master-service.c:208,2'
              BranchSideFuncs:
                - alarm
                - read
                - alarm
                - __errno_location
                - close
                - lib_signals_syscall_error
                - lib_signals_syscall_error
                - sig_term_buf_get_kick_user
                - sig_service_kick_user_match
        - Branch String:   'master-service.c:203,23'
          Branch Sides:
            - BranchSide:      'master-service.c:203,26'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:204,4'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:203,7'
          Branch Sides:
            - BranchSide:      'master-service.c:204,4'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:205,3'
              BranchSideFuncs:
                - lib_signals_syscall_error
        - Branch String:   'master-service.c:211,6'
          Branch Sides:
            - BranchSide:      'master-service.c:213,7'
              BranchSideFuncs:
                - sig_term_buf_get_kick_user
                - close
                - lib_signals_syscall_error
                - sig_service_kick_user_match
            - BranchSide:      'master-service.c:222,13'
              BranchSideFuncs:
                - __errno_location
                - close
                - lib_signals_syscall_error
                - lib_signals_syscall_error
        - Branch String:   'master-service.c:214,7'
          Branch Sides:
            - BranchSide:      'master-service.c:219,3'
              BranchSideFuncs:
                - sig_service_kick_user_match
                - close
                - lib_signals_syscall_error
            - BranchSide:      'master-service.c:220,38'
              BranchSideFuncs:
                - sig_service_kick_user_match
                - close
                - lib_signals_syscall_error
        - Branch String:   'master-service.c:225,6'
          Branch Sides:
            - BranchSide:      'master-service.c:226,3'
              BranchSideFuncs:
                - lib_signals_syscall_error
            - BranchSide:      'master-service.c:227,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:197,10'
          Dst:             sig_service_kick_user_match
        - Src:             'master-service.c:201,7'
          Dst:             accept
        - Src:             'master-service.c:203,7'
          Dst:             __errno_location
        - Src:             'master-service.c:203,26'
          Dst:             __errno_location
        - Src:             'master-service.c:205,3'
          Dst:             lib_signals_syscall_error
        - Src:             'master-service.c:208,2'
          Dst:             alarm
        - Src:             'master-service.c:209,10'
          Dst:             read
        - Src:             'master-service.c:210,2'
          Dst:             alarm
        - Src:             'master-service.c:214,8'
          Dst:             sig_term_buf_get_kick_user
        - Src:             'master-service.c:220,10'
          Dst:             sig_service_kick_user_match
        - Src:             'master-service.c:222,13'
          Dst:             __errno_location
        - Src:             'master-service.c:223,3'
          Dst:             lib_signals_syscall_error
        - Src:             'master-service.c:225,6'
          Dst:             close
        - Src:             'master-service.c:226,3'
          Dst:             lib_signals_syscall_error
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    alarm
      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:    7
      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:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sig_term_try_kick
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         15
      ICount:          91
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - master_admin_client_can_accept
        - sig_term_try_kick_user
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:237,2'
          Branch Sides:
            - BranchSide:      'master-service.c:238,40'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - sig_term_try_kick_user
            - BranchSide:      'master-service.c:255,2'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:240,7'
          Branch Sides:
            - BranchSide:      'master-service.c:241,33'
              BranchSideFuncs:
                - sig_term_try_kick_user
                - master_admin_client_can_accept
            - BranchSide:      'master-service.c:253,2'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - sig_term_try_kick_user
        - Branch String:   'master-service.c:242,8'
          Branch Sides:
            - BranchSide:      'master-service.c:244,5'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:247,8'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - sig_term_try_kick_user
        - Branch String:   'master-service.c:247,8'
          Branch Sides:
            - BranchSide:      'master-service.c:249,5'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:252,3'
              BranchSideFuncs:
                - master_admin_client_can_accept
                - sig_term_try_kick_user
      Callsites:
        - Src:             'master-service.c:240,7'
          Dst:             master_admin_client_can_accept
        - Src:             'master-service.c:241,10'
          Dst:             sig_term_try_kick_user
    - functionName:    log_killed_signal
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - si
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dec2str
        - e_warning
        - lib_signal_code_to_str
        - master_service_is_user_kicked
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:92,36'
          Branch Sides:
            - BranchSide:      'master-service.c:93,36'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:94,3'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:92,6'
          Branch Sides:
            - BranchSide:      'master-service.c:94,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:96,2'
              BranchSideFuncs:
                - dec2str
                - dec2str
                - lib_signal_code_to_str
                - e_warning
      Callsites:
        - Src:             'master-service.c:93,6'
          Dst:             master_service_is_user_kicked
        - Src:             'master-service.c:96,2'
          Dst:             dec2str
        - Src:             'master-service.c:96,2'
          Dst:             dec2str
        - Src:             'master-service.c:96,2'
          Dst:             lib_signal_code_to_str
        - Src:             'master-service.c:96,2'
          Dst:             e_warning
    - functionName:    master_service_is_user_kicked
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1296
      functionLinenumberEnd: 1297
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sig_die_delayed
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - si
      BBCount:         9
      ICount:          78
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - clock_gettime
        - lib_signal_delayed
        - lib_signals_syscall_error
        - time
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:262,6'
          Branch Sides:
            - BranchSide:      'master-service.c:262,6'
              BranchSideFuncs:
                - clock_gettime
                - lib_signal_delayed
                - lib_signals_syscall_error
                - time
            - BranchSide:      'master-service.c:264,7'
              BranchSideFuncs:
                - clock_gettime
                - lib_signal_delayed
                - lib_signals_syscall_error
                - time
        - Branch String:   'master-service.c:264,7'
          Branch Sides:
            - BranchSide:      'master-service.c:265,4'
              BranchSideFuncs:
                - lib_signals_syscall_error
                - time
                - lib_signal_delayed
            - BranchSide:      'master-service.c:269,37'
              BranchSideFuncs:
                - lib_signal_delayed
      Callsites:
        - Src:             'master-service.c:264,7'
          Dst:             clock_gettime
        - Src:             'master-service.c:265,4'
          Dst:             lib_signals_syscall_error
        - Src:             'master-service.c:266,34'
          Dst:             time
        - Src:             'master-service.c:276,2'
          Dst:             lib_signal_delayed
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    time
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      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:    master_service_set_killed_callback
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 2171
      functionLinenumberEnd: 2174
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - callback
        - context
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_set_last_kick_signal_user
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 2152
      functionLinenumberEnd: 2165
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - user
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - block_sigterm
        - e_error
        - i_strdup
        - p_free_internal
        - sigprocmask
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:2161,22'
          Branch Sides:
            - BranchSide:      'master-service.c:2161,25'
              BranchSideFuncs:
                - sigprocmask
                - e_error
            - BranchSide:      'master-service.c:2161,22'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:2161,6'
          Branch Sides:
            - BranchSide:      'master-service.c:2161,6'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'master-service.c:2162,3'
              BranchSideFuncs:
                - e_error
      Callsites:
        - Src:             'master-service.c:2155,25'
          Dst:             block_sigterm
        - Src:             'master-service.c:2157,2'
          Dst:             p_free_internal
        - Src:             'master-service.c:2158,35'
          Dst:             i_strdup
        - Src:             'master-service.c:2161,25'
          Dst:             sigprocmask
        - Src:             'master-service.c:2162,3'
          Dst:             e_error
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:    15
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:139,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    master_service_set_current_user
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 2135
      functionLinenumberEnd: 2148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - user
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - block_sigterm
        - e_error
        - i_strdup
        - p_free_internal
        - sigprocmask
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:2144,22'
          Branch Sides:
            - BranchSide:      'master-service.c:2144,25'
              BranchSideFuncs:
                - sigprocmask
                - e_error
            - BranchSide:      'master-service.c:2144,22'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:2144,6'
          Branch Sides:
            - BranchSide:      'master-service.c:2144,6'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'master-service.c:2145,3'
              BranchSideFuncs:
                - e_error
      Callsites:
        - Src:             'master-service.c:2138,25'
          Dst:             block_sigterm
        - Src:             'master-service.c:2141,26'
          Dst:             i_strdup
        - Src:             'master-service.c:2142,2'
          Dst:             p_free_internal
        - Src:             'master-service.c:2144,25'
          Dst:             sigprocmask
        - Src:             'master-service.c:2145,3'
          Dst:             e_error
    - functionName:    master_service_unset_process_shutdown_filter
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 2129
      functionLinenumberEnd: 2131
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_unref
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:2130,2'
          Dst:             event_filter_unref
    - functionName:    master_service_set_process_shutdown_filter
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 2122
      functionLinenumberEnd: 2126
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - filter
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_ref
        - master_service_unset_process_shutdown_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:2123,2'
          Dst:             master_service_unset_process_shutdown_filter
        - Src:             'master-service.c:2125,2'
          Dst:             event_filter_ref
    - functionName:    version_is_valid
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 2106
      functionLinenumberEnd: 2118
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - version
      BBCount:         21
      ICount:          121
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:2109,2'
          Branch Sides:
            - BranchSide:      'master-service.c:2110,7'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2117,9'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:2110,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2111,8'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2114,14'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:2111,15'
          Branch Sides:
            - BranchSide:      'master-service.c:2111,18'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2113,5'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:2111,38'
          Branch Sides:
            - BranchSide:      'master-service.c:2112,8'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2113,5'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:2111,8'
          Branch Sides:
            - BranchSide:      'master-service.c:2113,5'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2114,3'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:2114,31'
          Branch Sides:
            - BranchSide:      'master-service.c:2114,34'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2115,4'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:2114,14'
          Branch Sides:
            - BranchSide:      'master-service.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2115,4'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    version_cmp
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 2075
      functionLinenumberEnd: 2103
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - version1
        - version2
      BBCount:         37
      ICount:          189
      EdgeCount:       45
      CyclomaticComplexity: 10
      functionsReached:
        - i_panic
        - i_unreached
        - str_parse_uint
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:2079,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2080,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'master-service.c:2081,22'
              BranchSideFuncs:
                - str_parse_uint
                - str_parse_uint
                - i_unreached
                - i_panic
                - i_panic
                - i_unreached
        - Branch String:   'master-service.c:2081,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2082,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'master-service.c:2083,8'
              BranchSideFuncs:
                - str_parse_uint
                - str_parse_uint
                - i_unreached
                - i_unreached
                - i_panic
                - i_panic
        - Branch String:   'master-service.c:2083,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2084,12'
              BranchSideFuncs:
                - str_parse_uint
                - str_parse_uint
                - i_panic
                - i_unreached
                - i_unreached
                - i_panic
            - BranchSide:      'master-service.c:2086,4'
              BranchSideFuncs:
                - str_parse_uint
                - str_parse_uint
                - i_unreached
                - i_unreached
                - i_panic
                - i_panic
        - Branch String:   'master-service.c:2086,4'
          Branch Sides:
            - BranchSide:      'master-service.c:0,0'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:2086,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:2087,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2088,12'
              BranchSideFuncs:
                - str_parse_uint
                - str_parse_uint
                - i_panic
                - i_panic
                - i_unreached
                - i_unreached
            - BranchSide:      'master-service.c:2090,4'
              BranchSideFuncs:
                - str_parse_uint
                - str_parse_uint
                - i_panic
                - i_unreached
                - i_unreached
                - i_panic
        - Branch String:   'master-service.c:2090,4'
          Branch Sides:
            - BranchSide:      'master-service.c:0,0'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:2090,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:2092,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2093,4'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2094,7'
              BranchSideFuncs:
                - str_parse_uint
                - str_parse_uint
                - i_panic
                - i_panic
                - i_unreached
                - i_unreached
        - Branch String:   'master-service.c:2094,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2095,4'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2096,2'
              BranchSideFuncs:
                - str_parse_uint
                - str_parse_uint
                - i_panic
                - i_panic
                - i_unreached
                - i_unreached
        - Branch String:   'master-service.c:2096,29'
          Branch Sides:
            - BranchSide:      'master-service.c:2096,33'
              BranchSideFuncs:
                - str_parse_uint
                - str_parse_uint
                - i_panic
                - i_panic
                - i_unreached
                - i_unreached
            - BranchSide:      'master-service.c:2096,2'
              BranchSideFuncs:
                - str_parse_uint
                - str_parse_uint
                - i_panic
                - i_panic
                - i_unreached
                - i_unreached
        - Branch String:   'master-service.c:2096,2'
          Branch Sides:
            - BranchSide:      'master-service.c:2079,22'
              BranchSideFuncs:
                - str_parse_uint
                - str_parse_uint
                - i_panic
                - i_panic
                - i_unreached
                - i_unreached
            - BranchSide:      'master-service.c:2098,7'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:2098,6'
          Branch Sides:
            - BranchSide:      'master-service.c:2099,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2100,7'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:2100,6'
          Branch Sides:
            - BranchSide:      'master-service.c:2101,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2102,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:2079,7'
          Dst:             str_parse_uint
        - Src:             'master-service.c:2080,4'
          Dst:             i_unreached
        - Src:             'master-service.c:2081,7'
          Dst:             str_parse_uint
        - Src:             'master-service.c:2082,4'
          Dst:             i_unreached
        - Src:             'master-service.c:2086,4'
          Dst:             i_panic
        - Src:             'master-service.c:2090,4'
          Dst:             i_panic
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 114
      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:    version_string_verify_full
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 2047
      functionLinenumberEnd: 2072
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - line
        - service_name
        - major_version
        - minor_version_r
      BBCount:         33
      ICount:          167
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - i_panic
        - str_begins
        - str_begins_builtin_success
        - str_to_uint
        - str_uint_equals
        - strchr
        - strlen
        - strncmp
        - t_pop
        - t_push
        - t_strdup_until
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:2051,6'
          Branch Sides:
            - BranchSide:      'master-service.c:2051,7'
              BranchSideFuncs:
                - strncmp
                - str_begins_builtin_success.2707
                - strncmp
                - t_push
                - strchr
                - t_strdup_until
                - str_uint_equals
                - str_to_uint
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:2051,7'
              BranchSideFuncs:
                - str_begins
                - strncmp
                - t_push
                - strchr
                - t_strdup_until
                - str_uint_equals
                - str_to_uint
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:2051,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2052,3'
              BranchSideFuncs:
                - strncmp
                - t_push
                - strchr
                - t_strdup_until
                - str_uint_equals
                - str_to_uint
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:2054,14'
              BranchSideFuncs:
                - strncmp
                - t_push
                - strchr
                - t_strdup_until
                - str_uint_equals
                - str_to_uint
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:2051,6'
          Branch Sides:
            - BranchSide:      'master-service.c:2051,7'
              BranchSideFuncs:
                - strncmp
                - t_push
                - strchr
                - t_strdup_until
                - str_uint_equals
                - str_to_uint
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:2051,7'
              BranchSideFuncs:
                - str_begins_builtin_success.2707
                - strncmp
                - t_push
                - strchr
                - t_strdup_until
                - str_uint_equals
                - str_to_uint
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:2051,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2052,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2054,14'
              BranchSideFuncs:
                - strncmp
                - t_push
                - strchr
                - t_strdup_until
                - str_uint_equals
                - str_to_uint
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:2051,6'
          Branch Sides:
            - BranchSide:      'master-service.c:2052,3'
              BranchSideFuncs:
                - strncmp
                - t_push
                - strchr
                - t_strdup_until
                - str_uint_equals
                - str_to_uint
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:2054,14'
              BranchSideFuncs:
                - strncmp
                - t_push
                - strchr
                - t_strdup_until
                - str_uint_equals
                - str_to_uint
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:2054,57'
          Branch Sides:
            - BranchSide:      'master-service.c:2055,6'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2056,3'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:2054,6'
          Branch Sides:
            - BranchSide:      'master-service.c:2056,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:2057,10'
              BranchSideFuncs:
                - t_push
                - strchr
                - t_strdup_until
                - str_uint_equals
                - str_to_uint
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:2062,7'
          Branch Sides:
            - BranchSide:      'master-service.c:2063,8'
              BranchSideFuncs:
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:2065,41'
              BranchSideFuncs:
                - t_strdup_until
                - str_uint_equals
                - str_to_uint
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:2070,4'
          Branch Sides:
            - BranchSide:      'master-service.c:2070,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:2070,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:2048,28'
          Dst:             strlen
        - Src:             'master-service.c:2051,7'
          Dst:             str_begins
        - Src:             'master-service.c:2051,7'
          Dst:             strncmp
        - Src:             'master-service.c:2051,7'
          Dst:             str_begins_builtin_success
        - Src:             'master-service.c:2054,6'
          Dst:             strncmp
        - Src:             'master-service.c:2059,2'
          Dst:             t_push
        - Src:             'master-service.c:2060,19'
          Dst:             strchr
        - Src:             'master-service.c:2065,26'
          Dst:             t_strdup_until
        - Src:             'master-service.c:2065,10'
          Dst:             str_uint_equals
        - Src:             'master-service.c:2067,8'
          Dst:             str_to_uint
        - Src:             'master-service.c:2070,4'
          Dst:             t_pop
        - Src:             'master-service.c:2070,4'
          Dst:             i_panic
    - functionName:    version_string_verify
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 2037
      functionLinenumberEnd: 2041
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - line
        - service_name
        - major_version
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - version_string_verify_full
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:2040,9'
          Dst:             version_string_verify_full
    - functionName:    master_service_ssl_io_listeners_remove
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1900
      functionLinenumberEnd: 1908
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - io_remove
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1903,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1904,7'
              BranchSideFuncs:
                - io_remove
            - BranchSide:      'master-service.c:1908,1'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:1904,40'
          Branch Sides:
            - BranchSide:      'master-service.c:1905,7'
              BranchSideFuncs:
                - io_remove
            - BranchSide:      'master-service.c:1907,2'
              BranchSideFuncs:
                - io_remove
        - Branch String:   'master-service.c:1904,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1906,15'
              BranchSideFuncs:
                - io_remove
            - BranchSide:      'master-service.c:1907,2'
              BranchSideFuncs:
                - io_remove
      Callsites:
        - Src:             'master-service.c:1906,4'
          Dst:             io_remove
    - functionName:    master_service_deinit_forked
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1665
      functionLinenumberEnd: 1672
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _service
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_loop_destroy
        - master_service_deinit_real
        - master_service_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:1668,2'
          Dst:             master_service_deinit_real
        - Src:             'master-service.c:1669,2'
          Dst:             io_loop_destroy
        - Src:             'master-service.c:1671,2'
          Dst:             master_service_free
    - functionName:    master_service_deinit_real
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1584
      functionLinenumberEnd: 1618
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         35
      ICount:          207
      EdgeCount:       44
      CyclomaticComplexity: 11
      functionsReached:
        - array_free_i
        - array_is_created_i
        - event_unregister_callback
        - i_panic
        - io_remove
        - log_killed_signal
        - master_admin_clients_deinit
        - master_service_event_callback
        - master_service_haproxy_abort
        - master_service_is_killed
        - master_service_ssl_ctx_deinit
        - master_service_unset_process_shutdown_filter
        - p_free_internal
        - pool_unref
        - stats_client_deinit
        - t_pop
        - timeout_remove
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1585,40'
          Branch Sides:
            - BranchSide:      'master-service.c:1586,7'
              BranchSideFuncs:
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
                - t_pop
                - i_panic
                - log_killed_signal
            - BranchSide:      'master-service.c:1590,7'
              BranchSideFuncs:
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:1586,40'
          Branch Sides:
            - BranchSide:      'master-service.c:1587,8'
              BranchSideFuncs:
                - log_killed_signal
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:1588,21'
              BranchSideFuncs:
                - log_killed_signal
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:1585,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1588,21'
              BranchSideFuncs:
                - log_killed_signal
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:1590,7'
              BranchSideFuncs:
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:1590,30'
          Branch Sides:
            - BranchSide:      'master-service.c:1591,7'
              BranchSideFuncs:
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
            - BranchSide:      'master-service.c:1595,2'
              BranchSideFuncs:
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
        - Branch String:   'master-service.c:1590,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1592,15'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
            - BranchSide:      'master-service.c:1595,2'
              BranchSideFuncs:
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
        - Branch String:   'master-service.c:1592,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1593,4'
              BranchSideFuncs:
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
            - BranchSide:      'master-service.c:1594,2'
              BranchSideFuncs:
                - master_admin_clients_deinit
                - master_service_haproxy_abort
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
                - io_remove
        - Branch String:   'master-service.c:1598,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1599,14'
              BranchSideFuncs:
                - io_remove
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
            - BranchSide:      'master-service.c:1600,32'
              BranchSideFuncs:
                - master_service_ssl_ctx_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
                - stats_client_deinit
        - Branch String:   'master-service.c:1602,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1603,24'
              BranchSideFuncs:
                - stats_client_deinit
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
            - BranchSide:      'master-service.c:1604,18'
              BranchSideFuncs:
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - timeout_remove
                - io_remove
                - io_remove
                - array_is_created_i.2710
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
                - array_free_i
        - Branch String:   'master-service.c:1610,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1611,3'
              BranchSideFuncs:
                - array_free_i
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
            - BranchSide:      'master-service.c:1613,2'
              BranchSideFuncs:
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
                - pool_unref.2699
        - Branch String:   'master-service.c:1613,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1613,2'
              BranchSideFuncs:
                - pool_unref.2699
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
            - BranchSide:      'master-service.c:1614,2'
              BranchSideFuncs:
                - p_free_internal.2704
                - event_unregister_callback
                - master_service_unset_process_shutdown_filter
      Callsites:
        - Src:             'master-service.c:1585,6'
          Dst:             master_service_is_killed
        - Src:             'master-service.c:1588,3'
          Dst:             log_killed_signal
        - Src:             'master-service.c:1592,8'
          Dst:             t_pop
        - Src:             'master-service.c:1593,4'
          Dst:             i_panic
        - Src:             'master-service.c:1595,2'
          Dst:             master_admin_clients_deinit
        - Src:             'master-service.c:1596,2'
          Dst:             master_service_haproxy_abort
        - Src:             'master-service.c:1599,3'
          Dst:             io_remove
        - Src:             'master-service.c:1600,2'
          Dst:             master_service_ssl_ctx_deinit
        - Src:             'master-service.c:1603,3'
          Dst:             stats_client_deinit
        - Src:             'master-service.c:1604,2'
          Dst:             timeout_remove
        - Src:             'master-service.c:1605,2'
          Dst:             timeout_remove
        - Src:             'master-service.c:1606,2'
          Dst:             timeout_remove
        - Src:             'master-service.c:1607,2'
          Dst:             timeout_remove
        - Src:             'master-service.c:1608,2'
          Dst:             io_remove
        - Src:             'master-service.c:1609,2'
          Dst:             io_remove
        - Src:             'master-service.c:1610,6'
          Dst:             array_is_created_i
        - Src:             'master-service.c:1611,3'
          Dst:             array_free_i
        - Src:             'master-service.c:1613,2'
          Dst:             pool_unref
        - Src:             'master-service.c:1614,2'
          Dst:             p_free_internal
        - Src:             'master-service.c:1616,2'
          Dst:             event_unregister_callback
        - Src:             'master-service.c:1616,2'
          Dst:             master_service_event_callback
        - Src:             'master-service.c:1617,2'
          Dst:             master_service_unset_process_shutdown_filter
    - functionName:    master_service_free
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1621
      functionLinenumberEnd: 1647
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _service
      BBCount:         27
      ICount:          165
      EdgeCount:       28
      CyclomaticComplexity: 3
      functionsReached:
        - event_unref
        - p_free_internal
        - settings_root_deinit
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1634,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1635,3'
              BranchSideFuncs:
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - event_unref
                - p_free_internal.2704
            - BranchSide:      'master-service.c:1638,2'
              BranchSideFuncs:
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - p_free_internal.2704
                - event_unref
                - p_free_internal.2704
      Callsites:
        - Src:             'master-service.c:1632,2'
          Dst:             settings_root_deinit
        - Src:             'master-service.c:1635,3'
          Dst:             p_free_internal
        - Src:             'master-service.c:1636,3'
          Dst:             p_free_internal
        - Src:             'master-service.c:1638,2'
          Dst:             p_free_internal
        - Src:             'master-service.c:1639,2'
          Dst:             p_free_internal
        - Src:             'master-service.c:1640,2'
          Dst:             p_free_internal
        - Src:             'master-service.c:1641,2'
          Dst:             p_free_internal
        - Src:             'master-service.c:1642,2'
          Dst:             p_free_internal
        - Src:             'master-service.c:1643,2'
          Dst:             p_free_internal
        - Src:             'master-service.c:1644,2'
          Dst:             p_free_internal
        - Src:             'master-service.c:1645,2'
          Dst:             event_unref
        - Src:             'master-service.c:1646,2'
          Dst:             p_free_internal
    - functionName:    master_service_is_killed
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1270
      functionLinenumberEnd: 1271
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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:    master_service_event_callback
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - type
        - ctx
        - fmt
        - args
      BBCount:         18
      ICount:          94
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - event_add_category
        - event_filter_match
        - event_set_ptr
        - master_service_stop_new_connections
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:354,41'
          Branch Sides:
            - BranchSide:      'master-service.c:354,44'
              BranchSideFuncs:
                - event_filter_match
                - master_service_stop_new_connections
                - event_add_category
                - event_set_ptr
            - BranchSide:      'master-service.c:367,6'
              BranchSideFuncs:
                - event_filter_match
                - master_service_stop_new_connections
        - Branch String:   'master-service.c:354,6'
          Branch Sides:
            - BranchSide:      'master-service.c:358,22'
              BranchSideFuncs:
                - event_add_category
                - event_filter_match
                - master_service_stop_new_connections
                - event_set_ptr
            - BranchSide:      'master-service.c:367,6'
              BranchSideFuncs:
                - event_filter_match
                - master_service_stop_new_connections
        - Branch String:   'master-service.c:359,7'
          Branch Sides:
            - BranchSide:      'master-service.c:361,18'
              BranchSideFuncs:
                - event_set_ptr
                - event_filter_match
                - master_service_stop_new_connections
            - BranchSide:      'master-service.c:364,2'
              BranchSideFuncs:
                - event_filter_match
                - master_service_stop_new_connections
        - Branch String:   'master-service.c:367,39'
          Branch Sides:
            - BranchSide:      'master-service.c:367,42'
              BranchSideFuncs:
                - event_filter_match
                - master_service_stop_new_connections
            - BranchSide:      'master-service.c:367,39'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:367,65'
          Branch Sides:
            - BranchSide:      'master-service.c:367,65'
              BranchSideFuncs:
                - event_filter_match
                - master_service_stop_new_connections
            - BranchSide:      'master-service.c:368,25'
              BranchSideFuncs:
                - event_filter_match
                - master_service_stop_new_connections
        - Branch String:   'master-service.c:367,6'
          Branch Sides:
            - BranchSide:      'master-service.c:367,6'
              BranchSideFuncs:
                - master_service_stop_new_connections
            - BranchSide:      'master-service.c:370,39'
              BranchSideFuncs:
                - master_service_stop_new_connections
      Callsites:
        - Src:             'master-service.c:358,3'
          Dst:             event_add_category
        - Src:             'master-service.c:361,4'
          Dst:             event_set_ptr
        - Src:             'master-service.c:368,6'
          Dst:             event_filter_match
        - Src:             'master-service.c:370,3'
          Dst:             master_service_stop_new_connections
    - functionName:    master_service_deinit
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1650
      functionLinenumberEnd: 1662
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _service
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_loop_destroy
        - lib_atexit_run
        - lib_deinit
        - lib_signals_deinit
        - master_service_deinit_real
        - master_service_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:1653,2'
          Dst:             master_service_deinit_real
        - Src:             'master-service.c:1655,2'
          Dst:             lib_signals_deinit
        - Src:             'master-service.c:1657,2'
          Dst:             lib_atexit_run
        - Src:             'master-service.c:1658,2'
          Dst:             io_loop_destroy
        - Src:             'master-service.c:1660,2'
          Dst:             master_service_free
        - Src:             'master-service.c:1661,2'
          Dst:             lib_deinit
    - functionName:    master_service_connection_get_type
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1509
      functionLinenumberEnd: 1529
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         16
      ICount:          99
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - strrchr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:1510,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1510,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1511,7'
              BranchSideFuncs:
                - strrchr
                - strrchr
        - Branch String:   'master-service.c:1511,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1512,10'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1516,17'
              BranchSideFuncs:
                - strrchr
                - strrchr
        - Branch String:   'master-service.c:1517,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1518,10'
              BranchSideFuncs:
                - strrchr
            - BranchSide:      'master-service.c:1520,7'
              BranchSideFuncs:
                - strrchr
        - Branch String:   'master-service.c:1523,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1524,12'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1526,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1510,2'
          Dst:             i_panic
        - Src:             'master-service.c:1516,9'
          Dst:             strrchr
        - Src:             'master-service.c:1522,11'
          Dst:             strrchr
    - 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:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_client_connection_accept
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1466
      functionLinenumberEnd: 1468
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_anvil_disconnect
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1386
      functionLinenumberEnd: 1394
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - session
        - conn_guid
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - guid_128_to_string
        - master_service_anvil_send
        - master_service_anvil_session_to_cmd
        - str_append
        - str_append_c
        - str_c
        - t_str_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:1387,18'
          Dst:             t_str_new
        - Src:             'master-service.c:1388,2'
          Dst:             str_append
        - Src:             'master-service.c:1389,18'
          Dst:             guid_128_to_string
        - Src:             'master-service.c:1389,2'
          Dst:             str_append
        - Src:             'master-service.c:1390,2'
          Dst:             str_append_c
        - Src:             'master-service.c:1391,2'
          Dst:             master_service_anvil_session_to_cmd
        - Src:             'master-service.c:1392,2'
          Dst:             str_append_c
        - Src:             'master-service.c:1393,43'
          Dst:             str_c
        - Src:             'master-service.c:1393,8'
          Dst:             master_service_anvil_send
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-master/../../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:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-master/../../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:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    master_service_anvil_session_to_cmd
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1335
      functionLinenumberEnd: 1343
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - session
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - net_ip2addr
        - str_append
        - str_append_c
        - str_append_tabescaped
        - str_printfa
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1341,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1341,6'
              BranchSideFuncs:
                - net_ip2addr
                - str_append.2716
            - BranchSide:      'master-service.c:1342,14'
              BranchSideFuncs:
                - net_ip2addr
                - str_append.2716
      Callsites:
        - Src:             'master-service.c:1336,2'
          Dst:             str_printfa
        - Src:             'master-service.c:1337,2'
          Dst:             str_append_tabescaped
        - Src:             'master-service.c:1338,2'
          Dst:             str_append_c
        - Src:             'master-service.c:1339,2'
          Dst:             str_append_tabescaped
        - Src:             'master-service.c:1340,2'
          Dst:             str_append_c
        - Src:             'master-service.c:1342,19'
          Dst:             net_ip2addr
        - Src:             'master-service.c:1342,3'
          Dst:             str_append
    - functionName:    master_service_anvil_send
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1308
      functionLinenumberEnd: 1330
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - cmd
      BBCount:         16
      ICount:          98
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - e_error
        - i_panic
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1311,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1312,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1314,31'
              BranchSideFuncs:
                - strlen
                - write
                - strlen
                - i_panic
                - e_error
                - __errno_location
                - e_error
        - Branch String:   'master-service.c:1315,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1316,7'
              BranchSideFuncs:
                - __errno_location
                - e_error
            - BranchSide:      'master-service.c:1323,13'
              BranchSideFuncs:
                - strlen
                - i_panic
                - e_error
        - Branch String:   'master-service.c:1316,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1319,4'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1321,3'
              BranchSideFuncs:
                - e_error
        - Branch String:   'master-service.c:1323,13'
          Branch Sides:
            - BranchSide:      'master-service.c:1324,3'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'master-service.c:1327,3'
              BranchSideFuncs:
                - strlen
                - i_panic
        - Branch String:   'master-service.c:1327,3'
          Branch Sides:
            - BranchSide:      'master-service.c:1327,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1328,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1314,36'
          Dst:             strlen
        - Src:             'master-service.c:1314,8'
          Dst:             write
        - Src:             'master-service.c:1316,7'
          Dst:             __errno_location
        - Src:             'master-service.c:1321,3'
          Dst:             e_error
        - Src:             'master-service.c:1324,3'
          Dst:             e_error
        - Src:             'master-service.c:1327,3'
          Dst:             strlen
        - Src:             'master-service.c:1327,3'
          Dst:             i_panic
    - functionName:    master_service_anvil_connect
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1348
      functionLinenumberEnd: 1380
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - session
        - kick_supported
        - conn_guid_r
      BBCount:         25
      ICount:          180
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - guid_128_generate
        - guid_128_to_string
        - master_service_anvil_send
        - master_service_anvil_session_to_cmd
        - master_service_get_client_limit
        - net_ip2addr
        - str_append
        - str_append_c
        - str_append_tabescaped
        - str_c
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:1357,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1358,3'
              BranchSideFuncs:
                - master_service_get_client_limit
                - str_append_c.2717
                - str_append_c.2717
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - t_str_new
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_tabescaped
                - str_append_c.2717
                - net_ip2addr
                - str_append.2716
                - str_append_c.2717
                - str_append_c.2717
            - BranchSide:      'master-service.c:1359,43'
              BranchSideFuncs:
                - master_service_get_client_limit
                - str_append_c.2717
                - str_append_c.2717
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - t_str_new
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_tabescaped
                - str_append_c.2717
                - net_ip2addr
                - str_append.2716
                - str_append_c.2717
                - str_append_c.2717
        - Branch String:   'master-service.c:1359,11'
          Branch Sides:
            - BranchSide:      'master-service.c:1360,3'
              BranchSideFuncs:
                - str_append_c.2717
                - str_append_c.2717
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - t_str_new
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_tabescaped
                - str_append_c.2717
                - net_ip2addr
                - str_append.2716
            - BranchSide:      'master-service.c:1361,11'
              BranchSideFuncs:
                - str_append_c.2717
                - str_append_c.2717
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - t_str_new
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_tabescaped
                - str_append_c.2717
                - net_ip2addr
                - str_append.2716
                - str_append_c.2717
        - Branch String:   'master-service.c:1361,11'
          Branch Sides:
            - BranchSide:      'master-service.c:1362,3'
              BranchSideFuncs:
                - str_append_c.2717
                - str_append_c.2717
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - t_str_new
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_tabescaped
                - str_append_c.2717
                - net_ip2addr
                - str_append.2716
            - BranchSide:      'master-service.c:1364,3'
              BranchSideFuncs:
                - str_append_c.2717
                - str_append_c.2717
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - t_str_new
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_tabescaped
                - str_append_c.2717
                - net_ip2addr
                - str_append.2716
        - Branch String:   'master-service.c:1366,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1367,14'
              BranchSideFuncs:
                - net_ip2addr
                - str_append.2716
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - t_str_new
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_tabescaped
                - str_append_c.2717
            - BranchSide:      'master-service.c:1368,6'
              BranchSideFuncs:
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - t_str_new
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_tabescaped
                - str_append_c.2717
        - Branch String:   'master-service.c:1368,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1368,6'
              BranchSideFuncs:
                - t_str_new
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - str_append_tabescaped
                - str_append_c.2717
            - BranchSide:      'master-service.c:1369,29'
              BranchSideFuncs:
                - t_str_new
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - str_append_tabescaped
                - str_append_c.2717
        - Branch String:   'master-service.c:1370,3'
          Branch Sides:
            - BranchSide:      'master-service.c:1371,8'
              BranchSideFuncs:
                - str_append_tabescaped
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - str_append_c.2717
            - BranchSide:      'master-service.c:1376,3'
              BranchSideFuncs:
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
        - Branch String:   'master-service.c:1371,8'
          Branch Sides:
            - BranchSide:      'master-service.c:1372,5'
              BranchSideFuncs:
                - str_append_c.2717
                - str_append_tabescaped
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
            - BranchSide:      'master-service.c:1373,26'
              BranchSideFuncs:
                - str_append_tabescaped
                - str_append_c.2717
                - str_c
                - str_append_tabescaped
                - str_append_c.2717
                - str_c
                - master_service_anvil_send
                - str_append_c.2717
      Callsites:
        - Src:             'master-service.c:1349,2'
          Dst:             guid_128_generate
        - Src:             'master-service.c:1351,18'
          Dst:             t_str_new
        - Src:             'master-service.c:1352,2'
          Dst:             str_append
        - Src:             'master-service.c:1353,18'
          Dst:             guid_128_to_string
        - Src:             'master-service.c:1353,2'
          Dst:             str_append
        - Src:             'master-service.c:1354,2'
          Dst:             str_append_c
        - Src:             'master-service.c:1355,2'
          Dst:             master_service_anvil_session_to_cmd
        - Src:             'master-service.c:1356,2'
          Dst:             str_append_c
        - Src:             'master-service.c:1358,3'
          Dst:             str_append_c
        - Src:             'master-service.c:1359,11'
          Dst:             master_service_get_client_limit
        - Src:             'master-service.c:1360,3'
          Dst:             str_append_c
        - Src:             'master-service.c:1362,3'
          Dst:             str_append_c
        - Src:             'master-service.c:1364,3'
          Dst:             str_append_c
        - Src:             'master-service.c:1365,2'
          Dst:             str_append_c
        - Src:             'master-service.c:1367,19'
          Dst:             net_ip2addr
        - Src:             'master-service.c:1367,3'
          Dst:             str_append
        - Src:             'master-service.c:1369,29'
          Dst:             t_str_new
        - Src:             'master-service.c:1372,5'
          Dst:             str_append_c
        - Src:             'master-service.c:1373,4'
          Dst:             str_append_tabescaped
        - Src:             'master-service.c:1376,3'
          Dst:             str_append_c
        - Src:             'master-service.c:1377,30'
          Dst:             str_c
        - Src:             'master-service.c:1377,3'
          Dst:             str_append_tabescaped
        - Src:             'master-service.c:1379,2'
          Dst:             str_append_c
        - Src:             'master-service.c:1380,44'
          Dst:             str_c
        - Src:             'master-service.c:1380,9'
          Dst:             master_service_anvil_send
    - functionName:    master_service_get_client_limit
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1096
      functionLinenumberEnd: 1097
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_is_master_stopped
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1301
      functionLinenumberEnd: 1303
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:1302,42'
          Branch Sides:
            - BranchSide:      'master-service.c:1302,42'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1303,4'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    master_service_get_kill_time
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1281
      functionLinenumberEnd: 1293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - tv_r
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - block_sigterm
        - e_error
        - sigprocmask
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:1288,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1288,6'
              BranchSideFuncs:
                - sigprocmask
                - e_error
            - BranchSide:      'master-service.c:1289,7'
              BranchSideFuncs:
                - sigprocmask
                - e_error
        - Branch String:   'master-service.c:1289,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1290,4'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'master-service.c:1292,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1284,25'
          Dst:             block_sigterm
        - Src:             'master-service.c:1289,7'
          Dst:             sigprocmask
        - Src:             'master-service.c:1290,4'
          Dst:             e_error
    - functionName:    master_service_get_kill_signal
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1275
      functionLinenumberEnd: 1276
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_remove_stop_new_connections_callback
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1261
      functionLinenumberEnd: 1267
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - callback
        - context
      BBCount:         11
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:1262,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1262,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1263,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:1263,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1263,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1263,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1262,2'
          Dst:             i_panic
        - Src:             'master-service.c:1263,2'
          Dst:             i_panic
    - functionName:    master_service_add_stop_new_connections_callback
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1251
      functionLinenumberEnd: 1256
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - callback
        - context
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:1253,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1253,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1253,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1253,2'
          Dst:             i_panic
    - functionName:    master_service_run
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1206
      functionLinenumberEnd: 1210
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - callback
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_loop_run
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:1208,2'
          Dst:             io_loop_run
    - functionName:    master_service_get_settings_root
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1200
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_get_configured_name
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1194
      functionLinenumberEnd: 1195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_get_event
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1189
      functionLinenumberEnd: 1190
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_get_name
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1185
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_get_version_string
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1179
      functionLinenumberEnd: 1180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_get_config_path
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1174
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_set_avail_overflow_callback
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1169
      functionLinenumberEnd: 1171
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - callback
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_get_socket_type
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1156
      functionLinenumberEnd: 1164
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - service
        - listen_fd
      BBCount:         14
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:1159,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1159,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1161,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:1162,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1162,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1163,9'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:1163,9'
          Branch Sides:
            - BranchSide:      'master-service.c:1163,9'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1164,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1159,2'
          Dst:             i_panic
        - Src:             'master-service.c:1162,2'
          Dst:             i_panic
    - functionName:    master_service_get_socket_count
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1137
      functionLinenumberEnd: 1138
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_get_service_count
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1132
      functionLinenumberEnd: 1133
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_get_idle_kill_secs
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1111
      functionLinenumberEnd: 1112
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_get_process_min_avail
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1106
      functionLinenumberEnd: 1107
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_get_process_limit
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1101
      functionLinenumberEnd: 1102
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_env_clean
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1068
      functionLinenumberEnd: 1077
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         15
      ICount:          65
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - env_clean
        - env_clean_except
        - getenv
        - i_panic
        - t_pop
        - t_push
        - t_strconcat
        - t_strsplit_spaces
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:1069,14'
          Branch Sides:
            - BranchSide:      'master-service.c:1069,22'
              BranchSideFuncs:
                - getenv
                - t_push
                - t_strconcat
                - t_strsplit_spaces
                - env_clean_except
                - t_pop
                - i_panic
                - env_clean
            - BranchSide:      'master-service.c:1069,22'
              BranchSideFuncs:
                - getenv
                - t_push
                - t_strconcat
                - t_strsplit_spaces
                - env_clean_except
                - t_pop
                - i_panic
                - env_clean
        - Branch String:   'master-service.c:1071,20'
          Branch Sides:
            - BranchSide:      'master-service.c:1071,24'
              BranchSideFuncs:
                - env_clean
            - BranchSide:      'master-service.c:1072,3'
              BranchSideFuncs:
                - env_clean
        - Branch String:   'master-service.c:1071,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1072,3'
              BranchSideFuncs:
                - env_clean
            - BranchSide:      'master-service.c:1073,7'
              BranchSideFuncs:
                - t_push
                - t_strconcat
                - t_strsplit_spaces
                - env_clean_except
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:1076,4'
          Branch Sides:
            - BranchSide:      'master-service.c:1076,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1076,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1069,22'
          Dst:             getenv
        - Src:             'master-service.c:1072,3'
          Dst:             env_clean
        - Src:             'master-service.c:1073,7'
          Dst:             t_push
        - Src:             'master-service.c:1074,11'
          Dst:             t_strconcat
        - Src:             'master-service.c:1075,20'
          Dst:             t_strsplit_spaces
        - Src:             'master-service.c:1075,3'
          Dst:             env_clean_except
        - Src:             'master-service.c:1076,4'
          Dst:             t_pop
        - Src:             'master-service.c:1076,4'
          Dst:             i_panic
    - 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:    48
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_import_environment_real
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1024
      functionLinenumberEnd: 1058
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - import_environment
      BBCount:         16
      ICount:          103
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - array_append_i
        - array_append_space_i
        - array_create_i
        - array_idx_i
        - env_put
        - getenv
        - pool_datastack_create
        - strchr
        - t_strarray_join
        - t_strdup_until
        - t_strsplit_spaces
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:1028,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1029,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1031,2'
              BranchSideFuncs:
                - pool_datastack_create
                - array_create_i.2726
                - getenv
                - t_strsplit_spaces
                - array_append_space_i.2702
                - array_idx_i.2700
                - t_strarray_join
                - env_put
                - strchr
                - t_strdup_until
                - env_put
                - array_append_i.2727
                - array_append_i.2727
        - Branch String:   'master-service.c:1034,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1035,3'
              BranchSideFuncs:
                - array_append_i.2727
                - t_strsplit_spaces
                - array_append_space_i.2702
                - array_idx_i.2700
                - t_strarray_join
                - env_put
                - strchr
                - t_strdup_until
                - env_put
                - array_append_i.2727
            - BranchSide:      'master-service.c:1043,27'
              BranchSideFuncs:
                - t_strsplit_spaces
                - array_append_space_i.2702
                - array_idx_i.2700
                - t_strarray_join
                - env_put
                - strchr
                - t_strdup_until
                - env_put
                - array_append_i.2727
        - Branch String:   'master-service.c:1044,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1045,19'
              BranchSideFuncs:
                - strchr
                - t_strdup_until
                - env_put
                - array_append_i.2727
                - array_append_space_i.2702
                - array_idx_i.2700
                - t_strarray_join
                - env_put
            - BranchSide:      'master-service.c:1054,2'
              BranchSideFuncs:
                - array_append_space_i.2702
                - array_idx_i.2700
                - t_strarray_join
                - env_put
        - Branch String:   'master-service.c:1046,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1047,11'
              BranchSideFuncs:
                - array_append_i.2727
                - array_append_space_i.2702
                - array_idx_i.2700
                - t_strarray_join
                - env_put
                - strchr
                - t_strdup_until
                - env_put
            - BranchSide:      'master-service.c:1049,26'
              BranchSideFuncs:
                - t_strdup_until
                - env_put
                - array_append_i.2727
                - array_append_space_i.2702
                - array_idx_i.2700
                - t_strarray_join
                - env_put
                - strchr
      Callsites:
        - Src:             'master-service.c:1031,2'
          Dst:             pool_datastack_create
        - Src:             'master-service.c:1031,2'
          Dst:             array_create_i
        - Src:             'master-service.c:1033,10'
          Dst:             getenv
        - Src:             'master-service.c:1035,3'
          Dst:             array_append_i
        - Src:             'master-service.c:1043,9'
          Dst:             t_strsplit_spaces
        - Src:             'master-service.c:1045,11'
          Dst:             strchr
        - Src:             'master-service.c:1049,10'
          Dst:             t_strdup_until
        - Src:             'master-service.c:1050,4'
          Dst:             env_put
        - Src:             'master-service.c:1052,3'
          Dst:             array_append_i
        - Src:             'master-service.c:1054,2'
          Dst:             array_append_space_i
        - Src:             'master-service.c:1056,26'
          Dst:             array_idx_i
        - Src:             'master-service.c:1056,10'
          Dst:             t_strarray_join
        - Src:             'master-service.c:1057,2'
          Dst:             env_put
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.2703
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.2703
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    master_service_import_environment
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1061
      functionLinenumberEnd: 1065
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - import_environment
      BBCount:         9
      ICount:          40
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - master_service_import_environment_real
        - t_pop
        - t_push
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:1064,4'
          Branch Sides:
            - BranchSide:      'master-service.c:1064,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1064,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1062,2'
          Dst:             t_push
        - Src:             'master-service.c:1063,3'
          Dst:             master_service_import_environment_real
        - Src:             'master-service.c:1064,4'
          Dst:             t_pop
        - Src:             'master-service.c:1064,4'
          Dst:             i_panic
    - functionName:    master_status_update_wait
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 944
      functionLinenumberEnd: 952
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - io_loop_create
        - io_loop_destroy
        - io_loop_move_io
        - io_loop_run
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:948,2'
          Branch Sides:
            - BranchSide:      'master-service.c:949,15'
              BranchSideFuncs:
                - io_loop_run
                - io_loop_destroy
            - BranchSide:      'master-service.c:950,2'
              BranchSideFuncs:
                - io_loop_destroy
      Callsites:
        - Src:             'master-service.c:945,26'
          Dst:             io_loop_create
        - Src:             'master-service.c:947,29'
          Dst:             io_loop_move_io
        - Src:             'master-service.c:949,3'
          Dst:             io_loop_run
        - Src:             'master-service.c:951,2'
          Dst:             io_loop_destroy
    - functionName:    sig_close_listeners
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - si
        - context
      BBCount:         15
      ICount:          103
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dup2
        - lib_signals_syscall_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:329,2'
          Branch Sides:
            - BranchSide:      'master-service.c:330,7'
              BranchSideFuncs:
                - dup2
                - lib_signals_syscall_error
            - BranchSide:      'master-service.c:337,1'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:330,38'
          Branch Sides:
            - BranchSide:      'master-service.c:331,7'
              BranchSideFuncs:
                - dup2
                - lib_signals_syscall_error
            - BranchSide:      'master-service.c:336,2'
              BranchSideFuncs:
                - dup2
                - lib_signals_syscall_error
        - Branch String:   'master-service.c:330,7'
          Branch Sides:
            - BranchSide:      'master-service.c:332,13'
              BranchSideFuncs:
                - dup2
                - lib_signals_syscall_error
            - BranchSide:      'master-service.c:336,2'
              BranchSideFuncs:
                - dup2
                - lib_signals_syscall_error
        - Branch String:   'master-service.c:332,8'
          Branch Sides:
            - BranchSide:      'master-service.c:333,5'
              BranchSideFuncs:
                - lib_signals_syscall_error
                - dup2
            - BranchSide:      'master-service.c:334,4'
              BranchSideFuncs:
                - dup2
                - lib_signals_syscall_error
      Callsites:
        - Src:             'master-service.c:332,8'
          Dst:             dup2
        - Src:             'master-service.c:333,5'
          Dst:             lib_signals_syscall_error
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_status_error
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 930
      functionLinenumberEnd: 941
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_set_failure_ignore_errors
        - io_remove
        - master_service_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:934,2'
          Dst:             io_remove
        - Src:             'master-service.c:938,2'
          Dst:             i_set_failure_ignore_errors
        - Src:             'master-service.c:940,2'
          Dst:             master_service_error
    - functionName:    sig_delayed_state_changed
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - si
        - context
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - master_service_refresh_login_state
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:344,2'
          Dst:             master_service_refresh_login_state
    - functionName:    sig_term
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - si
        - context
      BBCount:         18
      ICount:          97
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - lib_signals_syscall_error
        - sig_die_delayed
        - sig_term_try_kick
        - sigaddset
        - sigemptyset
        - sigprocmask
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:298,6'
          Branch Sides:
            - BranchSide:      'master-service.c:299,3'
              BranchSideFuncs:
                - lib_signals_syscall_error
                - __errno_location
                - sig_die_delayed
            - BranchSide:      'master-service.c:300,11'
              BranchSideFuncs:
                - sigaddset
                - sigprocmask
                - sig_term_try_kick
                - sigprocmask
                - __errno_location
                - sig_die_delayed
                - lib_signals_syscall_error
                - lib_signals_syscall_error
                - lib_signals_syscall_error
        - Branch String:   'master-service.c:300,11'
          Branch Sides:
            - BranchSide:      'master-service.c:301,3'
              BranchSideFuncs:
                - lib_signals_syscall_error
                - __errno_location
                - sig_die_delayed
            - BranchSide:      'master-service.c:302,11'
              BranchSideFuncs:
                - sigprocmask
                - sig_term_try_kick
                - sigprocmask
                - __errno_location
                - sig_die_delayed
                - lib_signals_syscall_error
                - lib_signals_syscall_error
        - Branch String:   'master-service.c:302,11'
          Branch Sides:
            - BranchSide:      'master-service.c:303,3'
              BranchSideFuncs:
                - lib_signals_syscall_error
                - __errno_location
                - sig_die_delayed
            - BranchSide:      'master-service.c:305,36'
              BranchSideFuncs:
                - sig_term_try_kick
                - sigprocmask
                - __errno_location
                - sig_die_delayed
                - lib_signals_syscall_error
        - Branch String:   'master-service.c:310,6'
          Branch Sides:
            - BranchSide:      'master-service.c:310,6'
              BranchSideFuncs:
                - sig_die_delayed
                - __errno_location
            - BranchSide:      'master-service.c:311,19'
              BranchSideFuncs:
                - sig_die_delayed
                - __errno_location
      Callsites:
        - Src:             'master-service.c:294,20'
          Dst:             __errno_location
        - Src:             'master-service.c:298,6'
          Dst:             sigemptyset
        - Src:             'master-service.c:299,3'
          Dst:             lib_signals_syscall_error
        - Src:             'master-service.c:300,11'
          Dst:             sigaddset
        - Src:             'master-service.c:301,3'
          Dst:             lib_signals_syscall_error
        - Src:             'master-service.c:302,11'
          Dst:             sigprocmask
        - Src:             'master-service.c:303,3'
          Dst:             lib_signals_syscall_error
        - Src:             'master-service.c:305,18'
          Dst:             sig_term_try_kick
        - Src:             'master-service.c:306,7'
          Dst:             sigprocmask
        - Src:             'master-service.c:307,4'
          Dst:             lib_signals_syscall_error
        - Src:             'master-service.c:311,3'
          Dst:             sig_die_delayed
        - Src:             'master-service.c:312,2'
          Dst:             __errno_location
    - functionName:    sig_delayed_die
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - si
        - context
      BBCount:         25
      ICount:          147
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - io_loop_stop
        - log_killed_signal
        - master_status_send
      functionUses:    5
      BranchProfiles:
        - Branch String:   'master-service.c:109,6'
          Branch Sides:
            - BranchSide:      'master-service.c:110,21'
              BranchSideFuncs:
                - log_killed_signal
                - io_loop_stop
            - BranchSide:      'master-service.c:111,14'
              BranchSideFuncs:
                - io_loop_stop
                - master_status_send
        - Branch String:   'master-service.c:111,13'
          Branch Sides:
            - BranchSide:      'master-service.c:113,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:114,14'
              BranchSideFuncs:
                - io_loop_stop
                - master_status_send
        - Branch String:   'master-service.c:117,7'
          Branch Sides:
            - BranchSide:      'master-service.c:119,4'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:121,7'
              BranchSideFuncs:
                - io_loop_stop
                - master_status_send
        - Branch String:   'master-service.c:121,42'
          Branch Sides:
            - BranchSide:      'master-service.c:122,8'
              BranchSideFuncs:
                - master_status_send
                - io_loop_stop
            - BranchSide:      'master-service.c:128,2'
              BranchSideFuncs:
                - io_loop_stop
        - Branch String:   'master-service.c:121,7'
          Branch Sides:
            - BranchSide:      'master-service.c:125,23'
              BranchSideFuncs:
                - io_loop_stop
            - BranchSide:      'master-service.c:128,2'
              BranchSideFuncs:
                - io_loop_stop
        - Branch String:   'master-service.c:135,6'
          Branch Sides:
            - BranchSide:      'master-service.c:136,16'
              BranchSideFuncs:
                - io_loop_stop
            - BranchSide:      'master-service.c:137,6'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:137,6'
          Branch Sides:
            - BranchSide:      'master-service.c:137,6'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:138,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:110,3'
          Dst:             log_killed_signal
        - Src:             'master-service.c:125,4'
          Dst:             master_status_send
        - Src:             'master-service.c:136,3'
          Dst:             io_loop_stop
    - functionName:    sig_standalone_die
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - si
        - context
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sig_die_delayed
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:285,2'
          Dst:             sig_die_delayed
    - functionName:    master_service_init_finish
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 955
      functionLinenumberEnd: 1021
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         47
      ICount:          263
      EdgeCount:       60
      CyclomaticComplexity: 15
      functionsReached:
        - fstat
        - getenv
        - i_fatal
        - i_panic
        - io_add
        - lib_set_clean_exit
        - lib_signals_set_handler
        - lib_signals_set_handler2
        - master_service_io_listeners_add
        - master_service_ssl_ctx_init
        - master_status_error
        - master_status_update
        - master_status_update_wait
        - process_title_get_counter
        - process_title_set
        - sig_close_listeners
        - sig_delayed_die
        - sig_delayed_state_changed
        - sig_standalone_die
        - sig_term
        - t_pop
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:958,2'
          Branch Sides:
            - BranchSide:      'master-service.c:958,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:959,2'
              BranchSideFuncs:
                - lib_set_clean_exit
                - lib_signals_set_handler
                - lib_signals_set_handler
                - master_service_io_listeners_add
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
                - fstat
                - i_fatal
                - io_add
                - lib_signals_set_handler
                - lib_signals_set_handler
                - lib_signals_set_handler2
                - lib_signals_set_handler2
                - lib_signals_set_handler2
        - Branch String:   'master-service.c:965,6'
          Branch Sides:
            - BranchSide:      'master-service.c:968,24'
              BranchSideFuncs:
                - lib_signals_set_handler2
                - lib_signals_set_handler2
                - master_service_io_listeners_add
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
                - fstat
                - i_fatal
                - io_add
                - lib_signals_set_handler
                - lib_signals_set_handler
            - BranchSide:      'master-service.c:974,23'
              BranchSideFuncs:
                - lib_signals_set_handler
                - lib_signals_set_handler
                - master_service_io_listeners_add
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
                - fstat
                - i_fatal
                - io_add
                - lib_signals_set_handler
                - lib_signals_set_handler
                - lib_signals_set_handler2
        - Branch String:   'master-service.c:975,7'
          Branch Sides:
            - BranchSide:      'master-service.c:977,24'
              BranchSideFuncs:
                - lib_signals_set_handler2
                - master_service_io_listeners_add
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
                - fstat
                - i_fatal
                - io_add
                - lib_signals_set_handler
                - lib_signals_set_handler
            - BranchSide:      'master-service.c:980,25'
              BranchSideFuncs:
                - lib_signals_set_handler2
                - master_service_io_listeners_add
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
                - fstat
                - i_fatal
                - io_add
                - lib_signals_set_handler
                - lib_signals_set_handler
        - Branch String:   'master-service.c:983,6'
          Branch Sides:
            - BranchSide:      'master-service.c:985,33'
              BranchSideFuncs:
                - lib_signals_set_handler
                - master_service_io_listeners_add
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
                - fstat
                - i_fatal
                - io_add
                - lib_signals_set_handler
            - BranchSide:      'master-service.c:988,7'
              BranchSideFuncs:
                - master_service_io_listeners_add
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
                - fstat
                - i_fatal
                - io_add
                - lib_signals_set_handler
        - Branch String:   'master-service.c:988,6'
          Branch Sides:
            - BranchSide:      'master-service.c:989,7'
              BranchSideFuncs:
                - fstat
                - i_fatal
                - io_add
                - lib_signals_set_handler
                - master_service_io_listeners_add
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
            - BranchSide:      'master-service.c:997,34'
              BranchSideFuncs:
                - master_service_io_listeners_add
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
        - Branch String:   'master-service.c:989,40'
          Branch Sides:
            - BranchSide:      'master-service.c:989,44'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'master-service.c:990,4'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'master-service.c:989,7'
          Branch Sides:
            - BranchSide:      'master-service.c:990,4'
              BranchSideFuncs:
                - io_add
                - lib_signals_set_handler
                - master_service_io_listeners_add
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
            - BranchSide:      'master-service.c:993,30'
              BranchSideFuncs:
                - io_add
                - lib_signals_set_handler
                - master_service_io_listeners_add
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
        - Branch String:   'master-service.c:998,31'
          Branch Sides:
            - BranchSide:      'master-service.c:999,7'
              BranchSideFuncs:
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
                - master_service_ssl_ctx_init
            - BranchSide:      'master-service.c:1002,7'
              BranchSideFuncs:
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
        - Branch String:   'master-service.c:998,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1000,31'
              BranchSideFuncs:
                - master_service_ssl_ctx_init
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
            - BranchSide:      'master-service.c:1002,7'
              BranchSideFuncs:
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
        - Branch String:   'master-service.c:1002,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1004,3'
              BranchSideFuncs:
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
            - BranchSide:      'master-service.c:1006,23'
              BranchSideFuncs:
                - master_status_update
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
                - master_status_update_wait
        - Branch String:   'master-service.c:1007,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1008,29'
              BranchSideFuncs:
                - master_status_update_wait
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:1011,7'
              BranchSideFuncs:
                - process_title_get_counter
                - getenv
                - process_title_set
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:1011,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1012,15'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - process_title_get_counter
                - getenv
                - process_title_set
            - BranchSide:      'master-service.c:1017,7'
              BranchSideFuncs:
                - process_title_get_counter
                - getenv
                - process_title_set
        - Branch String:   'master-service.c:1012,7'
          Branch Sides:
            - BranchSide:      'master-service.c:1013,4'
              BranchSideFuncs:
                - process_title_get_counter
                - getenv
                - process_title_set
            - BranchSide:      'master-service.c:1014,2'
              BranchSideFuncs:
                - process_title_get_counter
                - getenv
                - process_title_set
        - Branch String:   'master-service.c:1017,61'
          Branch Sides:
            - BranchSide:      'master-service.c:1017,61'
              BranchSideFuncs:
                - process_title_get_counter
                - getenv
                - process_title_set
            - BranchSide:      'master-service.c:1018,6'
              BranchSideFuncs:
                - process_title_get_counter
                - getenv
                - process_title_set
        - Branch String:   'master-service.c:1018,39'
          Branch Sides:
            - BranchSide:      'master-service.c:1018,39'
              BranchSideFuncs:
                - getenv
                - process_title_set
            - BranchSide:      'master-service.c:1019,6'
              BranchSideFuncs:
                - getenv
                - process_title_set
        - Branch String:   'master-service.c:1017,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1017,6'
              BranchSideFuncs:
                - process_title_set
            - BranchSide:      'master-service.c:1020,3'
              BranchSideFuncs:
                - process_title_set
      Callsites:
        - Src:             'master-service.c:958,2'
          Dst:             i_panic
        - Src:             'master-service.c:962,2'
          Dst:             lib_set_clean_exit
        - Src:             'master-service.c:967,3'
          Dst:             lib_signals_set_handler2
        - Src:             'master-service.c:967,3'
          Dst:             sig_standalone_die
        - Src:             'master-service.c:967,3'
          Dst:             sig_delayed_die
        - Src:             'master-service.c:969,3'
          Dst:             lib_signals_set_handler2
        - Src:             'master-service.c:969,3'
          Dst:             sig_standalone_die
        - Src:             'master-service.c:969,3'
          Dst:             sig_delayed_die
        - Src:             'master-service.c:973,3'
          Dst:             lib_signals_set_handler
        - Src:             'master-service.c:973,3'
          Dst:             sig_delayed_die
        - Src:             'master-service.c:976,4'
          Dst:             lib_signals_set_handler
        - Src:             'master-service.c:976,4'
          Dst:             sig_delayed_die
        - Src:             'master-service.c:979,4'
          Dst:             lib_signals_set_handler2
        - Src:             'master-service.c:979,4'
          Dst:             sig_term
        - Src:             'master-service.c:979,4'
          Dst:             sig_delayed_die
        - Src:             'master-service.c:984,3'
          Dst:             lib_signals_set_handler
        - Src:             'master-service.c:984,3'
          Dst:             sig_delayed_state_changed
        - Src:             'master-service.c:989,7'
          Dst:             fstat
        - Src:             'master-service.c:990,4'
          Dst:             i_fatal
        - Src:             'master-service.c:993,30'
          Dst:             io_add
        - Src:             'master-service.c:993,30'
          Dst:             master_status_error
        - Src:             'master-service.c:995,3'
          Dst:             lib_signals_set_handler
        - Src:             'master-service.c:995,3'
          Dst:             sig_close_listeners
        - Src:             'master-service.c:997,2'
          Dst:             master_service_io_listeners_add
        - Src:             'master-service.c:1000,3'
          Dst:             master_service_ssl_ctx_init
        - Src:             'master-service.c:1006,2'
          Dst:             master_status_update
        - Src:             'master-service.c:1008,3'
          Dst:             master_status_update_wait
        - Src:             'master-service.c:1012,8'
          Dst:             t_pop
        - Src:             'master-service.c:1013,4'
          Dst:             i_panic
        - Src:             'master-service.c:1018,6'
          Dst:             process_title_get_counter
        - Src:             'master-service.c:1019,6'
          Dst:             getenv
        - Src:             'master-service.c:1020,3'
          Dst:             process_title_set
    - functionName:    get_instance_config
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 849
      functionLinenumberEnd: 867
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - config_path_r
      BBCount:         8
      ICount:          68
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_fatal
        - master_instance_list_deinit
        - master_instance_list_find_by_name
        - master_instance_list_init
        - t_readlink
        - t_strconcat
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:860,6'
          Branch Sides:
            - BranchSide:      'master-service.c:860,6'
              BranchSideFuncs:
                - t_strdup_printf
                - t_readlink
                - master_instance_list_deinit
                - i_fatal
            - BranchSide:      'master-service.c:861,45'
              BranchSideFuncs:
                - t_strdup_printf
                - t_readlink
                - master_instance_list_deinit
                - i_fatal
        - Branch String:   'master-service.c:863,7'
          Branch Sides:
            - BranchSide:      'master-service.c:864,41'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'master-service.c:865,2'
              BranchSideFuncs:
                - master_instance_list_deinit
      Callsites:
        - Src:             'master-service.c:857,18'
          Dst:             t_strconcat
        - Src:             'master-service.c:858,9'
          Dst:             master_instance_list_init
        - Src:             'master-service.c:859,9'
          Dst:             master_instance_list_find_by_name
        - Src:             'master-service.c:861,10'
          Dst:             t_strdup_printf
        - Src:             'master-service.c:863,7'
          Dst:             t_readlink
        - Src:             'master-service.c:864,4'
          Dst:             i_fatal
        - Src:             'master-service.c:866,2'
          Dst:             master_instance_list_deinit
    - functionName:    master_service_set_idle_die_callback
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 844
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - callback
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_set_die_callback
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 838
      functionLinenumberEnd: 840
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - callback
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_set_die_with_master
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 834
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - service
        - set
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_init_stats_client
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 828
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - service
        - silent_notfound_errors
      BBCount:         14
      ICount:          88
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - stats_client_init
        - t_pop
        - t_push
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:820,36'
          Branch Sides:
            - BranchSide:      'master-service.c:820,36'
              BranchSideFuncs:
                - t_push
                - t_strdup_printf
                - stats_client_init
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:821,6'
              BranchSideFuncs:
                - t_push
                - t_strdup_printf
                - stats_client_init
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:820,6'
          Branch Sides:
            - BranchSide:      'master-service.c:820,6'
              BranchSideFuncs:
                - t_push
                - t_strdup_printf
                - stats_client_init
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:821,57'
              BranchSideFuncs:
                - t_push
                - t_strdup_printf
                - stats_client_init
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:827,4'
          Branch Sides:
            - BranchSide:      'master-service.c:827,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:827,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:821,57'
          Dst:             t_push
        - Src:             'master-service.c:822,22'
          Dst:             t_strdup_printf
        - Src:             'master-service.c:826,4'
          Dst:             stats_client_init
        - Src:             'master-service.c:827,4'
          Dst:             t_pop
        - Src:             'master-service.c:827,4'
          Dst:             i_panic
    - functionName:    master_service_init_log_with_pid
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 812
      functionLinenumberEnd: 815
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - master_service_init_log_with_prefix
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:813,47'
          Dst:             t_strdup_printf
        - Src:             'master-service.c:813,2'
          Dst:             master_service_init_log_with_prefix
    - functionName:    master_service_init_log_with_prefix
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 801
      functionLinenumberEnd: 809
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - prefix
      BBCount:         8
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - i_set_failure_prefix
        - master_service_try_init_log
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:802,6'
          Branch Sides:
            - BranchSide:      'master-service.c:804,30'
              BranchSideFuncs:
                - i_set_failure_prefix
            - BranchSide:      'master-service.c:807,34'
              BranchSideFuncs:
                - master_service_try_init_log
        - Branch String:   'master-service.c:807,6'
          Branch Sides:
            - BranchSide:      'master-service.c:807,6'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:808,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:804,3'
          Dst:             i_set_failure_prefix
        - Src:             'master-service.c:807,6'
          Dst:             master_service_try_init_log
    - functionName:    master_service_try_init_log
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 725
      functionLinenumberEnd: 791
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - prefix
      BBCount:         52
      ICount:          328
      EdgeCount:       70
      CyclomaticComplexity: 20
      functionsReached:
        - getenv
        - home_expand
        - i_set_debug_file
        - i_set_error_handler
        - i_set_failure_file
        - i_set_failure_internal
        - i_set_failure_prefix
        - i_set_failure_syslog
        - i_set_failure_timestamp_format
        - i_set_fatal_handler
        - i_set_info_file
        - strcmp
        - syslog_facility_find
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:728,61'
          Branch Sides:
            - BranchSide:      'master-service.c:729,7'
              BranchSideFuncs:
                - getenv
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_fatal_handler
                - i_set_error_handler
                - home_expand
                - i_set_failure_file
                - i_set_failure_file
                - i_set_failure_internal
                - i_set_failure_prefix
                - getenv
                - i_set_failure_file
                - i_set_failure_timestamp_format
            - BranchSide:      'master-service.c:737,6'
              BranchSideFuncs:
                - getenv
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_fatal_handler
                - i_set_error_handler
                - home_expand
                - i_set_failure_file
                - i_set_failure_file
                - i_set_failure_internal
                - i_set_failure_prefix
        - Branch String:   'master-service.c:728,6'
          Branch Sides:
            - BranchSide:      'master-service.c:730,15'
              BranchSideFuncs:
                - getenv
                - i_set_failure_file
                - i_set_failure_timestamp_format
            - BranchSide:      'master-service.c:737,6'
              BranchSideFuncs:
                - getenv
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_fatal_handler
                - i_set_error_handler
                - home_expand
                - i_set_failure_file
                - i_set_failure_file
                - i_set_failure_internal
                - i_set_failure_prefix
        - Branch String:   'master-service.c:731,7'
          Branch Sides:
            - BranchSide:      'master-service.c:732,35'
              BranchSideFuncs:
                - i_set_failure_timestamp_format
                - i_set_failure_file
            - BranchSide:      'master-service.c:733,3'
              BranchSideFuncs:
                - i_set_failure_file
        - Branch String:   'master-service.c:737,53'
          Branch Sides:
            - BranchSide:      'master-service.c:737,57'
              BranchSideFuncs:
                - i_set_failure_internal
                - i_set_failure_prefix
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_fatal_handler
                - i_set_error_handler
                - home_expand
                - i_set_failure_file
                - i_set_failure_file
            - BranchSide:      'master-service.c:744,6'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_fatal_handler
                - i_set_error_handler
                - home_expand
                - i_set_failure_file
                - i_set_failure_file
        - Branch String:   'master-service.c:737,6'
          Branch Sides:
            - BranchSide:      'master-service.c:739,3'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_fatal_handler
                - i_set_error_handler
                - home_expand
                - i_set_failure_file
                - i_set_failure_file
            - BranchSide:      'master-service.c:744,6'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_fatal_handler
                - i_set_error_handler
                - home_expand
                - i_set_failure_file
                - i_set_failure_file
        - Branch String:   'master-service.c:744,6'
          Branch Sides:
            - BranchSide:      'master-service.c:745,37'
              BranchSideFuncs:
                - i_set_failure_file
            - BranchSide:      'master-service.c:750,13'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_fatal_handler
                - i_set_error_handler
                - home_expand
                - i_set_failure_file
        - Branch String:   'master-service.c:750,6'
          Branch Sides:
            - BranchSide:      'master-service.c:752,22'
              BranchSideFuncs:
                - home_expand
                - i_set_failure_file
                - strcmp
                - strcmp
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_fatal_handler
                - i_set_error_handler
            - BranchSide:      'master-service.c:756,13'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_fatal_handler
                - i_set_error_handler
        - Branch String:   'master-service.c:756,52'
          Branch Sides:
            - BranchSide:      'master-service.c:757,13'
              BranchSideFuncs:
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - i_set_fatal_handler
                - i_set_error_handler
            - BranchSide:      'master-service.c:762,29'
              BranchSideFuncs:
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - i_set_fatal_handler
                - i_set_error_handler
        - Branch String:   'master-service.c:757,57'
          Branch Sides:
            - BranchSide:      'master-service.c:758,13'
              BranchSideFuncs:
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - i_set_fatal_handler
                - i_set_error_handler
            - BranchSide:      'master-service.c:762,29'
              BranchSideFuncs:
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - i_set_fatal_handler
                - i_set_error_handler
        - Branch String:   'master-service.c:756,6'
          Branch Sides:
            - BranchSide:      'master-service.c:762,29'
              BranchSideFuncs:
                - syslog_facility_find
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - i_set_fatal_handler
                - i_set_error_handler
            - BranchSide:      'master-service.c:776,7'
              BranchSideFuncs:
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
        - Branch String:   'master-service.c:762,7'
          Branch Sides:
            - BranchSide:      'master-service.c:764,13'
              BranchSideFuncs:
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - i_set_fatal_handler
                - i_set_error_handler
            - BranchSide:      'master-service.c:765,24'
              BranchSideFuncs:
                - i_set_failure_syslog
                - i_set_failure_prefix
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
                - i_set_fatal_handler
                - i_set_error_handler
        - Branch String:   'master-service.c:769,7'
          Branch Sides:
            - BranchSide:      'master-service.c:771,4'
              BranchSideFuncs:
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
            - BranchSide:      'master-service.c:774,2'
              BranchSideFuncs:
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - strcmp
                - home_expand
                - i_set_info_file
        - Branch String:   'master-service.c:776,43'
          Branch Sides:
            - BranchSide:      'master-service.c:777,13'
              BranchSideFuncs:
                - strcmp
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - home_expand
                - i_set_info_file
            - BranchSide:      'master-service.c:783,7'
              BranchSideFuncs:
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
        - Branch String:   'master-service.c:776,6'
          Branch Sides:
            - BranchSide:      'master-service.c:778,22'
              BranchSideFuncs:
                - home_expand
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
                - i_set_info_file
            - BranchSide:      'master-service.c:783,7'
              BranchSideFuncs:
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
        - Branch String:   'master-service.c:779,7'
          Branch Sides:
            - BranchSide:      'master-service.c:780,20'
              BranchSideFuncs:
                - i_set_info_file
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
            - BranchSide:      'master-service.c:781,2'
              BranchSideFuncs:
                - i_set_failure_timestamp_format
                - strcmp
                - home_expand
                - i_set_debug_file
        - Branch String:   'master-service.c:783,44'
          Branch Sides:
            - BranchSide:      'master-service.c:784,13'
              BranchSideFuncs:
                - strcmp
                - i_set_failure_timestamp_format
                - home_expand
                - i_set_debug_file
            - BranchSide:      'master-service.c:789,33'
              BranchSideFuncs:
                - i_set_failure_timestamp_format
        - Branch String:   'master-service.c:783,6'
          Branch Sides:
            - BranchSide:      'master-service.c:785,22'
              BranchSideFuncs:
                - home_expand
                - i_set_failure_timestamp_format
                - i_set_debug_file
            - BranchSide:      'master-service.c:789,33'
              BranchSideFuncs:
                - i_set_failure_timestamp_format
        - Branch String:   'master-service.c:786,7'
          Branch Sides:
            - BranchSide:      'master-service.c:787,21'
              BranchSideFuncs:
                - i_set_debug_file
                - i_set_failure_timestamp_format
            - BranchSide:      'master-service.c:788,2'
              BranchSideFuncs:
                - i_set_failure_timestamp_format
      Callsites:
        - Src:             'master-service.c:730,15'
          Dst:             getenv
        - Src:             'master-service.c:732,4'
          Dst:             i_set_failure_timestamp_format
        - Src:             'master-service.c:733,3'
          Dst:             i_set_failure_file
        - Src:             'master-service.c:737,6'
          Dst:             getenv
        - Src:             'master-service.c:739,3'
          Dst:             i_set_failure_internal
        - Src:             'master-service.c:740,3'
          Dst:             i_set_failure_prefix
        - Src:             'master-service.c:745,3'
          Dst:             i_set_failure_file
        - Src:             'master-service.c:750,6'
          Dst:             strcmp
        - Src:             'master-service.c:752,10'
          Dst:             home_expand
        - Src:             'master-service.c:753,3'
          Dst:             i_set_failure_file
        - Src:             'master-service.c:756,6'
          Dst:             strcmp
        - Src:             'master-service.c:757,6'
          Dst:             strcmp
        - Src:             'master-service.c:758,6'
          Dst:             strcmp
        - Src:             'master-service.c:762,8'
          Dst:             syslog_facility_find
        - Src:             'master-service.c:765,3'
          Dst:             i_set_failure_syslog
        - Src:             'master-service.c:767,3'
          Dst:             i_set_failure_prefix
        - Src:             'master-service.c:769,7'
          Dst:             strcmp
        - Src:             'master-service.c:771,4'
          Dst:             i_set_fatal_handler
        - Src:             'master-service.c:771,4'
          Dst:             default_fatal_handler
        - Src:             'master-service.c:772,4'
          Dst:             i_set_error_handler
        - Src:             'master-service.c:772,4'
          Dst:             default_error_handler
        - Src:             'master-service.c:777,6'
          Dst:             strcmp
        - Src:             'master-service.c:778,10'
          Dst:             home_expand
        - Src:             'master-service.c:780,4'
          Dst:             i_set_info_file
        - Src:             'master-service.c:784,6'
          Dst:             strcmp
        - Src:             'master-service.c:785,10'
          Dst:             home_expand
        - Src:             'master-service.c:787,4'
          Dst:             i_set_debug_file
        - Src:             'master-service.c:789,2'
          Dst:             i_set_failure_timestamp_format
    - functionName:    master_service_init_log
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - master_service_init_log_with_prefix
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service.c:795,47'
          Dst:             t_strdup_printf
        - Src:             'master-service.c:795,2'
          Dst:             master_service_init_log_with_prefix
    - functionName:    master_getopt_long
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 703
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - longopt_r
      BBCount:         23
      ICount:          131
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - getopt_long
        - i_panic
        - master_getopt
        - master_getopt_str_is_valid
        - master_service_parse_option
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:685,6'
          Branch Sides:
            - BranchSide:      'master-service.c:686,24'
              BranchSideFuncs:
                - master_getopt
            - BranchSide:      'master-service.c:688,2'
              BranchSideFuncs:
                - master_getopt_str_is_valid
                - getopt_long
                - i_panic
                - master_service_parse_option
                - i_panic
        - Branch String:   'master-service.c:688,2'
          Branch Sides:
            - BranchSide:      'master-service.c:688,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:691,6'
              BranchSideFuncs:
                - getopt_long
                - i_panic
                - master_service_parse_option
        - Branch String:   'master-service.c:692,2'
          Branch Sides:
            - BranchSide:      'master-service.c:695,36'
              BranchSideFuncs:
                - master_service_parse_option
                - i_panic
                - getopt_long
            - BranchSide:      'master-service.c:698,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:695,7'
          Branch Sides:
            - BranchSide:      'master-service.c:692,2'
              BranchSideFuncs:
                - getopt_long
                - i_panic
                - master_service_parse_option
            - BranchSide:      'master-service.c:696,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:698,6'
          Branch Sides:
            - BranchSide:      'master-service.c:699,16'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:701,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:701,3'
          Branch Sides:
            - BranchSide:      'master-service.c:0,0'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:701,3'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'master-service.c:686,10'
          Dst:             master_getopt
        - Src:             'master-service.c:688,2'
          Dst:             master_getopt_str_is_valid
        - Src:             'master-service.c:688,2'
          Dst:             i_panic
        - Src:             'master-service.c:692,14'
          Dst:             getopt_long
        - Src:             'master-service.c:695,8'
          Dst:             master_service_parse_option
        - Src:             'master-service.c:701,3'
          Dst:             i_panic
    - functionName:    master_getopt
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 679
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         17
      ICount:          87
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - __posix_getopt
        - i_panic
        - master_getopt_str_is_valid
        - master_service_parse_option
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:671,2'
          Branch Sides:
            - BranchSide:      'master-service.c:671,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:673,2'
              BranchSideFuncs:
                - __posix_getopt
                - i_panic
                - master_service_parse_option
        - Branch String:   'master-service.c:673,2'
          Branch Sides:
            - BranchSide:      'master-service.c:675,36'
              BranchSideFuncs:
                - master_service_parse_option
                - i_panic
                - __posix_getopt
            - BranchSide:      'master-service.c:678,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:675,7'
          Branch Sides:
            - BranchSide:      'master-service.c:673,2'
              BranchSideFuncs:
                - __posix_getopt
                - i_panic
                - master_service_parse_option
            - BranchSide:      'master-service.c:676,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:678,2'
          Branch Sides:
            - BranchSide:      'master-service.c:678,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:678,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:671,2'
          Dst:             master_getopt_str_is_valid
        - Src:             'master-service.c:671,2'
          Dst:             i_panic
        - Src:             'master-service.c:673,14'
          Dst:             __posix_getopt
        - Src:             'master-service.c:675,8'
          Dst:             master_service_parse_option
        - Src:             'master-service.c:678,2'
          Dst:             i_panic
    - functionName:    master_getopt_str_is_valid
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 706
      functionLinenumberEnd: 720
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         19
      ICount:          118
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:711,2'
          Branch Sides:
            - BranchSide:      'master-service.c:712,7'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:719,2'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:712,21'
          Branch Sides:
            - BranchSide:      'master-service.c:712,24'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:713,4'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:712,38'
          Branch Sides:
            - BranchSide:      'master-service.c:712,41'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:713,4'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:712,7'
          Branch Sides:
            - BranchSide:      'master-service.c:713,4'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:714,12'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:714,3'
          Branch Sides:
            - BranchSide:      'master-service.c:715,8'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:718,2'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:715,8'
          Branch Sides:
            - BranchSide:      'master-service.c:716,5'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:717,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    getopt_long
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_parse_option
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 906
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - opt
        - arg
      BBCount:         19
      ICount:          139
      EdgeCount:       19
      CyclomaticComplexity: 2
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - get_instance_config
        - i_fatal
        - i_strdup
        - p_free_internal
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:875,2'
          Branch Sides:
            - BranchSide:      'master-service.c:877,3'
              BranchSideFuncs:
                - p_free_internal.2704
                - i_strdup
            - BranchSide:      'master-service.c:883,28'
              BranchSideFuncs:
                - get_instance_config
                - i_fatal
                - i_strdup
            - BranchSide:      'master-service.c:889,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:892,8'
              BranchSideFuncs:
                - array_is_created_i.2710
                - array_create_i.2726
                - array_append_i.2727
            - BranchSide:      'master-service.c:897,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:900,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:903,3'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:883,7'
          Branch Sides:
            - BranchSide:      'master-service.c:884,41'
              BranchSideFuncs:
                - i_strdup
            - BranchSide:      'master-service.c:885,35'
              BranchSideFuncs:
                - i_strdup
        - Branch String:   'master-service.c:892,7'
          Branch Sides:
            - BranchSide:      'master-service.c:893,4'
              BranchSideFuncs:
                - array_append_i.2727
            - BranchSide:      'master-service.c:894,3'
              BranchSideFuncs:
                - array_append_i.2727
      Callsites:
        - Src:             'master-service.c:877,3'
          Dst:             p_free_internal
        - Src:             'master-service.c:878,26'
          Dst:             i_strdup
        - Src:             'master-service.c:883,8'
          Dst:             get_instance_config
        - Src:             'master-service.c:884,4'
          Dst:             i_fatal
        - Src:             'master-service.c:885,26'
          Dst:             i_strdup
        - Src:             'master-service.c:892,8'
          Dst:             array_is_created_i
        - Src:             'master-service.c:893,4'
          Dst:             array_create_i
        - Src:             'master-service.c:894,3'
          Dst:             array_append_i
    - functionName:    __posix_getopt
      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:    master_service_register_long_options
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - longopts
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_verify_version_string
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         8
      ICount:          45
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_fatal
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:376,38'
          Branch Sides:
            - BranchSide:      'master-service.c:376,38'
              BranchSideFuncs:
                - strcmp
                - i_fatal
            - BranchSide:      'master-service.c:377,13'
              BranchSideFuncs:
                - strcmp
                - i_fatal
        - Branch String:   'master-service.c:376,6'
          Branch Sides:
            - BranchSide:      'master-service.c:376,6'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'master-service.c:381,4'
              BranchSideFuncs:
                - i_fatal
      Callsites:
        - Src:             'master-service.c:377,6'
          Dst:             strcmp
        - Src:             'master-service.c:378,3'
          Dst:             i_fatal
    - functionName:    master_service_set_service_count
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1117
      functionLinenumberEnd: 1129
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - service
        - count
      BBCount:         10
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1122,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1122,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1124,6'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:1124,6'
          Branch Sides:
            - BranchSide:      'master-service.c:1124,6'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:1125,36'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1122,2'
          Dst:             i_panic
    - functionName:    master_service_set_client_limit
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 1081
      functionLinenumberEnd: 1093
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - service
        - client_limit
      BBCount:         11
      ICount:          83
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service.c:1084,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1084,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1087,9'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'master-service.c:1089,2'
          Branch Sides:
            - BranchSide:      'master-service.c:1089,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:1089,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:1084,2'
          Dst:             i_panic
        - Src:             'master-service.c:1089,2'
          Dst:             i_panic
    - functionName:    master_service_init_socket_listeners
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         39
      ICount:          257
      EdgeCount:       50
      CyclomaticComplexity: 13
      functionsReached:
        - getenv
        - i_strdup_empty
        - malloc_multiply_check
        - master_admin_client_can_accept
        - p_free_internal
        - p_malloc
        - strchr
        - strcmp
        - t_strdup_printf
        - t_strdup_until
        - t_strsplit_tabescaped
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service.c:391,6'
          Branch Sides:
            - BranchSide:      'master-service.c:392,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:395,3'
              BranchSideFuncs:
                - malloc_multiply_check.2748
                - p_malloc.2749
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
                - i_strdup_empty
                - master_admin_client_can_accept
        - Branch String:   'master-service.c:397,2'
          Branch Sides:
            - BranchSide:      'master-service.c:398,40'
              BranchSideFuncs:
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
                - i_strdup_empty
                - master_admin_client_can_accept
            - BranchSide:      'master-service.c:438,29'
              BranchSideFuncs: []
        - Branch String:   'master-service.c:404,7'
          Branch Sides:
            - BranchSide:      'master-service.c:406,27'
              BranchSideFuncs:
                - t_strsplit_tabescaped
                - t_strdup_printf
                - getenv
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
                - i_strdup_empty
                - master_admin_client_can_accept
            - BranchSide:      'master-service.c:437,2'
              BranchSideFuncs:
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
                - i_strdup_empty
                - master_admin_client_can_accept
        - Branch String:   'master-service.c:408,8'
          Branch Sides:
            - BranchSide:      'master-service.c:409,31'
              BranchSideFuncs:
                - i_strdup_empty
                - master_admin_client_can_accept
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
            - BranchSide:      'master-service.c:414,4'
              BranchSideFuncs:
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - i_strdup_empty
                - master_admin_client_can_accept
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
        - Branch String:   'master-service.c:410,9'
          Branch Sides:
            - BranchSide:      'master-service.c:411,6'
              BranchSideFuncs:
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - i_strdup_empty
                - master_admin_client_can_accept
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
            - BranchSide:      'master-service.c:412,13'
              BranchSideFuncs:
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - i_strdup_empty
                - master_admin_client_can_accept
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
        - Branch String:   'master-service.c:414,4'
          Branch Sides:
            - BranchSide:      'master-service.c:417,22'
              BranchSideFuncs:
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - i_strdup_empty
                - master_admin_client_can_accept
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
            - BranchSide:      'master-service.c:436,3'
              BranchSideFuncs:
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
                - i_strdup_empty
                - master_admin_client_can_accept
        - Branch String:   'master-service.c:418,9'
          Branch Sides:
            - BranchSide:      'master-service.c:419,30'
              BranchSideFuncs:
                - t_strdup_until
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - i_strdup_empty
                - master_admin_client_can_accept
                - strchr
                - p_free_internal.2704
                - i_strdup_empty
            - BranchSide:      'master-service.c:422,15'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - i_strdup_empty
                - master_admin_client_can_accept
                - strchr
                - t_strdup_until
                - p_free_internal.2704
                - i_strdup_empty
        - Branch String:   'master-service.c:425,9'
          Branch Sides:
            - BranchSide:      'master-service.c:426,6'
              BranchSideFuncs:
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - i_strdup_empty
                - master_admin_client_can_accept
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
            - BranchSide:      'master-service.c:428,23'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - i_strdup_empty
                - master_admin_client_can_accept
                - strchr
                - strcmp
                - t_strdup_until
                - p_free_internal.2704
                - i_strdup_empty
        - Branch String:   'master-service.c:428,16'
          Branch Sides:
            - BranchSide:      'master-service.c:429,6'
              BranchSideFuncs:
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - i_strdup_empty
                - master_admin_client_can_accept
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - p_free_internal.2704
                - i_strdup_empty
                - t_strdup_until
            - BranchSide:      'master-service.c:430,23'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - getenv
                - t_strsplit_tabescaped
                - i_strdup_empty
                - master_admin_client_can_accept
                - strchr
                - strcmp
                - strcmp
                - t_strdup_until
                - p_free_internal.2704
                - i_strdup_empty
        - Branch String:   'master-service.c:438,46'
          Branch Sides:
            - BranchSide:      'master-service.c:438,2'
              BranchSideFuncs: []
            - BranchSide:      'master-service.c:439,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:395,3'
          Dst:             malloc_multiply_check
        - Src:             'master-service.c:395,3'
          Dst:             p_malloc
        - Src:             'master-service.c:403,18'
          Dst:             t_strdup_printf
        - Src:             'master-service.c:403,11'
          Dst:             getenv
        - Src:             'master-service.c:406,5'
          Dst:             t_strsplit_tabescaped
        - Src:             'master-service.c:409,15'
          Dst:             i_strdup_empty
        - Src:             'master-service.c:410,9'
          Dst:             master_admin_client_can_accept
        - Src:             'master-service.c:417,14'
          Dst:             strchr
        - Src:             'master-service.c:419,14'
          Dst:             t_strdup_until
        - Src:             'master-service.c:425,9'
          Dst:             strcmp
        - Src:             'master-service.c:428,16'
          Dst:             strcmp
        - Src:             'master-service.c:430,16'
          Dst:             strcmp
        - Src:             'master-service.c:431,6'
          Dst:             p_free_internal
        - Src:             'master-service.c:432,16'
          Dst:             i_strdup_empty
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-master/../../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-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    master_service_init
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - flags
        - argc
        - argv
        - getopt_str
      BBCount:         129
      ICount:          755
      EdgeCount:       166
      CyclomaticComplexity: 39
      functionsReached:
        - e_error
        - env_remove
        - event_create
        - event_filter_create
        - event_filter_parse
        - event_filter_unref
        - event_register_callback
        - event_set_global_debug_log_filter
        - event_set_ptr
        - getenv
        - getpid
        - i_fatal
        - i_panic
        - i_set_failure_internal
        - i_set_failure_prefix
        - i_strconcat
        - i_strdup
        - i_strdup_printf
        - io_loop_create
        - lib_init
        - lib_signals_ignore
        - lib_signals_init
        - malloc_multiply_check
        - master_service_event_callback
        - master_service_getopt_string
        - master_service_init_socket_listeners
        - master_service_set_client_limit
        - master_service_set_service_count
        - master_service_verify_version_string
        - p_malloc
        - process_title_init
        - process_title_set
        - restrict_access_allow_coredumps
        - settings_root_init
        - ssl_module_load
        - stats_client_init
        - str_to_uint
        - t_pop
        - t_push
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service.c:451,2'
          Branch Sides:
            - BranchSide:      'master-service.c:451,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:462,7'
              BranchSideFuncs:
                - lib_init
                - getenv
                - i_set_failure_prefix
                - lib_signals_init
                - lib_signals_ignore
                - lib_signals_ignore
                - getenv
                - process_title_init
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
                - getenv
                - process_title_set
                - t_push
                - restrict_access_allow_coredumps
        - Branch String:   'master-service.c:462,6'
          Branch Sides:
            - BranchSide:      'master-service.c:468,3'
              BranchSideFuncs:
                - restrict_access_allow_coredumps
                - lib_init
                - getenv
                - i_set_failure_prefix
                - lib_signals_init
                - lib_signals_ignore
                - lib_signals_ignore
                - getenv
                - process_title_init
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
                - getenv
                - process_title_set
                - t_push
            - BranchSide:      'master-service.c:473,2'
              BranchSideFuncs:
                - lib_init
                - getenv
                - i_set_failure_prefix
                - lib_signals_init
                - lib_signals_ignore
                - lib_signals_ignore
                - getenv
                - process_title_init
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
                - getenv
                - process_title_set
                - t_push
        - Branch String:   'master-service.c:485,6'
          Branch Sides:
            - BranchSide:      'master-service.c:486,29'
              BranchSideFuncs:
                - i_set_failure_prefix
                - lib_signals_init
                - lib_signals_ignore
                - lib_signals_ignore
                - getenv
                - process_title_init
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
                - getenv
                - process_title_set
                - t_push
            - BranchSide:      'master-service.c:489,37'
              BranchSideFuncs:
                - i_set_failure_prefix
                - lib_signals_init
                - lib_signals_ignore
                - lib_signals_ignore
                - getenv
                - process_title_init
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
                - getenv
                - process_title_set
                - t_push
        - Branch String:   'master-service.c:494,6'
          Branch Sides:
            - BranchSide:      'master-service.c:495,24'
              BranchSideFuncs:
                - t_push
                - lib_signals_init
                - lib_signals_ignore
                - lib_signals_ignore
                - getenv
                - process_title_init
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
                - getenv
                - process_title_set
            - BranchSide:      'master-service.c:498,2'
              BranchSideFuncs:
                - lib_signals_init
                - lib_signals_ignore
                - lib_signals_ignore
                - getenv
                - process_title_init
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
                - getenv
                - process_title_set
        - Branch String:   'master-service.c:502,6'
          Branch Sides:
            - BranchSide:      'master-service.c:503,9'
              BranchSideFuncs:
                - process_title_init
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
                - getenv
                - process_title_set
            - BranchSide:      'master-service.c:505,22'
              BranchSideFuncs:
                - process_title_init
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
                - getenv
                - process_title_set
        - Branch String:   'master-service.c:506,52'
          Branch Sides:
            - BranchSide:      'master-service.c:507,6'
              BranchSideFuncs:
                - getenv
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
                - process_title_set
            - BranchSide:      'master-service.c:512,28'
              BranchSideFuncs:
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
        - Branch String:   'master-service.c:506,6'
          Branch Sides:
            - BranchSide:      'master-service.c:508,3'
              BranchSideFuncs:
                - process_title_set
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
            - BranchSide:      'master-service.c:512,28'
              BranchSideFuncs:
                - getenv
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
        - Branch String:   'master-service.c:513,6'
          Branch Sides:
            - BranchSide:      'master-service.c:514,29'
              BranchSideFuncs:
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
            - BranchSide:      'master-service.c:516,12'
              BranchSideFuncs:
                - malloc_multiply_check.2748
                - p_malloc.2749
                - i_strdup
                - i_strdup
                - settings_root_init
                - i_strdup_printf
                - event_register_callback
                - event_create
                - event_set_ptr
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
                - master_service_getopt_string
                - i_strdup
        - Branch String:   'master-service.c:533,24'
          Branch Sides:
            - BranchSide:      'master-service.c:534,12'
              BranchSideFuncs:
                - master_service_getopt_string
                - i_strdup
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
            - BranchSide:      'master-service.c:535,15'
              BranchSideFuncs:
                - master_service_getopt_string
                - i_strconcat
                - io_loop_create
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
                - getenv
                - i_strdup
        - Branch String:   'master-service.c:542,6'
          Branch Sides:
            - BranchSide:      'master-service.c:543,35'
              BranchSideFuncs:
                - getenv
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
            - BranchSide:      'master-service.c:544,6'
              BranchSideFuncs:
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
                - i_strdup
        - Branch String:   'master-service.c:544,6'
          Branch Sides:
            - BranchSide:      'master-service.c:545,26'
              BranchSideFuncs:
                - i_strdup
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
            - BranchSide:      'master-service.c:547,3'
              BranchSideFuncs:
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - i_panic
                - i_fatal
        - Branch String:   'master-service.c:549,6'
          Branch Sides:
            - BranchSide:      'master-service.c:550,29'
              BranchSideFuncs:
                - getenv
                - getenv
                - str_to_uint
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - i_panic
                - i_fatal
            - BranchSide:      'master-service.c:559,3'
              BranchSideFuncs:
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
        - Branch String:   'master-service.c:553,21'
          Branch Sides:
            - BranchSide:      'master-service.c:553,36'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'master-service.c:554,4'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'master-service.c:553,7'
          Branch Sides:
            - BranchSide:      'master-service.c:554,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'master-service.c:555,3'
              BranchSideFuncs:
                - t_push
                - master_service_init_socket_listeners
                - t_pop
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
                - i_panic
        - Branch String:   'master-service.c:557,5'
          Branch Sides:
            - BranchSide:      'master-service.c:557,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:557,5'
              BranchSideFuncs:
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - ssl_module_load
                - i_fatal
        - Branch String:   'master-service.c:564,6'
          Branch Sides:
            - BranchSide:      'master-service.c:566,7'
              BranchSideFuncs:
                - ssl_module_load
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
                - i_fatal
            - BranchSide:      'master-service.c:572,6'
              BranchSideFuncs:
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
        - Branch String:   'master-service.c:566,7'
          Branch Sides:
            - BranchSide:      'master-service.c:567,42'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'master-service.c:568,2'
              BranchSideFuncs:
                - getenv
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
                - i_set_failure_internal
        - Branch String:   'master-service.c:572,6'
          Branch Sides:
            - BranchSide:      'master-service.c:573,3'
              BranchSideFuncs:
                - i_set_failure_internal
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
            - BranchSide:      'master-service.c:574,6'
              BranchSideFuncs:
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
                - getenv
                - i_set_failure_prefix
        - Branch String:   'master-service.c:574,6'
          Branch Sides:
            - BranchSide:      'master-service.c:575,36'
              BranchSideFuncs:
                - getenv
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
            - BranchSide:      'master-service.c:578,32'
              BranchSideFuncs:
                - i_set_failure_prefix
                - getenv
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - e_error
        - Branch String:   'master-service.c:583,6'
          Branch Sides:
            - BranchSide:      'master-service.c:586,12'
              BranchSideFuncs:
                - event_filter_create
                - event_filter_parse
                - event_set_global_debug_log_filter
                - event_filter_unref
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
                - e_error
            - BranchSide:      'master-service.c:597,7'
              BranchSideFuncs:
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
        - Branch String:   'master-service.c:587,7'
          Branch Sides:
            - BranchSide:      'master-service.c:588,4'
              BranchSideFuncs:
                - e_error
                - event_filter_unref
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
            - BranchSide:      'master-service.c:592,38'
              BranchSideFuncs:
                - event_set_global_debug_log_filter
                - event_filter_unref
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
        - Branch String:   'master-service.c:597,6'
          Branch Sides:
            - BranchSide:      'master-service.c:599,11'
              BranchSideFuncs:
                - getenv
                - str_to_uint
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
                - i_fatal
            - BranchSide:      'master-service.c:634,35'
              BranchSideFuncs:
                - master_service_set_client_limit
                - master_service_set_service_count
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
        - Branch String:   'master-service.c:600,21'
          Branch Sides:
            - BranchSide:      'master-service.c:601,19'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'master-service.c:602,4'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'master-service.c:600,7'
          Branch Sides:
            - BranchSide:      'master-service.c:602,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'master-service.c:603,32'
              BranchSideFuncs:
                - getpid
                - getenv
                - str_to_uint
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
                - i_fatal
        - Branch String:   'master-service.c:607,21'
          Branch Sides:
            - BranchSide:      'master-service.c:607,36'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'master-service.c:609,4'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'master-service.c:607,55'
          Branch Sides:
            - BranchSide:      'master-service.c:608,7'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'master-service.c:609,4'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'master-service.c:607,7'
          Branch Sides:
            - BranchSide:      'master-service.c:609,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'master-service.c:610,35'
              BranchSideFuncs:
                - master_service_set_client_limit
                - getenv
                - getenv
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
                - str_to_uint
        - Branch String:   'master-service.c:614,21'
          Branch Sides:
            - BranchSide:      'master-service.c:614,36'
              BranchSideFuncs:
                - str_to_uint
                - getenv
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
            - BranchSide:      'master-service.c:618,11'
              BranchSideFuncs:
                - getenv
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
        - Branch String:   'master-service.c:614,56'
          Branch Sides:
            - BranchSide:      'master-service.c:615,7'
              BranchSideFuncs:
                - getenv
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
            - BranchSide:      'master-service.c:618,11'
              BranchSideFuncs:
                - getenv
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
        - Branch String:   'master-service.c:614,7'
          Branch Sides:
            - BranchSide:      'master-service.c:616,29'
              BranchSideFuncs:
                - getenv
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
            - BranchSide:      'master-service.c:618,11'
              BranchSideFuncs:
                - getenv
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
                - str_to_uint
        - Branch String:   'master-service.c:619,21'
          Branch Sides:
            - BranchSide:      'master-service.c:619,36'
              BranchSideFuncs:
                - str_to_uint
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
            - BranchSide:      'master-service.c:624,11'
              BranchSideFuncs:
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
        - Branch String:   'master-service.c:619,56'
          Branch Sides:
            - BranchSide:      'master-service.c:620,7'
              BranchSideFuncs:
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
            - BranchSide:      'master-service.c:624,11'
              BranchSideFuncs:
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
        - Branch String:   'master-service.c:619,7'
          Branch Sides:
            - BranchSide:      'master-service.c:621,33'
              BranchSideFuncs:
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
            - BranchSide:      'master-service.c:624,11'
              BranchSideFuncs:
                - getenv
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - str_to_uint
                - master_service_set_service_count
        - Branch String:   'master-service.c:625,21'
          Branch Sides:
            - BranchSide:      'master-service.c:625,36'
              BranchSideFuncs:
                - str_to_uint
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - master_service_set_service_count
            - BranchSide:      'master-service.c:630,11'
              BranchSideFuncs:
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
        - Branch String:   'master-service.c:625,56'
          Branch Sides:
            - BranchSide:      'master-service.c:626,7'
              BranchSideFuncs:
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
                - master_service_set_service_count
            - BranchSide:      'master-service.c:630,11'
              BranchSideFuncs:
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
        - Branch String:   'master-service.c:625,7'
          Branch Sides:
            - BranchSide:      'master-service.c:627,37'
              BranchSideFuncs:
                - master_service_set_service_count
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
            - BranchSide:      'master-service.c:630,11'
              BranchSideFuncs:
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
                - str_to_uint
        - Branch String:   'master-service.c:631,21'
          Branch Sides:
            - BranchSide:      'master-service.c:631,36'
              BranchSideFuncs:
                - str_to_uint
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
            - BranchSide:      'master-service.c:633,2'
              BranchSideFuncs:
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
        - Branch String:   'master-service.c:631,7'
          Branch Sides:
            - BranchSide:      'master-service.c:632,30'
              BranchSideFuncs:
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
            - BranchSide:      'master-service.c:633,2'
              BranchSideFuncs:
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - getenv
                - stats_client_init
        - Branch String:   'master-service.c:637,6'
          Branch Sides:
            - BranchSide:      'master-service.c:639,11'
              BranchSideFuncs:
                - getenv
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - stats_client_init
            - BranchSide:      'master-service.c:644,39'
              BranchSideFuncs:
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
        - Branch String:   'master-service.c:640,21'
          Branch Sides:
            - BranchSide:      'master-service.c:640,24'
              BranchSideFuncs:
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
                - stats_client_init
            - BranchSide:      'master-service.c:642,2'
              BranchSideFuncs:
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
        - Branch String:   'master-service.c:640,7'
          Branch Sides:
            - BranchSide:      'master-service.c:641,46'
              BranchSideFuncs:
                - stats_client_init
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
            - BranchSide:      'master-service.c:642,2'
              BranchSideFuncs:
                - master_service_verify_version_string
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
        - Branch String:   'master-service.c:646,6'
          Branch Sides:
            - BranchSide:      'master-service.c:646,6'
              BranchSideFuncs:
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
            - BranchSide:      'master-service.c:647,3'
              BranchSideFuncs:
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - t_push
                - t_pop
                - i_panic
                - t_strdup_printf
                - env_remove
        - Branch String:   'master-service.c:652,4'
          Branch Sides:
            - BranchSide:      'master-service.c:653,53'
              BranchSideFuncs:
                - t_strdup_printf
                - env_remove
                - t_pop
                - i_panic
            - BranchSide:      'master-service.c:654,5'
              BranchSideFuncs:
                - t_pop
                - i_panic
        - Branch String:   'master-service.c:654,5'
          Branch Sides:
            - BranchSide:      'master-service.c:654,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service.c:654,5'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service.c:451,2'
          Dst:             i_panic
        - Src:             'master-service.c:468,3'
          Dst:             restrict_access_allow_coredumps
        - Src:             'master-service.c:473,2'
          Dst:             lib_init
        - Src:             'master-service.c:484,28'
          Dst:             getenv
        - Src:             'master-service.c:489,2'
          Dst:             i_set_failure_prefix
        - Src:             'master-service.c:495,24'
          Dst:             t_push
        - Src:             'master-service.c:498,2'
          Dst:             lib_signals_init
        - Src:             'master-service.c:499,2'
          Dst:             lib_signals_ignore
        - Src:             'master-service.c:500,2'
          Dst:             lib_signals_ignore
        - Src:             'master-service.c:502,6'
          Dst:             getenv
        - Src:             'master-service.c:505,2'
          Dst:             process_title_init
        - Src:             'master-service.c:507,6'
          Dst:             getenv
        - Src:             'master-service.c:508,3'
          Dst:             process_title_set
        - Src:             'master-service.c:512,28'
          Dst:             getenv
        - Src:             'master-service.c:516,12'
          Dst:             malloc_multiply_check
        - Src:             'master-service.c:516,12'
          Dst:             p_malloc
        - Src:             'master-service.c:519,18'
          Dst:             i_strdup
        - Src:             'master-service.c:520,29'
          Dst:             i_strdup
        - Src:             'master-service.c:521,27'
          Dst:             settings_root_init
        - Src:             'master-service.c:524,3'
          Dst:             i_strdup_printf
        - Src:             'master-service.c:526,2'
          Dst:             event_register_callback
        - Src:             'master-service.c:526,2'
          Dst:             master_service_event_callback
        - Src:             'master-service.c:528,19'
          Dst:             event_create
        - Src:             'master-service.c:529,2'
          Dst:             event_set_ptr
        - Src:             'master-service.c:534,12'
          Dst:             master_service_getopt_string
        - Src:             'master-service.c:534,3'
          Dst:             i_strdup
        - Src:             'master-service.c:535,27'
          Dst:             master_service_getopt_string
        - Src:             'master-service.c:535,3'
          Dst:             i_strconcat
        - Src:             'master-service.c:537,20'
          Dst:             io_loop_create
        - Src:             'master-service.c:541,34'
          Dst:             getenv
        - Src:             'master-service.c:541,25'
          Dst:             i_strdup
        - Src:             'master-service.c:543,35'
          Dst:             getenv
        - Src:             'master-service.c:543,26'
          Dst:             i_strdup
        - Src:             'master-service.c:545,26'
          Dst:             i_strdup
        - Src:             'master-service.c:550,29'
          Dst:             getenv
        - Src:             'master-service.c:552,11'
          Dst:             getenv
        - Src:             'master-service.c:553,24'
          Dst:             str_to_uint
        - Src:             'master-service.c:554,4'
          Dst:             i_fatal
        - Src:             'master-service.c:555,3'
          Dst:             t_push
        - Src:             'master-service.c:556,4'
          Dst:             master_service_init_socket_listeners
        - Src:             'master-service.c:557,5'
          Dst:             t_pop
        - Src:             'master-service.c:557,5'
          Dst:             i_panic
        - Src:             'master-service.c:566,7'
          Dst:             ssl_module_load
        - Src:             'master-service.c:567,4'
          Dst:             i_fatal
        - Src:             'master-service.c:572,6'
          Dst:             getenv
        - Src:             'master-service.c:573,3'
          Dst:             i_set_failure_internal
        - Src:             'master-service.c:574,6'
          Dst:             getenv
        - Src:             'master-service.c:576,10'
          Dst:             getenv
        - Src:             'master-service.c:575,3'
          Dst:             i_set_failure_prefix
        - Src:             'master-service.c:578,3'
          Dst:             i_set_failure_prefix
        - Src:             'master-service.c:582,10'
          Dst:             getenv
        - Src:             'master-service.c:586,12'
          Dst:             event_filter_create
        - Src:             'master-service.c:587,7'
          Dst:             event_filter_parse
        - Src:             'master-service.c:588,4'
          Dst:             e_error
        - Src:             'master-service.c:592,4'
          Dst:             event_set_global_debug_log_filter
        - Src:             'master-service.c:594,3'
          Dst:             event_filter_unref
        - Src:             'master-service.c:599,11'
          Dst:             getenv
        - Src:             'master-service.c:601,7'
          Dst:             str_to_uint
        - Src:             'master-service.c:602,4'
          Dst:             i_fatal
        - Src:             'master-service.c:603,32'
          Dst:             getpid
        - Src:             'master-service.c:606,11'
          Dst:             getenv
        - Src:             'master-service.c:607,24'
          Dst:             str_to_uint
        - Src:             'master-service.c:609,4'
          Dst:             i_fatal
        - Src:             'master-service.c:610,3'
          Dst:             master_service_set_client_limit
        - Src:             'master-service.c:613,11'
          Dst:             getenv
        - Src:             'master-service.c:614,24'
          Dst:             str_to_uint
        - Src:             'master-service.c:618,11'
          Dst:             getenv
        - Src:             'master-service.c:619,24'
          Dst:             str_to_uint
        - Src:             'master-service.c:624,11'
          Dst:             getenv
        - Src:             'master-service.c:625,24'
          Dst:             str_to_uint
        - Src:             'master-service.c:627,4'
          Dst:             master_service_set_service_count
        - Src:             'master-service.c:630,11'
          Dst:             getenv
        - Src:             'master-service.c:631,24'
          Dst:             str_to_uint
        - Src:             'master-service.c:634,3'
          Dst:             master_service_set_client_limit
        - Src:             'master-service.c:635,3'
          Dst:             master_service_set_service_count
        - Src:             'master-service.c:639,11'
          Dst:             getenv
        - Src:             'master-service.c:641,28'
          Dst:             stats_client_init
        - Src:             'master-service.c:644,2'
          Dst:             master_service_verify_version_string
        - Src:             'master-service.c:647,3'
          Dst:             env_remove
        - Src:             'master-service.c:648,3'
          Dst:             env_remove
        - Src:             'master-service.c:649,3'
          Dst:             env_remove
        - Src:             'master-service.c:650,3'
          Dst:             env_remove
        - Src:             'master-service.c:651,3'
          Dst:             t_push
        - Src:             'master-service.c:653,16'
          Dst:             t_strdup_printf
        - Src:             'master-service.c:653,5'
          Dst:             env_remove
        - Src:             'master-service.c:654,5'
          Dst:             t_pop
        - Src:             'master-service.c:654,5'
          Dst:             i_panic
    - functionName:    master_service_getopt_string
      functionSourceFile: '/src/dovecot/src/lib-master/master-service.c'
      linkageType:     externalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_bswap_32
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 109
      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:    be32_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
      BBCount:         1
      ICount:          33
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cpu32_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 231
      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
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/byteorder.h:231,1'
          Dst:             be32_to_cpu_unaligned
        - Src:             '../../src/lib/byteorder.h:231,1'
          Dst:             i_bswap_32
    - functionName:    master_service_haproxy_parse_ssl_tlv
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - hpconn
        - ssl_kv
        - error_r
      BBCount:         16
      ICount:          130
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - get_tlv
        - p_strndup
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service-haproxy.c:216,2'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:218,15'
              BranchSideFuncs:
                - get_tlv
                - p_strndup
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:236,2'
              BranchSideFuncs: []
        - Branch String:   'master-service-haproxy.c:218,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:220,28'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:223,28'
              BranchSideFuncs:
                - p_strndup
                - get_tlv
                - t_strdup_printf
        - Branch String:   'master-service-haproxy.c:224,3'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:216,2'
              BranchSideFuncs:
                - get_tlv
                - p_strndup
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:229,4'
              BranchSideFuncs:
                - get_tlv
                - p_strndup
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:229,4'
              BranchSideFuncs:
                - get_tlv
                - p_strndup
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:229,4'
              BranchSideFuncs:
                - get_tlv
                - p_strndup
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:232,15'
              BranchSideFuncs:
                - p_strndup
                - get_tlv
                - t_strdup_printf
      Callsites:
        - Src:             'master-service-haproxy.c:218,7'
          Dst:             get_tlv
        - Src:             'master-service-haproxy.c:219,15'
          Dst:             t_strdup_printf
        - Src:             'master-service-haproxy.c:232,5'
          Dst:             p_strndup
    - functionName:    get_tlv
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - kvdata
        - dlen
        - kv
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-service-haproxy.c:190,6'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:191,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service-haproxy.c:198,13'
              BranchSideFuncs: []
        - Branch String:   'master-service-haproxy.c:202,6'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:203,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service-haproxy.c:205,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    get_ssl_tlv
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - kvdata
        - dlen
        - kv
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cpu32_to_cpu_unaligned
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service-haproxy.c:177,6'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:178,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service-haproxy.c:179,15'
              BranchSideFuncs:
                - cpu32_to_cpu_unaligned
      Callsites:
        - Src:             'master-service-haproxy.c:181,15'
          Dst:             cpu32_to_cpu_unaligned
    - functionName:    master_service_haproxy_parse_tlv
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - hpconn
        - buf
        - blen
        - error_r
      BBCount:         20
      ICount:          173
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - connection_is_valid_dns_name
        - get_ssl_tlv
        - get_tlv
        - master_service_haproxy_parse_ssl_tlv
        - p_memdup
        - p_strndup
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service-haproxy.c:244,2'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:248,15'
              BranchSideFuncs:
                - get_tlv
                - get_ssl_tlv
                - master_service_haproxy_parse_ssl_tlv
                - t_strdup_printf
                - p_strndup
                - connection_is_valid_dns_name
                - t_strdup_printf
                - p_memdup
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:284,2'
              BranchSideFuncs: []
        - Branch String:   'master-service-haproxy.c:248,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:250,28'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:255,27'
              BranchSideFuncs:
                - get_ssl_tlv
                - master_service_haproxy_parse_ssl_tlv
                - get_tlv
                - t_strdup_printf
                - t_strdup_printf
                - p_strndup
                - connection_is_valid_dns_name
                - t_strdup_printf
                - p_memdup
        - Branch String:   'master-service-haproxy.c:255,17'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:257,40'
              BranchSideFuncs:
                - p_memdup
                - get_tlv
                - get_ssl_tlv
                - master_service_haproxy_parse_ssl_tlv
                - t_strdup_printf
                - p_strndup
                - connection_is_valid_dns_name
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:264,15'
              BranchSideFuncs:
                - p_strndup
                - connection_is_valid_dns_name
                - t_strdup_printf
                - get_tlv
                - get_ssl_tlv
                - master_service_haproxy_parse_ssl_tlv
                - t_strdup_printf
                - p_memdup
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:273,23'
              BranchSideFuncs:
                - get_ssl_tlv
                - master_service_haproxy_parse_ssl_tlv
                - get_tlv
                - p_strndup
                - connection_is_valid_dns_name
                - t_strdup_printf
                - p_memdup
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:282,28'
              BranchSideFuncs:
                - get_tlv
                - get_ssl_tlv
                - master_service_haproxy_parse_ssl_tlv
                - t_strdup_printf
                - p_strndup
                - connection_is_valid_dns_name
                - t_strdup_printf
                - p_memdup
                - t_strdup_printf
        - Branch String:   'master-service-haproxy.c:265,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:266,16'
              BranchSideFuncs:
                - get_tlv
                - get_ssl_tlv
                - master_service_haproxy_parse_ssl_tlv
                - t_strdup_printf
                - p_strndup
                - connection_is_valid_dns_name
                - t_strdup_printf
                - p_memdup
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:271,25'
              BranchSideFuncs:
                - get_tlv
                - get_ssl_tlv
                - master_service_haproxy_parse_ssl_tlv
                - t_strdup_printf
                - p_strndup
                - connection_is_valid_dns_name
                - t_strdup_printf
                - p_memdup
                - t_strdup_printf
        - Branch String:   'master-service-haproxy.c:273,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:275,29'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'master-service-haproxy.c:278,66'
              BranchSideFuncs:
                - master_service_haproxy_parse_ssl_tlv
                - get_tlv
                - get_ssl_tlv
                - t_strdup_printf
                - p_strndup
                - connection_is_valid_dns_name
                - t_strdup_printf
                - p_memdup
                - t_strdup_printf
        - Branch String:   'master-service-haproxy.c:278,29'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:279,5'
              BranchSideFuncs: []
            - BranchSide:      'master-service-haproxy.c:280,25'
              BranchSideFuncs:
                - get_tlv
                - get_ssl_tlv
                - master_service_haproxy_parse_ssl_tlv
                - t_strdup_printf
                - p_strndup
                - connection_is_valid_dns_name
                - t_strdup_printf
                - p_memdup
                - t_strdup_printf
      Callsites:
        - Src:             'master-service-haproxy.c:248,7'
          Dst:             get_tlv
        - Src:             'master-service-haproxy.c:249,15'
          Dst:             t_strdup_printf
        - Src:             'master-service-haproxy.c:259,5'
          Dst:             p_memdup
        - Src:             'master-service-haproxy.c:264,5'
          Dst:             p_strndup
        - Src:             'master-service-haproxy.c:265,9'
          Dst:             connection_is_valid_dns_name
        - Src:             'master-service-haproxy.c:266,16'
          Dst:             t_strdup_printf
        - Src:             'master-service-haproxy.c:273,8'
          Dst:             get_ssl_tlv
        - Src:             'master-service-haproxy.c:274,16'
          Dst:             t_strdup_printf
        - Src:             'master-service-haproxy.c:278,29'
          Dst:             master_service_haproxy_parse_ssl_tlv
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:80,2'
          Dst:             i_panic
    - functionName:    master_service_haproxy_recv
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - fd
        - buf
        - len
        - flags
      BBCount:         21
      ICount:          106
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - recv
      functionUses:    3
      BranchProfiles:
        - Branch String:   'master-service-haproxy.c:161,19'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:161,22'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - recv
            - BranchSide:      'master-service-haproxy.c:161,2'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - recv
                - __errno_location
        - Branch String:   'master-service-haproxy.c:161,2'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:160,14'
              BranchSideFuncs:
                - recv
                - __errno_location
                - __errno_location
                - __errno_location
            - BranchSide:      'master-service-haproxy.c:163,6'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
        - Branch String:   'master-service-haproxy.c:163,14'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:163,17'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
            - BranchSide:      'master-service-haproxy.c:165,6'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'master-service-haproxy.c:163,6'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:164,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service-haproxy.c:165,6'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'master-service-haproxy.c:165,6'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:166,7'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'master-service-haproxy.c:171,9'
              BranchSideFuncs: []
        - Branch String:   'master-service-haproxy.c:166,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:167,4'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'master-service-haproxy.c:168,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service-haproxy.c:160,9'
          Dst:             recv
        - Src:             'master-service-haproxy.c:161,22'
          Dst:             __errno_location
        - Src:             'master-service-haproxy.c:163,17'
          Dst:             __errno_location
        - Src:             'master-service-haproxy.c:167,4'
          Dst:             __errno_location
    - functionName:    recv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_haproxy_conn_success
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - hpconn
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - master_service_client_connection_callback
        - master_service_haproxy_conn_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service-haproxy.c:142,2'
          Dst:             master_service_haproxy_conn_free
        - Src:             'master-service-haproxy.c:143,2'
          Dst:             master_service_client_connection_callback
    - functionName:    master_service_haproxy_conn_free
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - hpconn
      BBCount:         14
      ICount:          102
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - event_unref
        - io_remove
        - pool_unref
        - timeout_remove
      functionUses:    3
      BranchProfiles:
        - Branch String:   'master-service-haproxy.c:118,2'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:118,2'
              BranchSideFuncs:
                - io_remove
                - timeout_remove
                - event_unref
                - pool_unref.2830
            - BranchSide:      'master-service-haproxy.c:118,2'
              BranchSideFuncs:
                - io_remove
                - timeout_remove
                - event_unref
                - pool_unref.2830
        - Branch String:   'master-service-haproxy.c:118,2'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:118,2'
              BranchSideFuncs:
                - io_remove
                - timeout_remove
                - event_unref
                - pool_unref.2830
            - BranchSide:      'master-service-haproxy.c:118,2'
              BranchSideFuncs:
                - io_remove
                - timeout_remove
                - event_unref
                - pool_unref.2830
      Callsites:
        - Src:             'master-service-haproxy.c:120,2'
          Dst:             io_remove
        - Src:             'master-service-haproxy.c:121,2'
          Dst:             timeout_remove
        - Src:             'master-service-haproxy.c:122,2'
          Dst:             event_unref
        - Src:             'master-service-haproxy.c:123,2'
          Dst:             pool_unref
    - functionName:    master_service_haproxy_conn_failure
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - hpconn
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - master_service_client_connection_handled
        - master_service_haproxy_conn_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service-haproxy.c:132,2'
          Dst:             master_service_haproxy_conn_free
        - Src:             'master-service-haproxy.c:133,2'
          Dst:             master_service_client_connection_handled
    - functionName:    master_service_haproxy_read
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - hpconn
      BBCount:         129
      ICount:          1063
      EdgeCount:       166
      CyclomaticComplexity: 39
      functionsReached:
        - e_error
        - e_info
        - event_drop_parent_log_prefixes
        - event_set_append_log_prefix
        - i_memcpy
        - i_panic
        - i_unreached
        - master_service_haproxy_parse_tlv
        - master_service_haproxy_recv
        - memchr
        - memcmp
        - net_addr2ip
        - net_ip2addr
        - net_str2port
        - ntohs
        - str_sanitize
        - strcmp
        - t_strsplit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service-haproxy.c:320,6'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:321,7'
              BranchSideFuncs:
                - net_ip2addr
                - e_info
            - BranchSide:      'master-service-haproxy.c:326,13'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
                - memcmp
                - ntohs
                - master_service_haproxy_recv
                - i_unreached
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_error
                - memcmp
        - Branch String:   'master-service-haproxy.c:321,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:322,4'
              BranchSideFuncs:
                - net_ip2addr
                - e_info
            - BranchSide:      'master-service-haproxy.c:324,10'
              BranchSideFuncs: []
        - Branch String:   'master-service-haproxy.c:326,22'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:326,32'
              BranchSideFuncs:
                - memcmp
                - net_ip2addr
                - e_error
                - memcmp
                - ntohs
                - master_service_haproxy_recv
                - i_unreached
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:329,21'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
                - memcmp
                - ntohs
                - master_service_haproxy_recv
                - i_unreached
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:326,13'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:328,11'
              BranchSideFuncs:
                - i_unreached
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
            - BranchSide:      'master-service-haproxy.c:329,21'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
                - memcmp
                - ntohs
                - master_service_haproxy_recv
                - i_unreached
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:329,48'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:330,13'
              BranchSideFuncs:
                - memcmp
                - net_ip2addr
                - e_error
                - ntohs
                - master_service_haproxy_recv
                - i_unreached
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:356,3'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:329,13'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:331,16'
              BranchSideFuncs:
                - ntohs
                - master_service_haproxy_recv
                - i_unreached
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:356,3'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:332,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:333,4'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:339,42'
              BranchSideFuncs:
                - master_service_haproxy_recv
                - i_unreached
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - net_ip2addr
                - e_info
                - net_ip2addr
                - e_info
        - Branch String:   'master-service-haproxy.c:339,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:340,8'
              BranchSideFuncs:
                - net_ip2addr
                - e_info
            - BranchSide:      'master-service-haproxy.c:347,7'
              BranchSideFuncs:
                - i_unreached
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - net_ip2addr
                - e_info
        - Branch String:   'master-service-haproxy.c:340,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:341,5'
              BranchSideFuncs:
                - net_ip2addr
                - e_info
            - BranchSide:      'master-service-haproxy.c:344,11'
              BranchSideFuncs: []
        - Branch String:   'master-service-haproxy.c:347,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:348,4'
              BranchSideFuncs:
                - net_ip2addr
                - e_info
            - BranchSide:      'master-service-haproxy.c:353,11'
              BranchSideFuncs:
                - i_unreached
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
        - Branch String:   'master-service-haproxy.c:369,6'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:370,42'
              BranchSideFuncs:
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
            - BranchSide:      'master-service-haproxy.c:489,13'
              BranchSideFuncs:
                - i_unreached
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
        - Branch String:   'master-service-haproxy.c:374,3'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:374,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service-haproxy.c:376,8'
              BranchSideFuncs:
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:376,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:377,4'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:384,19'
              BranchSideFuncs:
                - ntohs
                - event_set_append_log_prefix
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:392,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:393,4'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:400,5'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:402,3'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:407,8'
              BranchSideFuncs:
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
            - BranchSide:      'master-service-haproxy.c:410,9'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:467,4'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:410,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:412,5'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:417,13'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - net_ip2addr
                - e_error
                - ntohs
                - ntohs
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:417,4'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:420,9'
              BranchSideFuncs:
                - ntohs
                - ntohs
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:436,9'
              BranchSideFuncs:
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:453,5'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
            - BranchSide:      'master-service-haproxy.c:453,5'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
            - BranchSide:      'master-service-haproxy.c:459,5'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:420,9'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:421,6'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:426,14'
              BranchSideFuncs:
                - ntohs
                - ntohs
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
        - Branch String:   'master-service-haproxy.c:436,9'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:437,6'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:442,14'
              BranchSideFuncs:
                - i_memcpy.2834
                - ntohs
                - i_memcpy.2834
                - ntohs
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
                - e_error
        - Branch String:   'master-service-haproxy.c:474,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:475,4'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'master-service-haproxy.c:480,40'
              BranchSideFuncs:
                - master_service_haproxy_parse_tlv
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:480,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:481,4'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:489,2'
              BranchSideFuncs: []
        - Branch String:   'master-service-haproxy.c:489,13'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:490,25'
              BranchSideFuncs:
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
                - i_panic
            - BranchSide:      'master-service-haproxy.c:624,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'master-service-haproxy.c:494,3'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:494,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service-haproxy.c:497,16'
              BranchSideFuncs:
                - memchr
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
        - Branch String:   'master-service-haproxy.c:498,19'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:498,22'
              BranchSideFuncs: []
            - BranchSide:      'master-service-haproxy.c:499,4'
              BranchSideFuncs: []
        - Branch String:   'master-service-haproxy.c:498,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:499,4'
              BranchSideFuncs: []
            - BranchSide:      'master-service-haproxy.c:500,4'
              BranchSideFuncs:
                - t_strsplit
                - strcmp
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - i_panic
        - Branch String:   'master-service-haproxy.c:505,3'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:505,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service-haproxy.c:506,9'
              BranchSideFuncs:
                - event_drop_parent_log_prefixes
                - event_set_append_log_prefix
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:512,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:513,4'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:518,15'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:518,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:519,11'
              BranchSideFuncs:
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:520,22'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:520,14'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:521,11'
              BranchSideFuncs:
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:522,22'
              BranchSideFuncs:
                - strcmp
                - str_sanitize
                - net_ip2addr
                - e_error
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:522,14'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:523,11'
              BranchSideFuncs:
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:525,4'
              BranchSideFuncs:
                - str_sanitize
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:533,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:535,9'
              BranchSideFuncs:
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:608,3'
              BranchSideFuncs:
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
        - Branch String:   'master-service-haproxy.c:535,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:536,5'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:541,21'
              BranchSideFuncs:
                - net_addr2ip
                - net_addr2ip
                - net_str2port
                - net_str2port
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:541,45'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:542,15'
              BranchSideFuncs:
                - str_sanitize
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:543,5'
              BranchSideFuncs:
                - str_sanitize
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:541,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:543,5'
              BranchSideFuncs:
                - str_sanitize
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:549,10'
              BranchSideFuncs:
                - net_addr2ip
                - net_str2port
                - net_str2port
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:552,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:553,5'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:558,21'
              BranchSideFuncs:
                - net_addr2ip
                - net_str2port
                - net_str2port
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:558,44'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:559,14'
              BranchSideFuncs:
                - str_sanitize
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:560,5'
              BranchSideFuncs:
                - str_sanitize
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:558,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:560,5'
              BranchSideFuncs:
                - str_sanitize
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:566,10'
              BranchSideFuncs:
                - net_str2port
                - net_str2port
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:569,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:570,5'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:575,22'
              BranchSideFuncs:
                - net_str2port
                - net_str2port
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:575,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:576,5'
              BranchSideFuncs:
                - str_sanitize
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:582,10'
              BranchSideFuncs:
                - net_str2port
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:585,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:586,5'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:591,22'
              BranchSideFuncs:
                - net_str2port
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - str_sanitize
                - net_ip2addr
                - e_error
                - str_sanitize
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:591,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:592,5'
              BranchSideFuncs:
                - str_sanitize
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:598,10'
              BranchSideFuncs:
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
                - str_sanitize
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:600,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:601,5'
              BranchSideFuncs:
                - str_sanitize
                - net_ip2addr
                - e_error
            - BranchSide:      'master-service-haproxy.c:607,3'
              BranchSideFuncs:
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
                - i_panic
        - Branch String:   'master-service-haproxy.c:608,3'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:608,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service-haproxy.c:610,42'
              BranchSideFuncs:
                - master_service_haproxy_recv
                - net_ip2addr
                - e_error
                - net_ip2addr
                - e_info
        - Branch String:   'master-service-haproxy.c:610,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:611,8'
              BranchSideFuncs:
                - net_ip2addr
                - e_info
            - BranchSide:      'master-service-haproxy.c:616,14'
              BranchSideFuncs:
                - net_ip2addr
                - e_error
        - Branch String:   'master-service-haproxy.c:611,8'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:612,5'
              BranchSideFuncs:
                - net_ip2addr
                - e_info
            - BranchSide:      'master-service-haproxy.c:615,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service-haproxy.c:320,13'
          Dst:             master_service_haproxy_recv
        - Src:             'master-service-haproxy.c:322,4'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:322,4'
          Dst:             e_info
        - Src:             'master-service-haproxy.c:326,25'
          Dst:             memcmp
        - Src:             'master-service-haproxy.c:330,6'
          Dst:             memcmp
        - Src:             'master-service-haproxy.c:331,10'
          Dst:             ntohs
        - Src:             'master-service-haproxy.c:333,4'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:333,4'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:339,14'
          Dst:             master_service_haproxy_recv
        - Src:             'master-service-haproxy.c:341,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:341,5'
          Dst:             e_info
        - Src:             'master-service-haproxy.c:348,4'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:348,4'
          Dst:             e_info
        - Src:             'master-service-haproxy.c:356,3'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:356,3'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:374,3'
          Dst:             i_panic
        - Src:             'master-service-haproxy.c:377,4'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:377,4'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:384,13'
          Dst:             ntohs
        - Src:             'master-service-haproxy.c:390,3'
          Dst:             event_set_append_log_prefix
        - Src:             'master-service-haproxy.c:393,4'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:393,4'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:412,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:412,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:421,6'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:421,6'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:428,18'
          Dst:             ntohs
        - Src:             'master-service-haproxy.c:431,19'
          Dst:             ntohs
        - Src:             'master-service-haproxy.c:437,6'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:437,6'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:443,5'
          Dst:             i_memcpy
        - Src:             'master-service-haproxy.c:444,18'
          Dst:             ntohs
        - Src:             'master-service-haproxy.c:446,5'
          Dst:             i_memcpy
        - Src:             'master-service-haproxy.c:447,19'
          Dst:             ntohs
        - Src:             'master-service-haproxy.c:453,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:453,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:459,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:459,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:467,4'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:467,4'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:475,4'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:480,7'
          Dst:             master_service_haproxy_parse_tlv
        - Src:             'master-service-haproxy.c:481,4'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:481,4'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:494,3'
          Dst:             i_panic
        - Src:             'master-service-haproxy.c:497,9'
          Dst:             memchr
        - Src:             'master-service-haproxy.c:504,12'
          Dst:             t_strsplit
        - Src:             'master-service-haproxy.c:505,3'
          Dst:             strcmp
        - Src:             'master-service-haproxy.c:505,3'
          Dst:             i_panic
        - Src:             'master-service-haproxy.c:508,3'
          Dst:             event_drop_parent_log_prefixes
        - Src:             'master-service-haproxy.c:509,3'
          Dst:             event_set_append_log_prefix
        - Src:             'master-service-haproxy.c:513,4'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:513,4'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:518,7'
          Dst:             strcmp
        - Src:             'master-service-haproxy.c:520,14'
          Dst:             strcmp
        - Src:             'master-service-haproxy.c:522,14'
          Dst:             strcmp
        - Src:             'master-service-haproxy.c:525,4'
          Dst:             str_sanitize
        - Src:             'master-service-haproxy.c:525,4'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:525,4'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:536,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:536,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:541,8'
          Dst:             net_addr2ip
        - Src:             'master-service-haproxy.c:543,5'
          Dst:             str_sanitize
        - Src:             'master-service-haproxy.c:543,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:543,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:553,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:553,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:558,8'
          Dst:             net_addr2ip
        - Src:             'master-service-haproxy.c:560,5'
          Dst:             str_sanitize
        - Src:             'master-service-haproxy.c:560,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:560,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:570,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:570,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:575,8'
          Dst:             net_str2port
        - Src:             'master-service-haproxy.c:576,5'
          Dst:             str_sanitize
        - Src:             'master-service-haproxy.c:576,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:576,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:586,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:586,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:591,8'
          Dst:             net_str2port
        - Src:             'master-service-haproxy.c:592,5'
          Dst:             str_sanitize
        - Src:             'master-service-haproxy.c:592,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:592,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:601,5'
          Dst:             str_sanitize
        - Src:             'master-service-haproxy.c:601,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:601,5'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:608,3'
          Dst:             i_panic
        - Src:             'master-service-haproxy.c:610,14'
          Dst:             master_service_haproxy_recv
        - Src:             'master-service-haproxy.c:612,5'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:612,5'
          Dst:             e_info
        - Src:             'master-service-haproxy.c:617,4'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:617,4'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:624,3'
          Dst:             i_unreached
    - 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:    13
      BranchProfiles:  []
      Callsites:       []
    - 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:    8
      BranchProfiles:  []
      Callsites:       []
    - 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:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_haproxy_abort
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     externalLinkage
      functionLinenumber: 706
      functionLinenumberEnd: 713
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_close_fd_path
        - master_service_haproxy_conn_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service-haproxy.c:707,2'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:708,7'
              BranchSideFuncs:
                - master_service_haproxy_conn_free
                - i_close_fd_path
            - BranchSide:      'master-service-haproxy.c:713,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service-haproxy.c:710,3'
          Dst:             master_service_haproxy_conn_free
        - Src:             'master-service-haproxy.c:711,3'
          Dst:             i_close_fd_path
    - functionName:    master_service_haproxy_timeout
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - hpconn
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - e_error
        - master_service_haproxy_conn_failure
        - net_ip2addr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service-haproxy.c:149,2'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:149,2'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:151,2'
          Dst:             master_service_haproxy_conn_failure
    - functionName:    master_service_haproxy_input
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 639
      functionLinenumberEnd: 648
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - hpconn
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - master_service_haproxy_conn_failure
        - master_service_haproxy_conn_success
        - master_service_haproxy_read
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service-haproxy.c:642,6'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:643,7'
              BranchSideFuncs:
                - master_service_haproxy_conn_failure
            - BranchSide:      'master-service-haproxy.c:646,39'
              BranchSideFuncs:
                - master_service_haproxy_conn_success
        - Branch String:   'master-service-haproxy.c:643,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:644,40'
              BranchSideFuncs:
                - master_service_haproxy_conn_failure
            - BranchSide:      'master-service-haproxy.c:645,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service-haproxy.c:642,13'
          Dst:             master_service_haproxy_read
        - Src:             'master-service-haproxy.c:644,4'
          Dst:             master_service_haproxy_conn_failure
        - Src:             'master-service-haproxy.c:646,3'
          Dst:             master_service_haproxy_conn_success
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-master/../../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-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    master_service_haproxy_conn_is_trusted
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 653
      functionLinenumberEnd: 674
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - conn
      BBCount:         15
      ICount:          89
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - e_error
        - net_is_in_network
        - net_parse_range
        - t_strsplit_spaces
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service-haproxy.c:658,6'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:659,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service-haproxy.c:661,26'
              BranchSideFuncs:
                - t_strsplit_spaces
                - net_parse_range
                - net_is_in_network
                - e_error
        - Branch String:   'master-service-haproxy.c:662,2'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:663,24'
              BranchSideFuncs:
                - net_parse_range
                - net_is_in_network
                - e_error
            - BranchSide:      'master-service-haproxy.c:673,2'
              BranchSideFuncs: []
        - Branch String:   'master-service-haproxy.c:663,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:664,4'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'master-service-haproxy.c:670,26'
              BranchSideFuncs:
                - net_is_in_network
                - net_parse_range
                - e_error
        - Branch String:   'master-service-haproxy.c:670,7'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:671,4'
              BranchSideFuncs: []
            - BranchSide:      'master-service-haproxy.c:672,2'
              BranchSideFuncs:
                - net_parse_range
                - net_is_in_network
                - e_error
      Callsites:
        - Src:             'master-service-haproxy.c:661,8'
          Dst:             t_strsplit_spaces
        - Src:             'master-service-haproxy.c:663,7'
          Dst:             net_parse_range
        - Src:             'master-service-haproxy.c:664,4'
          Dst:             e_error
        - Src:             'master-service-haproxy.c:670,7'
          Dst:             net_is_in_network
    - functionName:    master_service_haproxy_new
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-haproxy.c'
      linkageType:     externalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 703
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - conn
      BBCount:         17
      ICount:          174
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - e_warning
        - event_create
        - event_set_append_log_prefix
        - event_unref
        - io_add
        - malloc_multiply_check
        - master_service_client_connection_handled
        - master_service_haproxy_conn_is_trusted
        - master_service_haproxy_input
        - master_service_haproxy_timeout
        - net_ip2addr
        - p_malloc
        - pool_alloconly_create
        - timeout_add
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service-haproxy.c:682,6'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:683,3'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.2880
                - p_malloc.2882
                - io_add
                - timeout_add
            - BranchSide:      'master-service-haproxy.c:690,16'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.2880
                - p_malloc.2882
                - io_add
                - timeout_add
        - Branch String:   'master-service-haproxy.c:697,2'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:697,2'
              BranchSideFuncs:
                - io_add
                - timeout_add
            - BranchSide:      'master-service-haproxy.c:699,15'
              BranchSideFuncs:
                - io_add
                - timeout_add
        - Branch String:   'master-service-haproxy.c:701,15'
          Branch Sides:
            - BranchSide:      'master-service-haproxy.c:701,15'
              BranchSideFuncs:
                - timeout_add
            - BranchSide:      'master-service-haproxy.c:701,15'
              BranchSideFuncs:
                - timeout_add
      Callsites:
        - Src:             'master-service-haproxy.c:679,24'
          Dst:             event_create
        - Src:             'master-service-haproxy.c:680,2'
          Dst:             event_set_append_log_prefix
        - Src:             'master-service-haproxy.c:682,7'
          Dst:             master_service_haproxy_conn_is_trusted
        - Src:             'master-service-haproxy.c:683,3'
          Dst:             net_ip2addr
        - Src:             'master-service-haproxy.c:683,3'
          Dst:             e_warning
        - Src:             'master-service-haproxy.c:685,3'
          Dst:             master_service_client_connection_handled
        - Src:             'master-service-haproxy.c:686,3'
          Dst:             event_unref
        - Src:             'master-service-haproxy.c:690,16'
          Dst:             pool_alloconly_create
        - Src:             'master-service-haproxy.c:692,3'
          Dst:             malloc_multiply_check
        - Src:             'master-service-haproxy.c:692,3'
          Dst:             p_malloc
        - Src:             'master-service-haproxy.c:699,15'
          Dst:             io_add
        - Src:             'master-service-haproxy.c:699,15'
          Dst:             master_service_haproxy_input
        - Src:             'master-service-haproxy.c:701,15'
          Dst:             timeout_add
        - Src:             'master-service-haproxy.c:701,15'
          Dst:             master_service_haproxy_timeout
    - functionName:    master_service_ssl_ctx_deinit
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ssl_iostream_context_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service-ssl.c:122,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:122,6'
              BranchSideFuncs:
                - ssl_iostream_context_unref
            - BranchSide:      'master-service-ssl.c:123,31'
              BranchSideFuncs:
                - ssl_iostream_context_unref
      Callsites:
        - Src:             'master-service-ssl.c:123,3'
          Dst:             ssl_iostream_context_unref
    - functionName:    master_service_ssl_ctx_init
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         52
      ICount:          377
      EdgeCount:       65
      CyclomaticComplexity: 15
      functionsReached:
        - e_error
        - i_panic
        - master_service_ssl_io_listeners_remove
        - pool_unref
        - settings_get
        - ssl_iostream_context_init_server
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service-ssl.c:59,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:60,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service-ssl.c:61,2'
              BranchSideFuncs:
                - settings_get
                - settings_get
                - strcmp
                - ssl_iostream_context_init_server
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
                - i_panic
        - Branch String:   'master-service-ssl.c:65,2'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:65,2'
              BranchSideFuncs:
                - settings_get
                - settings_get
                - strcmp
                - ssl_iostream_context_init_server
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
                - i_panic
            - BranchSide:      'master-service-ssl.c:65,2'
              BranchSideFuncs:
                - settings_get
                - settings_get
                - strcmp
                - ssl_iostream_context_init_server
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
                - i_panic
        - Branch String:   'master-service-ssl.c:65,2'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:65,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service-ssl.c:67,6'
              BranchSideFuncs:
                - settings_get
                - settings_get
                - strcmp
                - ssl_iostream_context_init_server
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
        - Branch String:   'master-service-ssl.c:69,23'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:70,6'
              BranchSideFuncs:
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:73,3'
              BranchSideFuncs:
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
        - Branch String:   'master-service-ssl.c:67,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:73,3'
              BranchSideFuncs:
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:78,13'
              BranchSideFuncs:
                - strcmp
                - ssl_iostream_context_init_server
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
                - pool_unref.2913
        - Branch String:   'master-service-ssl.c:74,3'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:74,3'
              BranchSideFuncs:
                - pool_unref.2913
                - master_service_ssl_io_listeners_remove
            - BranchSide:      'master-service-ssl.c:75,42'
              BranchSideFuncs:
                - master_service_ssl_io_listeners_remove
        - Branch String:   'master-service-ssl.c:78,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:80,3'
              BranchSideFuncs:
                - pool_unref.2913
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:85,2'
              BranchSideFuncs:
                - ssl_iostream_context_init_server
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
        - Branch String:   'master-service-ssl.c:80,3'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:80,3'
              BranchSideFuncs:
                - pool_unref.2913
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:81,3'
              BranchSideFuncs:
                - pool_unref.2913
        - Branch String:   'master-service-ssl.c:81,3'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:81,3'
              BranchSideFuncs:
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:82,3'
              BranchSideFuncs: []
        - Branch String:   'master-service-ssl.c:95,39'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:96,7'
              BranchSideFuncs:
                - ssl_iostream_context_init_server
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
            - BranchSide:      'master-service-ssl.c:101,26'
              BranchSideFuncs:
                - ssl_iostream_context_init_server
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
        - Branch String:   'master-service-ssl.c:95,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:97,27'
              BranchSideFuncs:
                - ssl_iostream_context_init_server
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
            - BranchSide:      'master-service-ssl.c:101,26'
              BranchSideFuncs:
                - ssl_iostream_context_init_server
                - pool_unref.2913
                - pool_unref.2913
                - e_error
                - master_service_ssl_io_listeners_remove
        - Branch String:   'master-service-ssl.c:109,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:111,3'
              BranchSideFuncs:
                - e_error
                - master_service_ssl_io_listeners_remove
                - pool_unref.2913
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:116,2'
              BranchSideFuncs:
                - pool_unref.2913
                - pool_unref.2913
        - Branch String:   'master-service-ssl.c:116,2'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:116,2'
              BranchSideFuncs:
                - pool_unref.2913
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:117,2'
              BranchSideFuncs:
                - pool_unref.2913
        - Branch String:   'master-service-ssl.c:117,2'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:117,2'
              BranchSideFuncs:
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:117,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service-ssl.c:65,2'
          Dst:             i_panic
        - Src:             'master-service-ssl.c:67,6'
          Dst:             settings_get
        - Src:             'master-service-ssl.c:70,6'
          Dst:             settings_get
        - Src:             'master-service-ssl.c:73,3'
          Dst:             e_error
        - Src:             'master-service-ssl.c:74,3'
          Dst:             pool_unref
        - Src:             'master-service-ssl.c:75,3'
          Dst:             master_service_ssl_io_listeners_remove
        - Src:             'master-service-ssl.c:78,6'
          Dst:             strcmp
        - Src:             'master-service-ssl.c:80,3'
          Dst:             pool_unref
        - Src:             'master-service-ssl.c:81,3'
          Dst:             pool_unref
        - Src:             'master-service-ssl.c:109,6'
          Dst:             ssl_iostream_context_init_server
        - Src:             'master-service-ssl.c:111,3'
          Dst:             e_error
        - Src:             'master-service-ssl.c:114,3'
          Dst:             master_service_ssl_io_listeners_remove
        - Src:             'master-service-ssl.c:116,2'
          Dst:             pool_unref
        - Src:             'master-service-ssl.c:117,2'
          Dst:             pool_unref
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    7
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    master_service_ssl_is_enabled
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_service_ssl_init
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - service
        - input
        - output
        - ssl_iostream_r
        - error_r
      BBCount:         25
      ICount:          168
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - io_stream_create_ssl_server
        - pool_unref
        - settings_get
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-service-ssl.c:23,2'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:23,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service-ssl.c:25,6'
              BranchSideFuncs:
                - settings_get
                - io_stream_create_ssl_server
                - pool_unref.2913
                - strcmp
                - pool_unref.2913
        - Branch String:   'master-service-ssl.c:25,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:28,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service-ssl.c:29,6'
              BranchSideFuncs:
                - io_stream_create_ssl_server
                - pool_unref.2913
                - strcmp
                - pool_unref.2913
        - Branch String:   'master-service-ssl.c:29,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:30,14'
              BranchSideFuncs:
                - strcmp
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:38,2'
              BranchSideFuncs:
                - io_stream_create_ssl_server
                - pool_unref.2913
        - Branch String:   'master-service-ssl.c:30,7'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:31,5'
              BranchSideFuncs:
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:33,5'
              BranchSideFuncs:
                - pool_unref.2913
        - Branch String:   'master-service-ssl.c:34,3'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:34,3'
              BranchSideFuncs:
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:35,3'
              BranchSideFuncs: []
        - Branch String:   'master-service-ssl.c:43,2'
          Branch Sides:
            - BranchSide:      'master-service-ssl.c:43,2'
              BranchSideFuncs:
                - pool_unref.2913
            - BranchSide:      'master-service-ssl.c:44,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-service-ssl.c:23,2'
          Dst:             i_panic
        - Src:             'master-service-ssl.c:25,6'
          Dst:             settings_get
        - Src:             'master-service-ssl.c:30,7'
          Dst:             strcmp
        - Src:             'master-service-ssl.c:34,3'
          Dst:             pool_unref
        - Src:             'master-service-ssl.c:41,8'
          Dst:             io_stream_create_ssl_server
        - Src:             'master-service-ssl.c:43,2'
          Dst:             pool_unref
    - functionName:    master_service_ssl_server_settings_to_iostream_set
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-ssl-settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_set
        - ssl_server_set
        - pool
        - set_r
      BBCount:         8
      ICount:          140
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - master_service_ssl_common_settings_to_iostream_set
        - p_strdup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service-ssl-settings.c:205,43'
          Branch Sides:
            - BranchSide:      'master-service-ssl-settings.c:205,43'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - p_strdup
                - p_strdup
            - BranchSide:      'master-service-ssl-settings.c:206,7'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - p_strdup
                - p_strdup
        - Branch String:   'master-service-ssl-settings.c:205,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl-settings.c:205,6'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - p_strdup
                - p_strdup
            - BranchSide:      'master-service-ssl-settings.c:207,35'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - p_strdup
                - p_strdup
      Callsites:
        - Src:             'master-service-ssl-settings.c:200,2'
          Dst:             master_service_ssl_common_settings_to_iostream_set
        - Src:             'master-service-ssl-settings.c:202,21'
          Dst:             p_strdup
        - Src:             'master-service-ssl-settings.c:203,20'
          Dst:             p_strdup
        - Src:             'master-service-ssl-settings.c:204,29'
          Dst:             p_strdup
        - Src:             'master-service-ssl-settings.c:207,26'
          Dst:             p_strdup
        - Src:             'master-service-ssl-settings.c:208,25'
          Dst:             p_strdup
        - Src:             'master-service-ssl-settings.c:209,34'
          Dst:             p_strdup
        - Src:             'master-service-ssl-settings.c:211,14'
          Dst:             p_strdup
    - functionName:    master_service_ssl_common_settings_to_iostream_set
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-ssl-settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_set
        - pool
        - set_r
      BBCount:         3
      ICount:          120
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup
        - p_strdup_empty
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service-ssl-settings.c:160,24'
          Dst:             p_strdup
        - Src:             'master-service-ssl-settings.c:161,23'
          Dst:             p_strdup
        - Src:             'master-service-ssl-settings.c:163,24'
          Dst:             p_strdup_empty
        - Src:             'master-service-ssl-settings.c:166,14'
          Dst:             p_strdup_empty
        - Src:             'master-service-ssl-settings.c:168,25'
          Dst:             p_strdup
        - Src:             'master-service-ssl-settings.c:169,31'
          Dst:             p_strdup
        - Src:             'master-service-ssl-settings.c:176,22'
          Dst:             p_strdup
    - functionName:    master_service_ssl_client_settings_to_iostream_set
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-ssl-settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_set
        - pool
        - set_r
      BBCount:         3
      ICount:          78
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - master_service_ssl_common_settings_to_iostream_set
        - p_strdup_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'master-service-ssl-settings.c:183,2'
          Dst:             master_service_ssl_common_settings_to_iostream_set
        - Src:             'master-service-ssl-settings.c:185,19'
          Dst:             p_strdup_empty
        - Src:             'master-service-ssl-settings.c:186,18'
          Dst:             p_strdup_empty
        - Src:             'master-service-ssl-settings.c:187,21'
          Dst:             p_strdup_empty
        - Src:             'master-service-ssl-settings.c:188,20'
          Dst:             p_strdup_empty
    - functionName:    master_service_ssl_settings_check
      functionSourceFile: '/src/dovecot/src/lib-master/master-service-ssl-settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _set
        - pool
        - error_r
      BBCount:         32
      ICount:          184
      EdgeCount:       40
      CyclomaticComplexity: 10
      functionsReached:
        - i_panic
        - i_warning
        - is_config_binary
        - strcasecmp
        - strcmp
        - strstr
        - t_pop
        - t_push
        - t_str_ucase
        - t_strdup_printf
        - t_strsplit_spaces
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-service-ssl-settings.c:111,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl-settings.c:113,3'
              BranchSideFuncs: []
            - BranchSide:      'master-service-ssl-settings.c:119,6'
              BranchSideFuncs:
                - is_config_binary
                - t_strsplit_spaces
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
                - t_push
                - t_str_ucase
                - strstr
                - t_pop
                - i_panic
                - i_warning
        - Branch String:   'master-service-ssl-settings.c:119,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl-settings.c:119,26'
              BranchSideFuncs:
                - t_push
                - t_str_ucase
                - strstr
                - t_pop
                - t_strsplit_spaces
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
                - i_panic
                - i_warning
            - BranchSide:      'master-service-ssl-settings.c:126,6'
              BranchSideFuncs:
                - t_strsplit_spaces
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
        - Branch String:   'master-service-ssl-settings.c:121,7'
          Branch Sides:
            - BranchSide:      'master-service-ssl-settings.c:122,4'
              BranchSideFuncs:
                - i_warning
                - t_pop
                - t_strsplit_spaces
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
                - i_panic
            - BranchSide:      'master-service-ssl-settings.c:124,4'
              BranchSideFuncs:
                - t_pop
                - t_strsplit_spaces
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
                - i_panic
        - Branch String:   'master-service-ssl-settings.c:124,4'
          Branch Sides:
            - BranchSide:      'master-service-ssl-settings.c:124,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-service-ssl-settings.c:124,4'
              BranchSideFuncs:
                - t_strsplit_spaces
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
        - Branch String:   'master-service-ssl-settings.c:126,34'
          Branch Sides:
            - BranchSide:      'master-service-ssl-settings.c:126,38'
              BranchSideFuncs:
                - t_strsplit_spaces
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
            - BranchSide:      'master-service-ssl-settings.c:133,2'
              BranchSideFuncs:
                - t_strsplit_spaces
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
        - Branch String:   'master-service-ssl-settings.c:126,6'
          Branch Sides:
            - BranchSide:      'master-service-ssl-settings.c:127,4'
              BranchSideFuncs: []
            - BranchSide:      'master-service-ssl-settings.c:133,2'
              BranchSideFuncs:
                - t_strsplit_spaces
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
        - Branch String:   'master-service-ssl-settings.c:139,2'
          Branch Sides:
            - BranchSide:      'master-service-ssl-settings.c:140,18'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
            - BranchSide:      'master-service-ssl-settings.c:151,2'
              BranchSideFuncs: []
        - Branch String:   'master-service-ssl-settings.c:140,7'
          Branch Sides:
            - BranchSide:      'master-service-ssl-settings.c:141,4'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
            - BranchSide:      'master-service-ssl-settings.c:142,25'
              BranchSideFuncs:
                - strcasecmp
                - t_strdup_printf
                - strcasecmp
        - Branch String:   'master-service-ssl-settings.c:142,14'
          Branch Sides:
            - BranchSide:      'master-service-ssl-settings.c:143,4'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
            - BranchSide:      'master-service-ssl-settings.c:146,10'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'master-service-ssl-settings.c:111,6'
          Dst:             strcmp
        - Src:             'master-service-ssl-settings.c:119,6'
          Dst:             is_config_binary
        - Src:             'master-service-ssl-settings.c:119,26'
          Dst:             t_push
        - Src:             'master-service-ssl-settings.c:120,23'
          Dst:             t_str_ucase
        - Src:             'master-service-ssl-settings.c:121,7'
          Dst:             strstr
        - Src:             'master-service-ssl-settings.c:122,4'
          Dst:             i_warning
        - Src:             'master-service-ssl-settings.c:124,4'
          Dst:             t_pop
        - Src:             'master-service-ssl-settings.c:124,4'
          Dst:             i_panic
        - Src:             'master-service-ssl-settings.c:137,22'
          Dst:             t_strsplit_spaces
        - Src:             'master-service-ssl-settings.c:140,7'
          Dst:             strcasecmp
        - Src:             'master-service-ssl-settings.c:142,14'
          Dst:             strcasecmp
        - Src:             'master-service-ssl-settings.c:145,15'
          Dst:             t_strdup_printf
    - functionName:    stats_client_deinit_timeout
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - e_error
        - io_loop_stop
        - timeval_diff_msecs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stats-client.c:331,25'
          Dst:             timeval_diff_msecs
        - Src:             'stats-client.c:333,2'
          Dst:             e_error
        - Src:             'stats-client.c:336,2'
          Dst:             io_loop_stop
    - functionName:    timeval_diff_msecs
      functionSourceFile: '/src/dovecot/src/lib-master/../../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:             '../../src/lib/time-util.h:26,9'
          Dst:             timeval_diff_usecs
    - functionName:    stats_client_handshake_timeout
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - e_error
        - io_loop_stop
        - timeval_diff_msecs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stats-client.c:320,25'
          Dst:             timeval_diff_msecs
        - Src:             'stats-client.c:322,2'
          Dst:             e_error
        - Src:             'stats-client.c:326,2'
          Dst:             io_loop_stop
    - functionName:    stats_client_send_registered_categories
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
      BBCount:         7
      ICount:          60
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - event_get_registered_categories
        - o_stream_nsend
        - stats_category_append
        - str_data
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stats-client.c:374,2'
          Branch Sides:
            - BranchSide:      'stats-client.c:375,25'
              BranchSideFuncs:
                - stats_category_append
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
            - BranchSide:      'stats-client.c:376,17'
              BranchSideFuncs:
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
      Callsites:
        - Src:             'stats-client.c:372,18'
          Dst:             t_str_new
        - Src:             'stats-client.c:373,15'
          Dst:             event_get_registered_categories
        - Src:             'stats-client.c:375,3'
          Dst:             stats_category_append
        - Src:             'stats-client.c:376,38'
          Dst:             str_data
        - Src:             'stats-client.c:376,53'
          Dst:             str_len
        - Src:             'stats-client.c:376,2'
          Dst:             o_stream_nsend
    - functionName:    stats_category_append
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - category
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_append
        - str_append_c
        - str_append_tabescaped
      functionUses:    2
      BranchProfiles:
        - Branch String:   'stats-client.c:282,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:282,6'
              BranchSideFuncs:
                - str_append_c.3056
                - str_append_tabescaped
                - str_append_c.3056
            - BranchSide:      'stats-client.c:283,3'
              BranchSideFuncs:
                - str_append_c.3056
                - str_append_tabescaped
                - str_append_c.3056
      Callsites:
        - Src:             'stats-client.c:280,2'
          Dst:             str_append
        - Src:             'stats-client.c:281,2'
          Dst:             str_append_tabescaped
        - Src:             'stats-client.c:283,3'
          Dst:             str_append_c
        - Src:             'stats-client.c:284,3'
          Dst:             str_append_tabescaped
        - Src:             'stats-client.c:286,2'
          Dst:             str_append_c
    - functionName:    str_data
      functionSourceFile: '/src/dovecot/src/lib-master/../../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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-master/../../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_append
      functionSourceFile: '/src/dovecot/src/lib-master/../../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:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-master/../../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:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-master/../../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:    o_stream_uncork_flush
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/ostream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 171
      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:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/ostream.h:170,2'
          Dst:             o_stream_uncork
        - Src:             '../../src/lib/ostream.h:171,9'
          Dst:             o_stream_flush
    - functionName:    stats_event_write
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - client
        - event
        - global_event
        - ctx
        - str
        - begin
      BBCount:         38
      ICount:          258
      EdgeCount:       47
      CyclomaticComplexity: 11
      functionsReached:
        - event_export
        - event_ref
        - event_unref
        - i_panic
        - o_stream_nsend
        - stats_event_write
        - str_append_c
        - str_data
        - str_len
        - str_printfa
        - str_truncate
      functionUses:    3
      BranchProfiles:
        - Branch String:   'stats-client.c:160,17'
          Branch Sides:
            - BranchSide:      'stats-client.c:160,35'
              BranchSideFuncs:
                - event_ref
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
                - str_printfa
                - i_panic
                - i_panic
                - stats_event_write
            - BranchSide:      'stats-client.c:160,59'
              BranchSideFuncs:
                - event_minimize
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
                - str_printfa
                - i_panic
                - i_panic
                - stats_event_write
        - Branch String:   'stats-client.c:163,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:164,7'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
                - str_printfa
                - i_panic
                - i_panic
                - stats_event_write
            - BranchSide:      'stats-client.c:171,6'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
                - str_printfa
                - i_panic
        - Branch String:   'stats-client.c:164,7'
          Branch Sides:
            - BranchSide:      'stats-client.c:166,22'
              BranchSideFuncs:
                - stats_event_write
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
                - str_printfa
                - i_panic
                - i_panic
            - BranchSide:      'stats-client.c:169,3'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
                - str_printfa
                - i_panic
                - i_panic
        - Branch String:   'stats-client.c:169,3'
          Branch Sides:
            - BranchSide:      'stats-client.c:169,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'stats-client.c:170,2'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
                - str_printfa
                - i_panic
        - Branch String:   'stats-client.c:171,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:172,3'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
                - i_panic
            - BranchSide:      'stats-client.c:182,15'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
        - Branch String:   'stats-client.c:172,3'
          Branch Sides:
            - BranchSide:      'stats-client.c:172,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'stats-client.c:173,13'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
        - Branch String:   'stats-client.c:183,8'
          Branch Sides:
            - BranchSide:      'stats-client.c:182,3'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
            - BranchSide:      'stats-client.c:183,35'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
        - Branch String:   'stats-client.c:186,7'
          Branch Sides:
            - BranchSide:      'stats-client.c:185,2'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
            - BranchSide:      'stats-client.c:186,34'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
        - Branch String:   'stats-client.c:187,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:188,15'
              BranchSideFuncs:
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
            - BranchSide:      'stats-client.c:189,15'
              BranchSideFuncs:
                - event_export
                - str_append_c.3056
                - event_unref
                - str_len.3053
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
        - Branch String:   'stats-client.c:192,19'
          Branch Sides:
            - BranchSide:      'stats-client.c:192,30'
              BranchSideFuncs:
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
            - BranchSide:      'stats-client.c:193,18'
              BranchSideFuncs:
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
        - Branch String:   'stats-client.c:192,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:192,6'
              BranchSideFuncs:
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
            - BranchSide:      'stats-client.c:193,18'
              BranchSideFuncs:
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - str_truncate.3057
      Callsites:
        - Src:             'stats-client.c:160,25'
          Dst:             event_ref
        - Src:             'stats-client.c:160,44'
          Dst:             event_minimize
        - Src:             'stats-client.c:166,4'
          Dst:             stats_event_write
        - Src:             'stats-client.c:169,3'
          Dst:             i_panic
        - Src:             'stats-client.c:172,3'
          Dst:             i_panic
        - Src:             'stats-client.c:175,3'
          Dst:             str_printfa
        - Src:             'stats-client.c:182,3'
          Dst:             str_printfa
        - Src:             'stats-client.c:185,2'
          Dst:             str_printfa
        - Src:             'stats-client.c:188,3'
          Dst:             str_printfa
        - Src:             'stats-client.c:189,2'
          Dst:             event_export
        - Src:             'stats-client.c:190,2'
          Dst:             str_append_c
        - Src:             'stats-client.c:191,2'
          Dst:             event_unref
        - Src:             'stats-client.c:192,22'
          Dst:             str_len
        - Src:             'stats-client.c:193,39'
          Dst:             str_data
        - Src:             'stats-client.c:193,54'
          Dst:             str_len
        - Src:             'stats-client.c:193,3'
          Dst:             o_stream_nsend
        - Src:             'stats-client.c:194,3'
          Dst:             str_truncate
    - functionName:    stats_client_free_event
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
        - event
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_nsend_str
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stats-client.c:246,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:247,3'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:248,21'
              BranchSideFuncs:
                - t_strdup_printf
                - o_stream_nsend_str
      Callsites:
        - Src:             'stats-client.c:249,7'
          Dst:             t_strdup_printf
        - Src:             'stats-client.c:248,2'
          Dst:             o_stream_nsend_str
    - functionName:    stats_client_send_event
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
        - event
        - ctx
      BBCount:         25
      ICount:          161
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - e_error
        - event_filter_match
        - event_get_global
        - i_panic
        - o_stream_cork
        - o_stream_get_error
        - o_stream_nsend
        - o_stream_uncork_flush
        - stats_event_write
        - str_data
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stats-client.c:204,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:205,3'
              BranchSideFuncs:
                - event_filter_match
                - t_str_new
                - event_get_global
                - stats_event_write
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
                - i_panic
                - stats_event_write
                - o_stream_cork
            - BranchSide:      'stats-client.c:207,6'
              BranchSideFuncs:
                - event_filter_match
                - t_str_new
                - event_get_global
                - stats_event_write
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
                - i_panic
                - stats_event_write
                - o_stream_cork
        - Branch String:   'stats-client.c:207,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:212,3'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:215,26'
              BranchSideFuncs:
                - event_filter_match
                - t_str_new
                - event_get_global
                - stats_event_write
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
                - i_panic
                - stats_event_write
                - o_stream_cork
        - Branch String:   'stats-client.c:215,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:216,3'
              BranchSideFuncs:
                - t_str_new
                - event_get_global
                - stats_event_write
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
                - i_panic
                - stats_event_write
                - o_stream_cork
            - BranchSide:      'stats-client.c:219,18'
              BranchSideFuncs:
                - t_str_new
                - event_get_global
                - stats_event_write
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
                - i_panic
                - stats_event_write
                - o_stream_cork
        - Branch String:   'stats-client.c:221,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:222,17'
              BranchSideFuncs:
                - o_stream_cork
                - event_get_global
                - stats_event_write
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
                - i_panic
                - stats_event_write
            - BranchSide:      'stats-client.c:223,31'
              BranchSideFuncs:
                - event_get_global
                - stats_event_write
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
                - i_panic
                - stats_event_write
        - Branch String:   'stats-client.c:224,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:228,21'
              BranchSideFuncs:
                - stats_event_write
                - stats_event_write
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
                - i_panic
            - BranchSide:      'stats-client.c:231,20'
              BranchSideFuncs:
                - stats_event_write
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
                - i_panic
        - Branch String:   'stats-client.c:234,2'
          Branch Sides:
            - BranchSide:      'stats-client.c:234,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'stats-client.c:235,6'
              BranchSideFuncs:
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
        - Branch String:   'stats-client.c:235,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:235,6'
              BranchSideFuncs:
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
            - BranchSide:      'stats-client.c:236,29'
              BranchSideFuncs:
                - o_stream_uncork_flush.3058
                - o_stream_get_error
                - e_error
        - Branch String:   'stats-client.c:236,7'
          Branch Sides:
            - BranchSide:      'stats-client.c:237,4'
              BranchSideFuncs:
                - o_stream_get_error
                - e_error
            - BranchSide:      'stats-client.c:240,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'stats-client.c:215,7'
          Dst:             event_filter_match
        - Src:             'stats-client.c:219,18'
          Dst:             t_str_new
        - Src:             'stats-client.c:222,3'
          Dst:             o_stream_cork
        - Src:             'stats-client.c:223,31'
          Dst:             event_get_global
        - Src:             'stats-client.c:228,3'
          Dst:             stats_event_write
        - Src:             'stats-client.c:231,2'
          Dst:             stats_event_write
        - Src:             'stats-client.c:232,38'
          Dst:             str_data
        - Src:             'stats-client.c:232,53'
          Dst:             str_len
        - Src:             'stats-client.c:232,2'
          Dst:             o_stream_nsend
        - Src:             'stats-client.c:234,2'
          Dst:             i_panic
        - Src:             'stats-client.c:236,7'
          Dst:             o_stream_uncork_flush
        - Src:             'stats-client.c:237,4'
          Dst:             o_stream_get_error
        - Src:             'stats-client.c:237,4'
          Dst:             e_error
    - functionName:    client_handshake_filter
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - args
        - filter_r
        - error_r
      BBCount:         13
      ICount:          88
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - event_filter_create
        - event_filter_parse
        - event_filter_unref
        - strcmp
        - t_str_tabunescape
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stats-client.c:41,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:42,4'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:45,6'
              BranchSideFuncs:
                - event_filter_create
                - t_str_tabunescape
                - event_filter_parse
                - event_filter_unref
        - Branch String:   'stats-client.c:45,22'
          Branch Sides:
            - BranchSide:      'stats-client.c:45,25'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:46,4'
              BranchSideFuncs: []
        - Branch String:   'stats-client.c:45,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:46,4'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:50,14'
              BranchSideFuncs:
                - event_filter_create
                - t_str_tabunescape
                - event_filter_parse
                - event_filter_unref
        - Branch String:   'stats-client.c:51,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:52,22'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:55,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'stats-client.c:41,6'
          Dst:             strcmp
        - Src:             'stats-client.c:50,14'
          Dst:             event_filter_create
        - Src:             'stats-client.c:51,7'
          Dst:             t_str_tabunescape
        - Src:             'stats-client.c:51,7'
          Dst:             event_filter_parse
        - Src:             'stats-client.c:52,3'
          Dst:             event_filter_unref
    - functionName:    stats_client_handshake
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
        - args
      BBCount:         12
      ICount:          90
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - client_handshake_filter
        - e_error
        - event_filter_create
        - event_filter_unref
        - event_set_global_debug_send_filter
        - io_loop_stop
        - t_strarray_join
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stats-client.c:64,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:65,3'
              BranchSideFuncs:
                - t_strarray_join
                - e_error
            - BranchSide:      'stats-client.c:70,2'
              BranchSideFuncs:
                - event_filter_unref
                - event_set_global_debug_send_filter
                - event_filter_create
                - io_loop_stop
        - Branch String:   'stats-client.c:72,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:73,16'
              BranchSideFuncs:
                - io_loop_stop
                - event_filter_unref
                - event_set_global_debug_send_filter
                - event_filter_create
            - BranchSide:      'stats-client.c:75,6'
              BranchSideFuncs:
                - event_filter_unref
                - event_set_global_debug_send_filter
                - event_filter_create
        - Branch String:   'stats-client.c:75,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:76,12'
              BranchSideFuncs:
                - event_filter_create
                - event_filter_unref
                - event_set_global_debug_send_filter
            - BranchSide:      'stats-client.c:78,22'
              BranchSideFuncs:
                - event_filter_unref
                - event_set_global_debug_send_filter
      Callsites:
        - Src:             'stats-client.c:64,6'
          Dst:             client_handshake_filter
        - Src:             'stats-client.c:65,3'
          Dst:             t_strarray_join
        - Src:             'stats-client.c:65,3'
          Dst:             e_error
        - Src:             'stats-client.c:73,3'
          Dst:             io_loop_stop
        - Src:             'stats-client.c:76,12'
          Dst:             event_filter_create
        - Src:             'stats-client.c:78,2'
          Dst:             event_filter_unref
        - Src:             'stats-client.c:80,2'
          Dst:             event_set_global_debug_send_filter
    - functionName:    stats_client_reconnect
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stats_client_connect
        - timeout_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stats-client.c:95,2'
          Dst:             timeout_remove
        - Src:             'stats-client.c:96,2'
          Dst:             stats_client_connect
    - functionName:    stats_client_connect
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
      BBCount:         17
      ICount:          80
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - connection_client_connect
        - e_error
        - stats_client_send_registered_categories
        - stats_client_wait
      functionUses:    2
      BranchProfiles:
        - Branch String:   'stats-client.c:381,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:383,43'
              BranchSideFuncs:
                - stats_client_send_registered_categories
                - stats_client_wait
            - BranchSide:      'stats-client.c:386,14'
              BranchSideFuncs:
                - e_error
                - __errno_location
                - __errno_location
        - Branch String:   'stats-client.c:384,7'
          Branch Sides:
            - BranchSide:      'stats-client.c:385,22'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:386,2'
              BranchSideFuncs: []
        - Branch String:   'stats-client.c:386,45'
          Branch Sides:
            - BranchSide:      'stats-client.c:387,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - e_error
            - BranchSide:      'stats-client.c:388,3'
              BranchSideFuncs:
                - e_error
      Callsites:
        - Src:             'stats-client.c:381,6'
          Dst:             connection_client_connect
        - Src:             'stats-client.c:383,3'
          Dst:             stats_client_send_registered_categories
        - Src:             'stats-client.c:385,4'
          Dst:             stats_client_wait
        - Src:             'stats-client.c:387,7'
          Dst:             __errno_location
        - Src:             'stats-client.c:387,26'
          Dst:             __errno_location
        - Src:             'stats-client.c:388,3'
          Dst:             e_error
    - functionName:    stats_client_wait
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - client
        - type
      BBCount:         13
      ICount:          105
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - connection_switch_ioloop
        - i_panic
        - io_loop_create
        - io_loop_destroy
        - io_loop_move_timeout
        - io_loop_run
        - io_loop_set_current
        - stats_client_deinit_timeout
        - stats_client_handshake_timeout
        - timeout_add
        - timeout_remove
      functionUses:    2
      BranchProfiles:
        - Branch String:   'stats-client.c:345,2'
          Branch Sides:
            - BranchSide:      'stats-client.c:345,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'stats-client.c:347,19'
              BranchSideFuncs:
                - io_loop_create
                - timeout_add
                - connection_switch_ioloop
                - io_loop_run
                - io_loop_set_current
                - connection_switch_ioloop
                - io_loop_set_current
                - timeout_remove
                - io_loop_destroy
                - io_loop_move_timeout
                - timeout_add
        - Branch String:   'stats-client.c:349,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:350,8'
              BranchSideFuncs:
                - timeout_add
                - connection_switch_ioloop
                - io_loop_run
                - io_loop_set_current
                - connection_switch_ioloop
                - io_loop_set_current
                - timeout_remove
                - io_loop_destroy
                - io_loop_move_timeout
            - BranchSide:      'stats-client.c:353,8'
              BranchSideFuncs:
                - timeout_add
                - connection_switch_ioloop
                - io_loop_run
                - io_loop_set_current
                - connection_switch_ioloop
                - io_loop_set_current
                - timeout_remove
                - io_loop_destroy
                - io_loop_move_timeout
        - Branch String:   'stats-client.c:360,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:360,6'
              BranchSideFuncs:
                - io_loop_move_timeout
                - io_loop_set_current
                - timeout_remove
                - io_loop_destroy
            - BranchSide:      'stats-client.c:361,48'
              BranchSideFuncs:
                - io_loop_move_timeout
                - io_loop_set_current
                - timeout_remove
                - io_loop_destroy
      Callsites:
        - Src:             'stats-client.c:345,2'
          Dst:             i_panic
        - Src:             'stats-client.c:347,19'
          Dst:             io_loop_create
        - Src:             'stats-client.c:350,8'
          Dst:             timeout_add
        - Src:             'stats-client.c:350,8'
          Dst:             stats_client_handshake_timeout
        - Src:             'stats-client.c:353,8'
          Dst:             timeout_add
        - Src:             'stats-client.c:353,8'
          Dst:             stats_client_deinit_timeout
        - Src:             'stats-client.c:356,2'
          Dst:             connection_switch_ioloop
        - Src:             'stats-client.c:357,2'
          Dst:             io_loop_run
        - Src:             'stats-client.c:358,2'
          Dst:             io_loop_set_current
        - Src:             'stats-client.c:359,2'
          Dst:             connection_switch_ioloop
        - Src:             'stats-client.c:361,26'
          Dst:             io_loop_move_timeout
        - Src:             'stats-client.c:362,2'
          Dst:             io_loop_set_current
        - Src:             'stats-client.c:363,2'
          Dst:             timeout_remove
        - Src:             'stats-client.c:364,2'
          Dst:             io_loop_destroy
    - functionName:    stats_client_input_args
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - args
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stats_client_handshake
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'stats-client.c:89,9'
          Dst:             stats_client_handshake
    - functionName:    stats_client_destroy
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         25
      ICount:          146
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - connection_disconnect
        - events_get_head
        - io_loop_stop
        - stats_client_reconnect
        - timeout_add
        - timeval_diff_msecs
      functionUses:    0
      BranchProfiles:
        - Branch String:   'stats-client.c:106,2'
          Branch Sides:
            - BranchSide:      'stats-client.c:107,3'
              BranchSideFuncs:
                - connection_disconnect
                - timeout_add
                - timeval_diff_msecs.3046
                - io_loop_stop
            - BranchSide:      'stats-client.c:109,2'
              BranchSideFuncs:
                - connection_disconnect
                - timeout_add
                - timeval_diff_msecs.3046
                - io_loop_stop
        - Branch String:   'stats-client.c:111,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:113,16'
              BranchSideFuncs:
                - io_loop_stop
                - timeout_add
            - BranchSide:      'stats-client.c:114,13'
              BranchSideFuncs:
                - timeout_add
                - timeval_diff_msecs.3046
        - Branch String:   'stats-client.c:118,7'
          Branch Sides:
            - BranchSide:      'stats-client.c:120,20'
              BranchSideFuncs:
                - timeout_add
            - BranchSide:      'stats-client.c:125,5'
              BranchSideFuncs:
                - timeout_add
        - Branch String:   'stats-client.c:128,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:128,6'
              BranchSideFuncs:
                - timeout_add
            - BranchSide:      'stats-client.c:130,4'
              BranchSideFuncs:
                - timeout_add
        - Branch String:   'stats-client.c:130,4'
          Branch Sides:
            - BranchSide:      'stats-client.c:130,4'
              BranchSideFuncs:
                - timeout_add
            - BranchSide:      'stats-client.c:130,4'
              BranchSideFuncs:
                - timeout_add
      Callsites:
        - Src:             'stats-client.c:106,15'
          Dst:             events_get_head
        - Src:             'stats-client.c:110,2'
          Dst:             connection_disconnect
        - Src:             'stats-client.c:113,3'
          Dst:             io_loop_stop
        - Src:             'stats-client.c:116,4'
          Dst:             timeval_diff_msecs
        - Src:             'stats-client.c:130,4'
          Dst:             timeout_add
        - Src:             'stats-client.c:130,4'
          Dst:             stats_client_reconnect
    - functionName:    stats_category_registered
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - category
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - o_stream_nsend
        - stats_category_append
        - str_data
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'stats-client.c:291,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:292,3'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:294,26'
              BranchSideFuncs:
                - t_str_new
                - stats_category_append
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
        - Branch String:   'stats-client.c:295,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:296,3'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:298,12'
              BranchSideFuncs:
                - t_str_new
                - stats_category_append
                - str_data.3052
                - str_len.3053
                - o_stream_nsend
      Callsites:
        - Src:             'stats-client.c:298,18'
          Dst:             t_str_new
        - Src:             'stats-client.c:299,2'
          Dst:             stats_category_append
        - Src:             'stats-client.c:300,38'
          Dst:             str_data
        - Src:             'stats-client.c:300,53'
          Dst:             str_len
        - Src:             'stats-client.c:300,2'
          Dst:             o_stream_nsend
    - functionName:    stats_event_callback
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - type
        - ctx
        - fmt
        - args
      BBCount:         16
      ICount:          99
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - stats_client_free_event
        - stats_client_send_event
      functionUses:    2
      BranchProfiles:
        - Branch String:   'stats-client.c:257,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:258,3'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:260,26'
              BranchSideFuncs:
                - stats_client_free_event
                - stats_client_send_event
        - Branch String:   'stats-client.c:261,34'
          Branch Sides:
            - BranchSide:      'stats-client.c:261,37'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:262,3'
              BranchSideFuncs: []
        - Branch String:   'stats-client.c:261,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:262,3'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:264,10'
              BranchSideFuncs:
                - stats_client_free_event
                - stats_client_send_event
        - Branch String:   'stats-client.c:264,2'
          Branch Sides:
            - BranchSide:      'stats-client.c:266,3'
              BranchSideFuncs: []
            - BranchSide:      'stats-client.c:268,27'
              BranchSideFuncs:
                - stats_client_send_event
            - BranchSide:      'stats-client.c:271,27'
              BranchSideFuncs:
                - stats_client_free_event
            - BranchSide:      'stats-client.c:274,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'stats-client.c:268,3'
          Dst:             stats_client_send_event
        - Src:             'stats-client.c:271,3'
          Dst:             stats_client_free_event
    - functionName:    stats_global_deinit
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_list_deinit
        - event_category_unregister_callback
        - event_unregister_callback
        - stats_category_registered
        - stats_event_callback
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stats-client.c:313,2'
          Branch Sides:
            - BranchSide:      'stats-client.c:313,2'
              BranchSideFuncs:
                - event_unregister_callback
                - event_category_unregister_callback
                - connection_list_deinit
            - BranchSide:      'stats-client.c:313,2'
              BranchSideFuncs:
                - event_unregister_callback
                - event_category_unregister_callback
                - connection_list_deinit
      Callsites:
        - Src:             'stats-client.c:313,2'
          Dst:             event_unregister_callback
        - Src:             'stats-client.c:313,2'
          Dst:             stats_event_callback
        - Src:             'stats-client.c:314,2'
          Dst:             event_category_unregister_callback
        - Src:             'stats-client.c:314,2'
          Dst:             stats_category_registered
        - Src:             'stats-client.c:315,2'
          Dst:             connection_list_deinit
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    stats_client_deinit_callback
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - e_error
        - io_loop_stop
        - o_stream_flush
        - o_stream_get_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stats-client.c:434,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:435,3'
              BranchSideFuncs:
                - o_stream_get_error
                - e_error
                - io_loop_stop
            - BranchSide:      'stats-client.c:438,6'
              BranchSideFuncs:
                - io_loop_stop
        - Branch String:   'stats-client.c:438,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:438,6'
              BranchSideFuncs:
                - io_loop_stop
            - BranchSide:      'stats-client.c:439,16'
              BranchSideFuncs:
                - io_loop_stop
      Callsites:
        - Src:             'stats-client.c:433,12'
          Dst:             o_stream_flush
        - Src:             'stats-client.c:435,3'
          Dst:             o_stream_get_error
        - Src:             'stats-client.c:435,3'
          Dst:             e_error
        - Src:             'stats-client.c:439,3'
          Dst:             io_loop_stop
    - functionName:    stats_client_deinit
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     externalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _client
      BBCount:         15
      ICount:          109
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - connection_deinit
        - event_filter_unref
        - o_stream_get_buffer_used_size
        - o_stream_set_flush_callback
        - o_stream_uncork
        - o_stream_unref
        - p_free_internal
        - stats_client_deinit_callback
        - stats_client_wait
        - stats_global_deinit
        - timeout_remove
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stats-client.c:449,34'
          Branch Sides:
            - BranchSide:      'stats-client.c:449,38'
              BranchSideFuncs:
                - o_stream_get_buffer_used_size
                - event_filter_unref
                - connection_deinit
                - timeout_remove
                - o_stream_unref
                - p_free_internal.3078
                - stats_global_deinit
                - o_stream_set_flush_callback
                - o_stream_uncork
                - stats_client_wait
            - BranchSide:      'stats-client.c:458,22'
              BranchSideFuncs:
                - event_filter_unref
                - connection_deinit
                - timeout_remove
                - o_stream_unref
                - p_free_internal.3078
                - stats_global_deinit
        - Branch String:   'stats-client.c:449,66'
          Branch Sides:
            - BranchSide:      'stats-client.c:450,36'
              BranchSideFuncs:
                - event_filter_unref
                - connection_deinit
                - timeout_remove
                - o_stream_unref
                - p_free_internal.3078
                - stats_global_deinit
            - BranchSide:      'stats-client.c:458,22'
              BranchSideFuncs:
                - event_filter_unref
                - connection_deinit
                - timeout_remove
                - o_stream_unref
                - p_free_internal.3078
                - stats_global_deinit
        - Branch String:   'stats-client.c:449,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:451,3'
              BranchSideFuncs:
                - o_stream_set_flush_callback
                - o_stream_uncork
                - stats_client_wait
                - event_filter_unref
                - connection_deinit
                - timeout_remove
                - o_stream_unref
                - p_free_internal.3078
                - stats_global_deinit
            - BranchSide:      'stats-client.c:458,22'
              BranchSideFuncs:
                - event_filter_unref
                - connection_deinit
                - timeout_remove
                - o_stream_unref
                - p_free_internal.3078
                - stats_global_deinit
        - Branch String:   'stats-client.c:464,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:464,6'
              BranchSideFuncs:
                - stats_global_deinit
            - BranchSide:      'stats-client.c:465,3'
              BranchSideFuncs:
                - stats_global_deinit
      Callsites:
        - Src:             'stats-client.c:450,6'
          Dst:             o_stream_get_buffer_used_size
        - Src:             'stats-client.c:451,3'
          Dst:             o_stream_set_flush_callback
        - Src:             'stats-client.c:451,3'
          Dst:             stats_client_deinit_callback
        - Src:             'stats-client.c:454,3'
          Dst:             o_stream_uncork
        - Src:             'stats-client.c:455,3'
          Dst:             stats_client_wait
        - Src:             'stats-client.c:458,2'
          Dst:             event_filter_unref
        - Src:             'stats-client.c:459,2'
          Dst:             connection_deinit
        - Src:             'stats-client.c:460,2'
          Dst:             timeout_remove
        - Src:             'stats-client.c:461,2'
          Dst:             o_stream_unref
        - Src:             'stats-client.c:462,2'
          Dst:             p_free_internal
        - Src:             'stats-client.c:465,3'
          Dst:             stats_global_deinit
    - functionName:    stats_client_init_unittest
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     externalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 427
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - buf
        - filter
      BBCount:         8
      ICount:          82
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - connection_init_client_unix
        - event_filter_create
        - event_filter_parse
        - event_set_global_debug_send_filter
        - i_panic
        - malloc_multiply_check
        - o_stream_create_buffer
        - o_stream_set_no_error_handling
        - p_malloc
        - stats_global_init
      functionUses:    0
      BranchProfiles:
        - Branch String:   'stats-client.c:414,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:415,3'
              BranchSideFuncs:
                - stats_global_init
                - malloc_multiply_check.3081
                - p_malloc.3082
                - connection_init_client_unix
                - o_stream_create_buffer
                - o_stream_set_no_error_handling
                - event_filter_create
                - event_filter_parse
                - i_panic
                - event_set_global_debug_send_filter
            - BranchSide:      'stats-client.c:417,11'
              BranchSideFuncs:
                - malloc_multiply_check.3081
                - p_malloc.3082
                - connection_init_client_unix
                - o_stream_create_buffer
                - o_stream_set_no_error_handling
                - event_filter_create
                - event_filter_parse
                - i_panic
                - event_set_global_debug_send_filter
        - Branch String:   'stats-client.c:424,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:425,58'
              BranchSideFuncs:
                - event_set_global_debug_send_filter
            - BranchSide:      'stats-client.c:426,37'
              BranchSideFuncs:
                - event_set_global_debug_send_filter
      Callsites:
        - Src:             'stats-client.c:415,3'
          Dst:             stats_global_init
        - Src:             'stats-client.c:417,11'
          Dst:             malloc_multiply_check
        - Src:             'stats-client.c:417,11'
          Dst:             p_malloc
        - Src:             'stats-client.c:418,2'
          Dst:             connection_init_client_unix
        - Src:             'stats-client.c:419,24'
          Dst:             o_stream_create_buffer
        - Src:             'stats-client.c:420,2'
          Dst:             o_stream_set_no_error_handling
        - Src:             'stats-client.c:423,19'
          Dst:             event_filter_create
        - Src:             'stats-client.c:424,7'
          Dst:             event_filter_parse
        - Src:             'stats-client.c:425,3'
          Dst:             i_panic
        - Src:             'stats-client.c:426,2'
          Dst:             event_set_global_debug_send_filter
    - functionName:    stats_global_init
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_list_init
        - event_category_register_callback
        - event_register_callback
        - stats_category_registered
        - stats_event_callback
      functionUses:    2
      BranchProfiles:
        - Branch String:   'stats-client.c:305,18'
          Branch Sides:
            - BranchSide:      'stats-client.c:305,18'
              BranchSideFuncs:
                - connection_list_init
                - event_register_callback
                - event_category_register_callback
            - BranchSide:      'stats-client.c:305,18'
              BranchSideFuncs:
                - connection_list_init
                - event_register_callback
                - event_category_register_callback
      Callsites:
        - Src:             'stats-client.c:305,18'
          Dst:             connection_list_init
        - Src:             'stats-client.c:307,2'
          Dst:             event_register_callback
        - Src:             'stats-client.c:307,2'
          Dst:             stats_event_callback
        - Src:             'stats-client.c:308,2'
          Dst:             event_category_register_callback
        - Src:             'stats-client.c:308,2'
          Dst:             stats_category_registered
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-master/../../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-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    stats_client_init
      functionSourceFile: '/src/dovecot/src/lib-master/stats-client.c'
      linkageType:     externalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - path
        - silent_notfound_errors
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - connection_init_client_unix
        - malloc_multiply_check
        - p_malloc
        - stats_client_connect
        - stats_global_init
      functionUses:    2
      BranchProfiles:
        - Branch String:   'stats-client.c:398,6'
          Branch Sides:
            - BranchSide:      'stats-client.c:398,6'
              BranchSideFuncs:
                - stats_global_init
                - malloc_multiply_check.3081
                - p_malloc.3082
                - connection_init_client_unix
                - stats_client_connect
            - BranchSide:      'stats-client.c:399,3'
              BranchSideFuncs:
                - stats_global_init
                - malloc_multiply_check.3081
                - p_malloc.3082
                - connection_init_client_unix
                - stats_client_connect
      Callsites:
        - Src:             'stats-client.c:399,3'
          Dst:             stats_global_init
        - Src:             'stats-client.c:401,11'
          Dst:             malloc_multiply_check
        - Src:             'stats-client.c:401,11'
          Dst:             p_malloc
        - Src:             'stats-client.c:403,2'
          Dst:             connection_init_client_unix
        - Src:             'stats-client.c:404,2'
          Dst:             stats_client_connect
    - functionName:    syslog_facility_find
      functionSourceFile: '/src/dovecot/src/lib-master/syslog-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - facility_r
      BBCount:         10
      ICount:          65
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'syslog-util.c:58,2'
          Branch Sides:
            - BranchSide:      'syslog-util.c:59,32'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'syslog-util.c:64,2'
              BranchSideFuncs: []
        - Branch String:   'syslog-util.c:59,7'
          Branch Sides:
            - BranchSide:      'syslog-util.c:60,36'
              BranchSideFuncs: []
            - BranchSide:      'syslog-util.c:63,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'syslog-util.c:59,7'
          Dst:             strcmp
    - functionName:    guid_128_empty
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/guid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - guid
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmd_kick_user_signal
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
        - args
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - master_admin_client_send_reply
        - master_admin_client_unref
        - master_service_set_last_kick_signal_user
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-admin-client.c:67,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:68,34'
              BranchSideFuncs:
                - master_admin_client_send_reply
            - BranchSide:      'master-admin-client.c:75,43'
              BranchSideFuncs:
                - master_service_set_last_kick_signal_user
                - master_admin_client_unref
      Callsites:
        - Src:             'master-admin-client.c:68,3'
          Dst:             master_admin_client_send_reply
        - Src:             'master-admin-client.c:75,2'
          Dst:             master_service_set_last_kick_signal_user
        - Src:             'master-admin-client.c:78,2'
          Dst:             master_admin_client_unref
    - functionName:    master_admin_client_send_reply
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     externalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
        - reply
      BBCount:         10
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - connection_input_resume
        - i_panic
        - master_admin_client_unref
        - o_stream_nsendv
        - strlen
      functionUses:    5
      BranchProfiles:
        - Branch String:   'master-admin-client.c:125,2'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:125,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-admin-client.c:126,2'
              BranchSideFuncs:
                - strlen
                - master_admin_client_unref
                - o_stream_nsendv
                - connection_input_resume
        - Branch String:   'master-admin-client.c:132,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:0,0'
              BranchSideFuncs:
                - o_stream_nsendv
                - connection_input_resume
                - master_admin_client_unref
            - BranchSide:      'master-admin-client.c:133,19'
              BranchSideFuncs:
                - o_stream_nsendv
                - connection_input_resume
                - master_admin_client_unref
      Callsites:
        - Src:             'master-admin-client.c:125,2'
          Dst:             i_panic
        - Src:             'master-admin-client.c:129,12'
          Dst:             strlen
        - Src:             'master-admin-client.c:133,3'
          Dst:             o_stream_nsendv
        - Src:             'master-admin-client.c:134,3'
          Dst:             connection_input_resume
        - Src:             'master-admin-client.c:138,2'
          Dst:             master_admin_client_unref
    - functionName:    master_admin_client_unref
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _client
      BBCount:         12
      ICount:          62
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - p_free_internal
      functionUses:    5
      BranchProfiles:
        - Branch String:   'master-admin-client.c:31,2'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:31,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-admin-client.c:32,3'
              BranchSideFuncs:
                - p_free_internal.3159
        - Branch String:   'master-admin-client.c:34,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:34,6'
              BranchSideFuncs:
                - p_free_internal.3159
            - BranchSide:      'master-admin-client.c:35,3'
              BranchSideFuncs:
                - p_free_internal.3159
      Callsites:
        - Src:             'master-admin-client.c:31,2'
          Dst:             i_panic
        - Src:             'master-admin-client.c:35,3'
          Dst:             p_free_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    cmd_kick_user
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
        - args
      BBCount:         14
      ICount:          85
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - guid_128_empty
        - guid_128_from_string
        - master_admin_client_send_reply
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-admin-client.c:42,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:43,34'
              BranchSideFuncs:
                - master_admin_client_send_reply
            - BranchSide:      'master-admin-client.c:47,6'
              BranchSideFuncs:
                - guid_128_from_string
                - t_strdup_printf
                - master_admin_client_send_reply
                - master_admin_client_send_reply
                - master_admin_client_send_reply
                - guid_128_empty
        - Branch String:   'master-admin-client.c:47,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:48,18'
              BranchSideFuncs:
                - guid_128_empty
                - t_strdup_printf
                - master_admin_client_send_reply
            - BranchSide:      'master-admin-client.c:49,32'
              BranchSideFuncs:
                - guid_128_from_string
                - t_strdup_printf
                - master_admin_client_send_reply
                - master_admin_client_send_reply
                - master_admin_client_send_reply
        - Branch String:   'master-admin-client.c:49,11'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:50,34'
              BranchSideFuncs:
                - master_admin_client_send_reply
            - BranchSide:      'master-admin-client.c:53,13'
              BranchSideFuncs:
                - t_strdup_printf
                - master_admin_client_send_reply
                - master_admin_client_send_reply
      Callsites:
        - Src:             'master-admin-client.c:43,3'
          Dst:             master_admin_client_send_reply
        - Src:             'master-admin-client.c:48,3'
          Dst:             guid_128_empty
        - Src:             'master-admin-client.c:49,11'
          Dst:             guid_128_from_string
        - Src:             'master-admin-client.c:50,3'
          Dst:             master_admin_client_send_reply
        - Src:             'master-admin-client.c:54,3'
          Dst:             master_admin_client_send_reply
        - Src:             'master-admin-client.c:58,41'
          Dst:             t_strdup_printf
        - Src:             'master-admin-client.c:58,2'
          Dst:             master_admin_client_send_reply
    - functionName:    master_admin_client_input_args
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - args
      BBCount:         24
      ICount:          143
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - cmd_kick_user
        - cmd_kick_user_signal
        - connection_input_halt
        - io_loop_stop
        - master_admin_client_ref
        - master_admin_client_unref
        - o_stream_nsend_str
        - strcmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-admin-client.c:87,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:90,25'
              BranchSideFuncs:
                - connection_input_halt
            - BranchSide:      'master-admin-client.c:93,20'
              BranchSideFuncs:
                - master_admin_client_ref
                - strcmp
                - strcmp
                - o_stream_nsend_str
                - master_admin_client_unref
                - cmd_kick_user_signal
                - cmd_kick_user
                - io_loop_stop
        - Branch String:   'master-admin-client.c:96,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:100,16'
              BranchSideFuncs:
                - io_loop_stop
                - master_admin_client_ref
                - strcmp
                - strcmp
                - o_stream_nsend_str
                - master_admin_client_unref
                - cmd_kick_user_signal
                - cmd_kick_user
            - BranchSide:      'master-admin-client.c:104,26'
              BranchSideFuncs:
                - master_admin_client_ref
                - strcmp
                - strcmp
                - o_stream_nsend_str
                - master_admin_client_unref
                - cmd_kick_user_signal
                - cmd_kick_user
        - Branch String:   'master-admin-client.c:107,36'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:108,36'
              BranchSideFuncs:
                - strcmp
                - o_stream_nsend_str
                - master_admin_client_unref
                - cmd_kick_user_signal
                - cmd_kick_user
            - BranchSide:      'master-admin-client.c:110,18'
              BranchSideFuncs:
                - strcmp
                - o_stream_nsend_str
                - master_admin_client_unref
                - cmd_kick_user_signal
        - Branch String:   'master-admin-client.c:107,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:109,17'
              BranchSideFuncs:
                - cmd_kick_user
            - BranchSide:      'master-admin-client.c:110,18'
              BranchSideFuncs:
                - strcmp
                - o_stream_nsend_str
                - master_admin_client_unref
                - cmd_kick_user_signal
        - Branch String:   'master-admin-client.c:110,11'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:111,24'
              BranchSideFuncs:
                - cmd_kick_user_signal
            - BranchSide:      'master-admin-client.c:113,43'
              BranchSideFuncs:
                - o_stream_nsend_str
                - master_admin_client_unref
        - Branch String:   'master-admin-client.c:113,55'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:114,37'
              BranchSideFuncs:
                - o_stream_nsend_str
                - master_admin_client_unref
            - BranchSide:      'master-admin-client.c:115,3'
              BranchSideFuncs:
                - o_stream_nsend_str
                - master_admin_client_unref
      Callsites:
        - Src:             'master-admin-client.c:90,3'
          Dst:             connection_input_halt
        - Src:             'master-admin-client.c:100,3'
          Dst:             io_loop_stop
        - Src:             'master-admin-client.c:104,2'
          Dst:             master_admin_client_ref
        - Src:             'master-admin-client.c:107,6'
          Dst:             strcmp
        - Src:             'master-admin-client.c:109,3'
          Dst:             cmd_kick_user
        - Src:             'master-admin-client.c:110,11'
          Dst:             strcmp
        - Src:             'master-admin-client.c:111,3'
          Dst:             cmd_kick_user_signal
        - Src:             'master-admin-client.c:116,3'
          Dst:             o_stream_nsend_str
        - Src:             'master-admin-client.c:117,3'
          Dst:             master_admin_client_unref
    - functionName:    master_admin_client_ref
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 25
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-admin-client.c:23,2'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:23,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-admin-client.c:23,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-admin-client.c:23,2'
          Dst:             i_panic
    - functionName:    master_admin_client_destroy
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_deinit
        - master_admin_client_unref
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'master-admin-client.c:146,2'
          Dst:             connection_deinit
        - Src:             'master-admin-client.c:147,2'
          Dst:             master_admin_client_unref
    - functionName:    master_admin_clients_deinit
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     externalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          23
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - connection_list_deinit
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-admin-client.c:219,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:219,6'
              BranchSideFuncs:
                - connection_list_deinit
            - BranchSide:      'master-admin-client.c:219,6'
              BranchSideFuncs:
                - connection_list_deinit
        - Branch String:   'master-admin-client.c:219,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:219,6'
              BranchSideFuncs:
                - connection_list_deinit
            - BranchSide:      'master-admin-client.c:220,3'
              BranchSideFuncs:
                - connection_list_deinit
      Callsites:
        - Src:             'master-admin-client.c:220,3'
          Dst:             connection_list_deinit
    - functionName:    master_admin_clients_init
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     externalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callbacks
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    master_admin_client_can_accept
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     externalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strcmp
      functionUses:    5
      BranchProfiles:
        - Branch String:   'master-admin-client.c:209,22'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:209,32'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'master-admin-client.c:209,22'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-admin-client.c:209,25'
          Dst:             strcmp
    - functionName:    master_admin_client_initial_read
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - client
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_switch_ioloop
        - connection_switch_ioloop_to
        - io_loop_create
        - io_loop_destroy
        - io_loop_run
        - timeout_add_short
        - timeout_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'master-admin-client.c:169,24'
          Dst:             io_loop_create
        - Src:             'master-admin-client.c:170,2'
          Dst:             connection_switch_ioloop
        - Src:             'master-admin-client.c:172,3'
          Dst:             timeout_add_short
        - Src:             'master-admin-client.c:172,3'
          Dst:             io_loop_stop
        - Src:             'master-admin-client.c:174,2'
          Dst:             io_loop_run
        - Src:             'master-admin-client.c:176,2'
          Dst:             timeout_remove
        - Src:             'master-admin-client.c:177,2'
          Dst:             connection_switch_ioloop_to
        - Src:             'master-admin-client.c:178,2'
          Dst:             io_loop_destroy
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-master/../../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-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    master_admin_client_create
      functionSourceFile: '/src/dovecot/src/lib-master/master-admin-client.c'
      linkageType:     externalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - master_conn
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - connection_init_server
        - connection_list_init
        - malloc_multiply_check
        - master_admin_client_initial_read
        - master_admin_client_ref
        - master_admin_client_unref
        - master_service_get_client_limit
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-admin-client.c:185,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:187,4'
              BranchSideFuncs:
                - connection_list_init
                - malloc_multiply_check.3173
                - p_malloc.3175
                - connection_init_server
                - master_service_get_client_limit
                - master_admin_client_ref
                - master_admin_client_initial_read
                - master_admin_client_unref
            - BranchSide:      'master-admin-client.c:191,11'
              BranchSideFuncs:
                - malloc_multiply_check.3173
                - p_malloc.3175
                - connection_init_server
                - master_service_get_client_limit
                - master_admin_client_ref
                - master_admin_client_initial_read
                - master_admin_client_unref
        - Branch String:   'master-admin-client.c:195,6'
          Branch Sides:
            - BranchSide:      'master-admin-client.c:195,6'
              BranchSideFuncs:
                - master_admin_client_ref
                - master_admin_client_initial_read
                - master_admin_client_unref
            - BranchSide:      'master-admin-client.c:201,27'
              BranchSideFuncs:
                - master_admin_client_ref
                - master_admin_client_initial_read
                - master_admin_client_unref
      Callsites:
        - Src:             'master-admin-client.c:187,4'
          Dst:             connection_list_init
        - Src:             'master-admin-client.c:191,11'
          Dst:             malloc_multiply_check
        - Src:             'master-admin-client.c:191,11'
          Dst:             p_malloc
        - Src:             'master-admin-client.c:193,2'
          Dst:             connection_init_server
        - Src:             'master-admin-client.c:195,6'
          Dst:             master_service_get_client_limit
        - Src:             'master-admin-client.c:201,3'
          Dst:             master_admin_client_ref
        - Src:             'master-admin-client.c:202,3'
          Dst:             master_admin_client_initial_read
        - Src:             'master-admin-client.c:203,3'
          Dst:             master_admin_client_unref
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-master/../../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-master/../../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_c
      functionSourceFile: '/src/dovecot/src/lib-master/../../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:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-master/../../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:    master_instance_list_write
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - fd
        - path
      BBCount:         13
      ICount:          132
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_error
        - o_stream_cork
        - o_stream_create_fd
        - o_stream_destroy
        - o_stream_finish
        - o_stream_get_error
        - o_stream_nsend
        - str_append_c
        - str_append_tabescaped
        - str_data
        - str_printfa
        - str_truncate
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-instance.c:143,2'
          Branch Sides:
            - BranchSide:      'master-instance.c:144,16'
              BranchSideFuncs:
                - str_truncate.3254
                - str_printfa
                - str_append_tabescaped
                - str_append_c.3253
                - str_append_tabescaped
                - str_append_c.3253
                - str_append_c.3253
                - str_data.3252
                - str_len.3251
                - o_stream_nsend
                - o_stream_finish
                - o_stream_destroy
                - o_stream_get_error
                - i_error
                - str_append_tabescaped
            - BranchSide:      'master-instance.c:155,22'
              BranchSideFuncs:
                - o_stream_finish
                - o_stream_destroy
                - o_stream_get_error
                - i_error
        - Branch String:   'master-instance.c:150,7'
          Branch Sides:
            - BranchSide:      'master-instance.c:151,26'
              BranchSideFuncs:
                - str_append_tabescaped
                - str_append_c.3253
                - str_data.3252
                - str_len.3251
                - o_stream_nsend
                - o_stream_finish
                - o_stream_destroy
                - o_stream_get_error
                - i_error
                - str_truncate.3254
                - str_printfa
                - str_append_tabescaped
                - str_append_c.3253
                - str_append_tabescaped
                - str_append_c.3253
            - BranchSide:      'master-instance.c:152,3'
              BranchSideFuncs:
                - str_append_c.3253
                - str_data.3252
                - str_len.3251
                - o_stream_nsend
                - o_stream_finish
                - o_stream_destroy
                - o_stream_get_error
                - i_error
                - str_truncate.3254
                - str_printfa
                - str_append_tabescaped
                - str_append_c.3253
                - str_append_tabescaped
                - str_append_c.3253
                - str_append_tabescaped
        - Branch String:   'master-instance.c:155,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:155,6'
              BranchSideFuncs:
                - o_stream_get_error
                - i_error
                - o_stream_destroy
            - BranchSide:      'master-instance.c:156,35'
              BranchSideFuncs:
                - o_stream_get_error
                - i_error
                - o_stream_destroy
      Callsites:
        - Src:             'master-instance.c:138,18'
          Dst:             t_str_new
        - Src:             'master-instance.c:141,11'
          Dst:             o_stream_create_fd
        - Src:             'master-instance.c:142,2'
          Dst:             o_stream_cork
        - Src:             'master-instance.c:144,3'
          Dst:             str_truncate
        - Src:             'master-instance.c:145,3'
          Dst:             str_printfa
        - Src:             'master-instance.c:146,3'
          Dst:             str_append_tabescaped
        - Src:             'master-instance.c:147,3'
          Dst:             str_append_c
        - Src:             'master-instance.c:148,3'
          Dst:             str_append_tabescaped
        - Src:             'master-instance.c:149,3'
          Dst:             str_append_c
        - Src:             'master-instance.c:151,4'
          Dst:             str_append_tabescaped
        - Src:             'master-instance.c:152,3'
          Dst:             str_append_c
        - Src:             'master-instance.c:153,26'
          Dst:             str_data
        - Src:             'master-instance.c:153,41'
          Dst:             str_len
        - Src:             'master-instance.c:153,3'
          Dst:             o_stream_nsend
        - Src:             'master-instance.c:155,6'
          Dst:             o_stream_finish
        - Src:             'master-instance.c:156,41'
          Dst:             o_stream_get_error
        - Src:             'master-instance.c:156,3'
          Dst:             i_error
        - Src:             'master-instance.c:159,2'
          Dst:             o_stream_destroy
    - functionName:    master_instance_list_add_line
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - line
      BBCount:         8
      ICount:          96
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_space_i
        - master_instance_update_config_path
        - p_strdup
        - p_strdup_empty
        - str_array_length
        - str_to_time
        - t_strsplit_tabescaped
      functionUses:    1
      BranchProfiles:
        - Branch String:   'master-instance.c:88,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:89,3'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:90,18'
              BranchSideFuncs:
                - str_to_time
                - array_append_space_i.3257
                - p_strdup
                - p_strdup
                - p_strdup_empty
                - master_instance_update_config_path
        - Branch String:   'master-instance.c:90,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:91,3'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:93,9'
              BranchSideFuncs:
                - array_append_space_i.3257
                - p_strdup
                - p_strdup
                - p_strdup_empty
                - master_instance_update_config_path
      Callsites:
        - Src:             'master-instance.c:87,9'
          Dst:             t_strsplit_tabescaped
        - Src:             'master-instance.c:88,6'
          Dst:             str_array_length
        - Src:             'master-instance.c:90,6'
          Dst:             str_to_time
        - Src:             'master-instance.c:93,9'
          Dst:             array_append_space_i
        - Src:             'master-instance.c:95,15'
          Dst:             p_strdup
        - Src:             'master-instance.c:96,19'
          Dst:             p_strdup
        - Src:             'master-instance.c:97,22'
          Dst:             p_strdup_empty
        - Src:             'master-instance.c:98,2'
          Dst:             master_instance_update_config_path
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 336
      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:334,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    master_instance_update_config_path
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - inst
      BBCount:         11
      ICount:          80
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - i_error
        - null_strcmp
        - p_strdup
        - t_readlink
        - t_strconcat
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-instance.c:66,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:68,7'
              BranchSideFuncs:
                - __errno_location
                - i_error
            - BranchSide:      'master-instance.c:72,18'
              BranchSideFuncs:
                - null_strcmp
                - p_strdup
        - Branch String:   'master-instance.c:68,7'
          Branch Sides:
            - BranchSide:      'master-instance.c:69,41'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'master-instance.c:70,3'
              BranchSideFuncs: []
        - Branch String:   'master-instance.c:72,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:72,6'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'master-instance.c:73,32'
              BranchSideFuncs:
                - p_strdup
      Callsites:
        - Src:             'master-instance.c:65,9'
          Dst:             t_strconcat
        - Src:             'master-instance.c:66,6'
          Dst:             t_readlink
        - Src:             'master-instance.c:68,7'
          Dst:             __errno_location
        - Src:             'master-instance.c:69,4'
          Dst:             i_error
        - Src:             'master-instance.c:72,6'
          Dst:             null_strcmp
        - Src:             'master-instance.c:73,23'
          Dst:             p_strdup
    - functionName:    array_clear_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 190
      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:189,2'
          Dst:             buffer_set_used_size
    - functionName:    master_instance_list_refresh
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
      BBCount:         23
      ICount:          133
      EdgeCount:       28
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - array_clear_i
        - i_error
        - i_panic
        - i_stream_create_fd_autoclose
        - i_stream_destroy
        - i_stream_get_error
        - i_stream_read_next_line
        - master_instance_list_add_line
        - open
        - t_pop
        - t_push
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-instance.c:111,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:112,7'
              BranchSideFuncs:
                - __errno_location
                - i_error
            - BranchSide:      'master-instance.c:118,10'
              BranchSideFuncs:
                - i_stream_create_fd_autoclose
                - i_stream_read_next_line
                - i_stream_destroy
                - i_stream_get_error
                - i_error
                - t_push
                - master_instance_list_add_line
                - t_pop
                - i_panic
                - i_error
        - Branch String:   'master-instance.c:112,7'
          Branch Sides:
            - BranchSide:      'master-instance.c:113,4'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:115,34'
              BranchSideFuncs:
                - i_error
        - Branch String:   'master-instance.c:119,2'
          Branch Sides:
            - BranchSide:      'master-instance.c:119,58'
              BranchSideFuncs:
                - t_push
                - master_instance_list_add_line
                - t_pop
                - i_stream_read_next_line
                - i_stream_destroy
                - i_stream_get_error
                - i_error
                - i_panic
                - i_error
            - BranchSide:      'master-instance.c:123,6'
              BranchSideFuncs:
                - i_stream_destroy
                - i_stream_get_error
                - i_error
        - Branch String:   'master-instance.c:120,7'
          Branch Sides:
            - BranchSide:      'master-instance.c:121,38'
              BranchSideFuncs:
                - i_error
                - t_pop
                - i_stream_read_next_line
                - i_stream_destroy
                - i_stream_get_error
                - i_error
                - t_push
                - master_instance_list_add_line
                - i_panic
            - BranchSide:      'master-instance.c:122,4'
              BranchSideFuncs:
                - t_pop
                - i_stream_read_next_line
                - i_stream_destroy
                - i_stream_get_error
                - i_error
                - t_push
                - master_instance_list_add_line
                - i_error
                - i_panic
        - Branch String:   'master-instance.c:122,4'
          Branch Sides:
            - BranchSide:      'master-instance.c:122,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-instance.c:122,4'
              BranchSideFuncs:
                - i_stream_read_next_line
                - i_stream_destroy
                - i_stream_get_error
                - i_error
                - t_push
                - master_instance_list_add_line
                - t_pop
                - i_panic
                - i_error
        - Branch String:   'master-instance.c:123,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:124,34'
              BranchSideFuncs:
                - i_stream_get_error
                - i_error
                - i_stream_destroy
            - BranchSide:      'master-instance.c:128,2'
              BranchSideFuncs:
                - i_stream_destroy
      Callsites:
        - Src:             'master-instance.c:108,2'
          Dst:             array_clear_i
        - Src:             'master-instance.c:110,7'
          Dst:             open
        - Src:             'master-instance.c:112,7'
          Dst:             __errno_location
        - Src:             'master-instance.c:115,3'
          Dst:             i_error
        - Src:             'master-instance.c:118,10'
          Dst:             i_stream_create_fd_autoclose
        - Src:             'master-instance.c:119,17'
          Dst:             i_stream_read_next_line
        - Src:             'master-instance.c:119,58'
          Dst:             t_push
        - Src:             'master-instance.c:120,7'
          Dst:             master_instance_list_add_line
        - Src:             'master-instance.c:121,4'
          Dst:             i_error
        - Src:             'master-instance.c:122,4'
          Dst:             t_pop
        - Src:             'master-instance.c:122,4'
          Dst:             i_panic
        - Src:             'master-instance.c:125,4'
          Dst:             i_stream_get_error
        - Src:             'master-instance.c:124,3'
          Dst:             i_error
        - Src:             'master-instance.c:128,2'
          Dst:             i_stream_destroy
    - 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:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      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:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    master_instance_iterate_list_deinit
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     externalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 369
      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:             'master-instance.c:368,2'
          Dst:             p_free_internal
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:273,2'
          Dst:             i_panic
    - functionName:    master_instance_iterate_list_next
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     externalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - iter
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_count_i
        - array_idx_i
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-instance.c:357,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:358,3'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:359,9'
              BranchSideFuncs:
                - array_idx_i.3267
      Callsites:
        - Src:             'master-instance.c:357,19'
          Dst:             array_count_i
        - Src:             'master-instance.c:359,9'
          Dst:             array_idx_i
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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:    master_instance_list_iterate_init
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     externalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - master_instance_list_refresh_and_update
        - p_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'master-instance.c:348,9'
          Dst:             malloc_multiply_check
        - Src:             'master-instance.c:348,9'
          Dst:             p_malloc
        - Src:             'master-instance.c:350,8'
          Dst:             master_instance_list_refresh_and_update
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-master/../../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-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    master_instance_list_refresh_and_update
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
      BBCount:         15
      ICount:          79
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - master_instance_list_refresh
        - master_instance_write_finish
        - master_instance_write_init
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-instance.c:313,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:314,3'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:315,6'
              BranchSideFuncs:
                - master_instance_write_init
                - master_instance_write_finish
        - Branch String:   'master-instance.c:315,33'
          Branch Sides:
            - BranchSide:      'master-instance.c:315,37'
              BranchSideFuncs:
                - master_instance_write_init
                - master_instance_write_finish
            - BranchSide:      'master-instance.c:322,2'
              BranchSideFuncs: []
        - Branch String:   'master-instance.c:315,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:317,40'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:322,2'
              BranchSideFuncs: []
        - Branch String:   'master-instance.c:317,7'
          Branch Sides:
            - BranchSide:      'master-instance.c:318,4'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:319,36'
              BranchSideFuncs:
                - master_instance_write_finish
        - Branch String:   'master-instance.c:319,7'
          Branch Sides:
            - BranchSide:      'master-instance.c:320,4'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:321,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-instance.c:313,6'
          Dst:             master_instance_list_refresh
        - Src:             'master-instance.c:317,13'
          Dst:             master_instance_write_init
        - Src:             'master-instance.c:319,7'
          Dst:             master_instance_write_finish
    - functionName:    master_instance_write_init
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - dotlock_r
      BBCount:         12
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - file_dotlock_delete
        - file_dotlock_open_mode
        - i_error
        - i_panic
        - master_instance_list_refresh
      functionUses:    4
      BranchProfiles:
        - Branch String:   'master-instance.c:168,2'
          Branch Sides:
            - BranchSide:      'master-instance.c:168,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-instance.c:170,3'
              BranchSideFuncs:
                - file_dotlock_open_mode
                - master_instance_list_refresh
                - file_dotlock_delete
                - i_error
        - Branch String:   'master-instance.c:174,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:175,47'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'master-instance.c:178,35'
              BranchSideFuncs:
                - master_instance_list_refresh
                - file_dotlock_delete
        - Branch String:   'master-instance.c:178,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:179,23'
              BranchSideFuncs:
                - file_dotlock_delete
            - BranchSide:      'master-instance.c:182,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'master-instance.c:168,2'
          Dst:             i_panic
        - Src:             'master-instance.c:172,7'
          Dst:             file_dotlock_open_mode
        - Src:             'master-instance.c:175,3'
          Dst:             i_error
        - Src:             'master-instance.c:178,6'
          Dst:             master_instance_list_refresh
        - Src:             'master-instance.c:179,3'
          Dst:             file_dotlock_delete
    - functionName:    master_instance_write_finish
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - fd
        - dotlock
      BBCount:         18
      ICount:          119
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - fdatasync
        - file_dotlock_delete
        - file_dotlock_get_lock_path
        - file_dotlock_replace
        - i_error
        - i_panic
        - master_instance_list_write
        - t_pop
        - t_push
      functionUses:    4
      BranchProfiles:
        - Branch String:   'master-instance.c:192,2'
          Branch Sides:
            - BranchSide:      'master-instance.c:192,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-instance.c:194,2'
              BranchSideFuncs:
                - t_push
                - master_instance_list_write
                - t_pop
                - fdatasync
                - file_dotlock_replace
                - i_error
                - file_dotlock_delete
                - file_dotlock_delete
                - i_panic
        - Branch String:   'master-instance.c:196,4'
          Branch Sides:
            - BranchSide:      'master-instance.c:196,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-instance.c:196,4'
              BranchSideFuncs:
                - fdatasync
                - file_dotlock_replace
                - i_error
                - file_dotlock_delete
                - file_dotlock_delete
        - Branch String:   'master-instance.c:199,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:200,23'
              BranchSideFuncs:
                - file_dotlock_delete
            - BranchSide:      'master-instance.c:203,16'
              BranchSideFuncs:
                - fdatasync
                - file_dotlock_replace
                - i_error
                - file_dotlock_delete
        - Branch String:   'master-instance.c:203,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:204,39'
              BranchSideFuncs:
                - i_error
                - file_dotlock_delete
            - BranchSide:      'master-instance.c:208,2'
              BranchSideFuncs:
                - file_dotlock_replace
      Callsites:
        - Src:             'master-instance.c:189,26'
          Dst:             file_dotlock_get_lock_path
        - Src:             'master-instance.c:192,2'
          Dst:             i_panic
        - Src:             'master-instance.c:194,2'
          Dst:             t_push
        - Src:             'master-instance.c:195,9'
          Dst:             master_instance_list_write
        - Src:             'master-instance.c:196,4'
          Dst:             t_pop
        - Src:             'master-instance.c:196,4'
          Dst:             i_panic
        - Src:             'master-instance.c:200,3'
          Dst:             file_dotlock_delete
        - Src:             'master-instance.c:203,6'
          Dst:             fdatasync
        - Src:             'master-instance.c:204,3'
          Dst:             i_error
        - Src:             'master-instance.c:205,3'
          Dst:             file_dotlock_delete
        - Src:             'master-instance.c:209,9'
          Dst:             file_dotlock_replace
    - functionName:    fdatasync
      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:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 244
      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:242,2'
          Dst:             buffer_delete
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      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:251,13'
          Dst:             array_count_i
    - functionName:    master_instance_list_remove
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     externalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - base_dir
      BBCount:         15
      ICount:          111
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_delete_i
        - array_get_i
        - file_dotlock_delete
        - master_instance_write_finish
        - master_instance_write_init
        - strcmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-instance.c:288,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:289,3'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:291,14'
              BranchSideFuncs:
                - array_get_i.3284
                - master_instance_write_finish
                - file_dotlock_delete
                - strcmp
                - array_delete_i.3283
        - Branch String:   'master-instance.c:292,2'
          Branch Sides:
            - BranchSide:      'master-instance.c:293,14'
              BranchSideFuncs:
                - strcmp
                - master_instance_write_finish
                - file_dotlock_delete
                - array_delete_i.3283
            - BranchSide:      'master-instance.c:299,6'
              BranchSideFuncs:
                - master_instance_write_finish
                - file_dotlock_delete
        - Branch String:   'master-instance.c:293,7'
          Branch Sides:
            - BranchSide:      'master-instance.c:294,4'
              BranchSideFuncs:
                - array_delete_i.3283
                - master_instance_write_finish
                - file_dotlock_delete
            - BranchSide:      'master-instance.c:297,2'
              BranchSideFuncs:
                - master_instance_write_finish
                - file_dotlock_delete
                - strcmp
                - array_delete_i.3283
        - Branch String:   'master-instance.c:299,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:300,3'
              BranchSideFuncs:
                - file_dotlock_delete
            - BranchSide:      'master-instance.c:304,38'
              BranchSideFuncs:
                - master_instance_write_finish
      Callsites:
        - Src:             'master-instance.c:288,12'
          Dst:             master_instance_write_init
        - Src:             'master-instance.c:291,14'
          Dst:             array_get_i
        - Src:             'master-instance.c:293,7'
          Dst:             strcmp
        - Src:             'master-instance.c:294,4'
          Dst:             array_delete_i
        - Src:             'master-instance.c:300,3'
          Dst:             file_dotlock_delete
        - Src:             'master-instance.c:304,9'
          Dst:             master_instance_write_finish
    - functionName:    master_instance_list_find_by_name
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     externalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - name
      BBCount:         17
      ICount:          104
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - array_count_i
        - i_panic
        - master_instance_list_refresh_and_update
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-instance.c:331,2'
          Branch Sides:
            - BranchSide:      'master-instance.c:331,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-instance.c:333,6'
              BranchSideFuncs:
                - array_count_i.3272
                - strcmp
                - master_instance_list_refresh_and_update
        - Branch String:   'master-instance.c:333,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:334,49'
              BranchSideFuncs:
                - master_instance_list_refresh_and_update
                - strcmp
            - BranchSide:      'master-instance.c:336,2'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'master-instance.c:336,2'
          Branch Sides:
            - BranchSide:      'master-instance.c:337,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'master-instance.c:340,2'
              BranchSideFuncs: []
        - Branch String:   'master-instance.c:337,7'
          Branch Sides:
            - BranchSide:      'master-instance.c:338,11'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:339,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'master-instance.c:331,2'
          Dst:             i_panic
        - Src:             'master-instance.c:333,6'
          Dst:             array_count_i
        - Src:             'master-instance.c:334,9'
          Dst:             master_instance_list_refresh_and_update
        - Src:             'master-instance.c:337,7'
          Dst:             strcmp
    - functionName:    master_instance_list_set_name
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     externalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - base_dir
        - name
      BBCount:         18
      ICount:          143
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - array_append_space_i
        - file_dotlock_delete
        - i_panic
        - master_instance_find
        - master_instance_list_find_by_name
        - master_instance_write_finish
        - master_instance_write_init
        - p_strdup
        - strcmp
        - time
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-instance.c:255,2'
          Branch Sides:
            - BranchSide:      'master-instance.c:255,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'master-instance.c:257,39'
              BranchSideFuncs:
                - master_instance_write_init
                - master_instance_list_find_by_name
                - master_instance_find
                - p_strdup
                - time
                - master_instance_write_finish
                - array_append_space_i.3257
                - p_strdup
                - strcmp
                - file_dotlock_delete
        - Branch String:   'master-instance.c:257,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:258,3'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:260,48'
              BranchSideFuncs:
                - master_instance_list_find_by_name
                - master_instance_find
                - p_strdup
                - time
                - master_instance_write_finish
                - array_append_space_i.3257
                - p_strdup
                - strcmp
                - file_dotlock_delete
        - Branch String:   'master-instance.c:261,24'
          Branch Sides:
            - BranchSide:      'master-instance.c:262,13'
              BranchSideFuncs:
                - strcmp
                - master_instance_find
                - p_strdup
                - time
                - master_instance_write_finish
                - array_append_space_i.3257
                - p_strdup
                - file_dotlock_delete
            - BranchSide:      'master-instance.c:269,30'
              BranchSideFuncs:
                - master_instance_find
                - p_strdup
                - time
                - master_instance_write_finish
                - array_append_space_i.3257
                - p_strdup
        - Branch String:   'master-instance.c:261,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:264,3'
              BranchSideFuncs:
                - file_dotlock_delete
            - BranchSide:      'master-instance.c:269,30'
              BranchSideFuncs:
                - master_instance_find
                - p_strdup
                - time
                - master_instance_write_finish
                - array_append_space_i.3257
                - p_strdup
        - Branch String:   'master-instance.c:270,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:271,10'
              BranchSideFuncs:
                - array_append_space_i.3257
                - p_strdup
                - p_strdup
                - time
                - master_instance_write_finish
            - BranchSide:      'master-instance.c:274,24'
              BranchSideFuncs:
                - p_strdup
                - time
                - master_instance_write_finish
      Callsites:
        - Src:             'master-instance.c:255,2'
          Dst:             i_panic
        - Src:             'master-instance.c:257,12'
          Dst:             master_instance_write_init
        - Src:             'master-instance.c:260,14'
          Dst:             master_instance_list_find_by_name
        - Src:             'master-instance.c:262,6'
          Dst:             strcmp
        - Src:             'master-instance.c:264,3'
          Dst:             file_dotlock_delete
        - Src:             'master-instance.c:269,9'
          Dst:             master_instance_find
        - Src:             'master-instance.c:271,10'
          Dst:             array_append_space_i
        - Src:             'master-instance.c:272,20'
          Dst:             p_strdup
        - Src:             'master-instance.c:274,15'
          Dst:             p_strdup
        - Src:             'master-instance.c:275,20'
          Dst:             time
        - Src:             'master-instance.c:277,9'
          Dst:             master_instance_write_finish
    - functionName:    master_instance_find
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - base_dir
      BBCount:         10
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_get_modifiable_data
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'master-instance.c:218,2'
          Branch Sides:
            - BranchSide:      'master-instance.c:219,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'master-instance.c:222,2'
              BranchSideFuncs: []
        - Branch String:   'master-instance.c:219,7'
          Branch Sides:
            - BranchSide:      'master-instance.c:220,11'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:221,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'master-instance.c:218,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'master-instance.c:219,7'
          Dst:             strcmp
    - functionName:    master_instance_list_update
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     externalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - base_dir
      BBCount:         9
      ICount:          78
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_space_i
        - master_instance_find
        - master_instance_update_config_path
        - master_instance_write_finish
        - master_instance_write_init
        - p_strdup
        - time
      functionUses:    0
      BranchProfiles:
        - Branch String:   'master-instance.c:232,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:233,3'
              BranchSideFuncs: []
            - BranchSide:      'master-instance.c:235,30'
              BranchSideFuncs:
                - master_instance_find
                - time
                - master_instance_update_config_path
                - master_instance_write_finish
                - array_append_space_i.3257
                - p_strdup
        - Branch String:   'master-instance.c:236,6'
          Branch Sides:
            - BranchSide:      'master-instance.c:237,10'
              BranchSideFuncs:
                - array_append_space_i.3257
                - p_strdup
                - time
                - master_instance_update_config_path
                - master_instance_write_finish
            - BranchSide:      'master-instance.c:241,20'
              BranchSideFuncs:
                - time
                - master_instance_update_config_path
                - master_instance_write_finish
      Callsites:
        - Src:             'master-instance.c:232,12'
          Dst:             master_instance_write_init
        - Src:             'master-instance.c:235,9'
          Dst:             master_instance_find
        - Src:             'master-instance.c:237,10'
          Dst:             array_append_space_i
        - Src:             'master-instance.c:239,20'
          Dst:             p_strdup
        - Src:             'master-instance.c:241,20'
          Dst:             time
        - Src:             'master-instance.c:242,2'
          Dst:             master_instance_update_config_path
        - Src:             'master-instance.c:244,9'
          Dst:             master_instance_write_finish
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    master_instance_list_deinit
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     externalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _list
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pool_unref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'master-instance.c:55,2'
          Dst:             pool_unref
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-master/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3265
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3265
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    master_instance_list_init
      functionSourceFile: '/src/dovecot/src/lib-master/master-instance.c'
      linkageType:     externalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_i
        - malloc_multiply_check
        - p_malloc
        - p_strdup
        - pool_alloconly_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'master-instance.c:42,9'
          Dst:             pool_alloconly_create
        - Src:             'master-instance.c:43,9'
          Dst:             malloc_multiply_check
        - Src:             'master-instance.c:43,9'
          Dst:             p_malloc
        - Src:             'master-instance.c:45,15'
          Dst:             p_strdup
        - Src:             'master-instance.c:46,2'
          Dst:             array_create_i
    - functionName:    ssl_iostream_get_ja3
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 348
      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_name
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 343
      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: 337
      functionLinenumberEnd: 338
      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: 332
      functionLinenumberEnd: 333
      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:    ssl_iostream_settings_drop_stream_only
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_settings_equals
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set1
        - set2
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - null_strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:306,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:307,62'
              BranchSideFuncs:
                - null_strcmp
                - memcmp
            - BranchSide:      'iostream-ssl.c:320,9'
              BranchSideFuncs:
                - memcmp
        - Branch String:   'iostream-ssl.c:311,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:312,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:315,4'
              BranchSideFuncs:
                - memcmp
                - null_strcmp
      Callsites:
        - Src:             'iostream-ssl.c:311,7'
          Dst:             null_strcmp
        - Src:             'iostream-ssl.c:320,9'
          Dst:             memcmp
    - functionName:    ssl_iostream_settings_init_from
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - dest
        - src
      BBCount:         7
      ICount:          72
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - p_strdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:290,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:291,62'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'iostream-ssl.c:296,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-ssl.c:294,15'
          Dst:             p_strdup
    - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    ssl_iostream_settings_dup
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - old_set
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - ssl_iostream_settings_init_from
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'iostream-ssl.c:278,12'
          Dst:             malloc_multiply_check
        - Src:             'iostream-ssl.c:278,12'
          Dst:             p_malloc
        - Src:             'iostream-ssl.c:279,2'
          Dst:             ssl_iostream_settings_init_from
    - functionName:    ssl_iostream_get_security_string
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 265
      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: 259
      functionLinenumberEnd: 260
      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: 254
      functionLinenumberEnd: 255
      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_name
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 250
      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_last_error
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_check_cert_validity
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 246
      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_broken_client_cert
        - ssl_iostream_has_valid_client_cert
        - t_strdup
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:230,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:231,44'
              BranchSideFuncs:
                - ssl_iostream_cert_match_name
                - t_strdup_printf
            - BranchSide:      'iostream-ssl.c:239,43'
              BranchSideFuncs:
                - ssl_iostream_cert_match_name
                - t_strdup_printf
        - Branch String:   'iostream-ssl.c:231,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:232,5'
              BranchSideFuncs:
                - ssl_iostream_get_last_error
                - t_strdup
            - BranchSide:      'iostream-ssl.c:234,52'
              BranchSideFuncs:
                - ssl_iostream_get_last_error
                - t_strdup
      Callsites:
        - Src:             'iostream-ssl.c:230,7'
          Dst:             ssl_iostream_has_valid_client_cert
        - Src:             'iostream-ssl.c:231,8'
          Dst:             ssl_iostream_has_broken_client_cert
        - Src:             'iostream-ssl.c:234,24'
          Dst:             ssl_iostream_get_last_error
        - Src:             'iostream-ssl.c:234,15'
          Dst:             t_strdup
        - Src:             'iostream-ssl.c:239,14'
          Dst:             ssl_iostream_cert_match_name
        - Src:             'iostream-ssl.c:240,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: 210
      functionLinenumberEnd: 211
      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_broken_client_cert
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 216
      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: 221
      functionLinenumberEnd: 222
      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: 205
      functionLinenumberEnd: 206
      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: 200
      functionLinenumberEnd: 201
      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_change_context
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 197
      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:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_set_sni_callback
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 191
      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_set_handshake_callback
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 184
      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: 175
      functionLinenumberEnd: 176
      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_set_log_prefix
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 172
      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: 157
      functionLinenumberEnd: 166
      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:160,22'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:160,26'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:161,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:160,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:161,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:163,12'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    ssl_iostream_unref
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 154
      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_create_ssl_server
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - set
        - event_parent
        - input
        - output
        - iostream_r
        - error_r
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_stream_create_ssl_client
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - host
        - set
        - event_parent
        - input
        - output
        - iostream_r
        - error_r
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_context_unref
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _ctx
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:118,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:119,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:120,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    ssl_iostream_context_ref
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_context_init_server
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - ctx_r
        - error_r
      BBCount:         11
      ICount:          68
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - io_stream_ssl_global_init
        - ssl_module_load
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:100,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:101,23'
              BranchSideFuncs:
                - io_stream_ssl_global_init
            - BranchSide:      'iostream-ssl.c:104,32'
              BranchSideFuncs:
                - io_stream_ssl_global_init
        - Branch String:   'iostream-ssl.c:101,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:102,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:103,2'
              BranchSideFuncs:
                - io_stream_ssl_global_init
        - Branch String:   'iostream-ssl.c:104,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:105,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:106,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-ssl.c:101,7'
          Dst:             ssl_module_load
        - Src:             'iostream-ssl.c:104,6'
          Dst:             io_stream_ssl_global_init
    - functionName:    ssl_module_load
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - error_r
      BBCount:         8
      ICount:          66
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - lib_atexit_priority
        - module_dir_init
        - module_dir_load
        - module_dir_try_load_missing
        - module_dir_unload
        - ssl_module_unload
        - t_strdup_printf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:53,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:55,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:56,18'
              BranchSideFuncs:
                - module_dir_init
                - t_strdup_printf
                - module_dir_unload
                - lib_atexit_priority
        - Branch String:   'iostream-ssl.c:57,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:60,4'
              BranchSideFuncs:
                - lib_atexit_priority
            - BranchSide:      'iostream-ssl.c:68,2'
              BranchSideFuncs:
                - lib_atexit_priority
      Callsites:
        - Src:             'iostream-ssl.c:52,15'
          Dst:             module_dir_load
        - Src:             'iostream-ssl.c:53,6'
          Dst:             module_dir_try_load_missing
        - Src:             'iostream-ssl.c:56,2'
          Dst:             module_dir_init
        - Src:             'iostream-ssl.c:58,14'
          Dst:             t_strdup_printf
        - Src:             'iostream-ssl.c:61,3'
          Dst:             module_dir_unload
        - Src:             'iostream-ssl.c:68,2'
          Dst:             lib_atexit_priority
        - Src:             'iostream-ssl.c:68,2'
          Dst:             ssl_module_unload
    - functionName:    io_stream_ssl_global_init
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 75
      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: 32
      functionLinenumberEnd: 35
      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:33,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:33,2'
              BranchSideFuncs:
                - ssl_iostream_context_cache_free
                - module_dir_unload
            - BranchSide:      'iostream-ssl.c:33,2'
              BranchSideFuncs:
                - ssl_iostream_context_cache_free
                - module_dir_unload
      Callsites:
        - Src:             'iostream-ssl.c:33,2'
          Dst:             ssl_iostream_context_cache_free
        - Src:             'iostream-ssl.c:34,2'
          Dst:             module_dir_unload
    - functionName:    ssl_iostream_context_init_client
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 94
      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:87,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:88,23'
              BranchSideFuncs:
                - io_stream_ssl_global_init
            - BranchSide:      'iostream-ssl.c:91,43'
              BranchSideFuncs:
                - io_stream_ssl_global_init
        - Branch String:   'iostream-ssl.c:88,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:89,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:90,2'
              BranchSideFuncs:
                - io_stream_ssl_global_init
        - Branch String:   'iostream-ssl.c:91,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:92,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:93,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-ssl.c:88,7'
          Dst:             ssl_module_load
        - Src:             'iostream-ssl.c:91,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: 38
      functionLinenumberEnd: 41
      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:    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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,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: 43
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - c1
        - c2
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ssl_iostream_settings_equals
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl-context-cache.c:44,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:45,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:46,39'
              BranchSideFuncs:
                - ssl_iostream_settings_equals
      Callsites:
        - Src:             'iostream-ssl-context-cache.c:46,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: 18
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cache
      BBCount:         17
      ICount:          141
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl-context-cache.c:25,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:26,12'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:37,9'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl-context-cache.c:26,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:27,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:29,10'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl-context-cache.c:29,22'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:29,30'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:29,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl-context-cache.c:29,3'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:30,9'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:36,2'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl-context-cache.c:31,8'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:32,9'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:35,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    ssl_iostream_context_cache_free
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl-context-cache.c'
      linkageType:     externalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      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:116,31'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:120,6'
              BranchSideFuncs:
                - hash_table_iterate_init
                - hash_table_iterate
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.3436
                - ssl_iostream_context_unref
            - BranchSide:      'iostream-ssl-context-cache.c:120,6'
              BranchSideFuncs:
                - hash_table_iterate_init
                - hash_table_iterate
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.3436
                - ssl_iostream_context_unref
        - Branch String:   'iostream-ssl-context-cache.c:120,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:121,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:123,9'
              BranchSideFuncs:
                - hash_table_iterate_init
                - hash_table_iterate
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.3436
                - ssl_iostream_context_unref
        - Branch String:   'iostream-ssl-context-cache.c:124,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:125,3'
              BranchSideFuncs:
                - ssl_iostream_context_unref
                - hash_table_iterate
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.3436
            - BranchSide:      'iostream-ssl-context-cache.c:126,2'
              BranchSideFuncs:
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.3436
      Callsites:
        - Src:             'iostream-ssl-context-cache.c:123,9'
          Dst:             hash_table_iterate_init
        - Src:             'iostream-ssl-context-cache.c:124,9'
          Dst:             hash_table_iterate
        - Src:             'iostream-ssl-context-cache.c:125,3'
          Dst:             ssl_iostream_context_unref
        - Src:             'iostream-ssl-context-cache.c:126,2'
          Dst:             hash_table_iterate_deinit
        - Src:             'iostream-ssl-context-cache.c:127,2'
          Dst:             hash_table_destroy
        - Src:             'iostream-ssl-context-cache.c:128,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: 110
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - ctx_r
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ssl_iostream_context_cache_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'iostream-ssl-context-cache.c:111,9'
          Dst:             ssl_iostream_context_cache_get
    - functionName:    ssl_iostream_context_cache_get
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl-context-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 98
      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:          133
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - hash_table_create
        - hash_table_insert
        - hash_table_lookup
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
        - ssl_iostream_context_cache_hash
        - ssl_iostream_context_init_client
        - ssl_iostream_context_init_server
        - ssl_iostream_context_ref
        - ssl_iostream_settings_drop_stream_only
        - ssl_iostream_settings_init_from
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-ssl-context-cache.c:62,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:64,4'
              BranchSideFuncs:
                - pool_alloconly_create
                - hash_table_create
                - ssl_iostream_settings_drop_stream_only
                - hash_table_lookup
                - ssl_iostream_context_init_client
                - malloc_multiply_check.3432
                - p_malloc.3434
                - ssl_iostream_settings_init_from
                - hash_table_insert
                - ssl_iostream_context_ref
                - ssl_iostream_context_init_server
                - ssl_iostream_context_ref
            - BranchSide:      'iostream-ssl-context-cache.c:70,49'
              BranchSideFuncs:
                - ssl_iostream_settings_drop_stream_only
                - hash_table_lookup
                - ssl_iostream_context_init_client
                - malloc_multiply_check.3432
                - p_malloc.3434
                - ssl_iostream_settings_init_from
                - hash_table_insert
                - ssl_iostream_context_ref
                - ssl_iostream_context_init_server
                - ssl_iostream_context_ref
        - Branch String:   'iostream-ssl-context-cache.c:73,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:74,28'
              BranchSideFuncs:
                - ssl_iostream_context_ref
            - BranchSide:      'iostream-ssl-context-cache.c:80,6'
              BranchSideFuncs:
                - ssl_iostream_context_init_client
                - malloc_multiply_check.3432
                - p_malloc.3434
                - ssl_iostream_settings_init_from
                - hash_table_insert
                - ssl_iostream_context_ref
                - ssl_iostream_context_init_server
        - Branch String:   'iostream-ssl-context-cache.c:80,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:81,48'
              BranchSideFuncs:
                - ssl_iostream_context_init_server
                - malloc_multiply_check.3432
                - p_malloc.3434
                - ssl_iostream_settings_init_from
                - hash_table_insert
                - ssl_iostream_context_ref
            - BranchSide:      'iostream-ssl-context-cache.c:84,48'
              BranchSideFuncs:
                - ssl_iostream_context_init_client
                - malloc_multiply_check.3432
                - p_malloc.3434
                - ssl_iostream_settings_init_from
                - hash_table_insert
                - ssl_iostream_context_ref
        - Branch String:   'iostream-ssl-context-cache.c:81,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:82,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:83,2'
              BranchSideFuncs:
                - malloc_multiply_check.3432
                - p_malloc.3434
                - ssl_iostream_settings_init_from
                - hash_table_insert
                - ssl_iostream_context_ref
        - Branch String:   'iostream-ssl-context-cache.c:84,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:85,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-ssl-context-cache.c:64,4'
          Dst:             pool_alloconly_create
        - Src:             'iostream-ssl-context-cache.c:65,3'
          Dst:             hash_table_create
        - Src:             'iostream-ssl-context-cache.c:65,3'
          Dst:             ssl_iostream_context_cache_hash
        - Src:             'iostream-ssl-context-cache.c:65,3'
          Dst:             ssl_iostream_context_cache_cmp
        - Src:             'iostream-ssl-context-cache.c:70,2'
          Dst:             ssl_iostream_settings_drop_stream_only
        - Src:             'iostream-ssl-context-cache.c:72,8'
          Dst:             hash_table_lookup
        - Src:             'iostream-ssl-context-cache.c:74,3'
          Dst:             ssl_iostream_context_ref
        - Src:             'iostream-ssl-context-cache.c:81,7'
          Dst:             ssl_iostream_context_init_server
        - Src:             'iostream-ssl-context-cache.c:84,7'
          Dst:             ssl_iostream_context_init_client
        - Src:             'iostream-ssl-context-cache.c:88,10'
          Dst:             malloc_multiply_check
        - Src:             'iostream-ssl-context-cache.c:88,10'
          Dst:             p_malloc
        - Src:             'iostream-ssl-context-cache.c:91,2'
          Dst:             ssl_iostream_settings_init_from
        - Src:             'iostream-ssl-context-cache.c:93,2'
          Dst:             hash_table_insert
        - Src:             'iostream-ssl-context-cache.c:95,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: 103
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - ctx_r
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ssl_iostream_context_cache_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iostream-ssl-context-cache.c:104,9'
          Dst:             ssl_iostream_context_cache_get
    - functionName:    str_insert
      functionSourceFile: '/src/dovecot/src/lib-settings/../../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:    str_escape
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/strescape.h'
      linkageType:     InternalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 13
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_nescape
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/strescape.h:13,26'
          Dst:             strlen
        - Src:             '../../src/lib/strescape.h:13,9'
          Dst:             str_nescape
    - 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:    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:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      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-settings/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 99
      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:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/strfuncs.h:99,16'
          Dst:             str_match
    - functionName:    settings_override_get_value
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 874
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - set
        - _key
        - value_r
        - error_r
      BBCount:         39
      ICount:          233
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - i_panic
        - settings_parse_get_value
        - str_begins_with
        - strcmp
        - strncmp
        - t_strconcat
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:832,6'
          Branch Sides:
            - BranchSide:      'settings.c:833,3'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - settings_parse_get_value
                - t_strconcat
                - t_strdup_printf
                - str_begins_with
                - t_strconcat
                - settings_parse_get_value
                - strncmp
                - settings_parse_get_value
                - i_panic
            - BranchSide:      'settings.c:846,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
                - str_begins_with
                - t_strconcat
                - settings_parse_get_value
                - strncmp
                - settings_parse_get_value
        - Branch String:   'settings.c:833,3'
          Branch Sides:
            - BranchSide:      'settings.c:833,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:837,28'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - settings_parse_get_value
                - t_strconcat
                - t_strdup_printf
                - str_begins_with
                - t_strconcat
                - settings_parse_get_value
                - strncmp
                - settings_parse_get_value
        - Branch String:   'settings.c:838,7'
          Branch Sides:
            - BranchSide:      'settings.c:839,15'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_parse_get_value
                - t_strconcat
                - t_strdup_printf
                - str_begins_with
                - t_strconcat
                - settings_parse_get_value
                - strncmp
                - settings_parse_get_value
            - BranchSide:      'settings.c:841,29'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_parse_get_value
                - t_strconcat
                - t_strdup_printf
                - str_begins_with
                - t_strconcat
                - settings_parse_get_value
                - strncmp
                - settings_parse_get_value
        - Branch String:   'settings.c:843,7'
          Branch Sides:
            - BranchSide:      'settings.c:844,10'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
                - str_begins_with
                - t_strconcat
                - settings_parse_get_value
                - strncmp
                - settings_parse_get_value
            - BranchSide:      'settings.c:845,2'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
                - str_begins_with
                - t_strconcat
                - settings_parse_get_value
                - strncmp
                - settings_parse_get_value
        - Branch String:   'settings.c:846,6'
          Branch Sides:
            - BranchSide:      'settings.c:847,40'
              BranchSideFuncs:
                - settings_parse_get_value
                - t_strconcat
                - t_strdup_printf
                - str_begins_with
                - t_strconcat
                - settings_parse_get_value
                - strncmp
            - BranchSide:      'settings.c:848,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
                - str_begins_with
                - t_strconcat
                - settings_parse_get_value
                - strncmp
        - Branch String:   'settings.c:848,24'
          Branch Sides:
            - BranchSide:      'settings.c:848,60'
              BranchSideFuncs:
                - str_begins_with
                - t_strconcat
                - t_strdup_printf
                - t_strconcat
                - settings_parse_get_value
                - strncmp
            - BranchSide:      'settings.c:859,7'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
        - Branch String:   'settings.c:848,60'
          Branch Sides:
            - BranchSide:      'settings.c:848,28'
              BranchSideFuncs:
                - strncmp
                - t_strconcat
                - t_strdup_printf
                - t_strconcat
                - settings_parse_get_value
            - BranchSide:      'settings.c:848,28'
              BranchSideFuncs:
                - str_begins_with
                - t_strconcat
                - t_strdup_printf
                - t_strconcat
                - settings_parse_get_value
        - Branch String:   'settings.c:848,28'
          Branch Sides:
            - BranchSide:      'settings.c:849,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
            - BranchSide:      'settings.c:859,7'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
        - Branch String:   'settings.c:848,60'
          Branch Sides:
            - BranchSide:      'settings.c:849,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
            - BranchSide:      'settings.c:859,7'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
        - Branch String:   'settings.c:848,6'
          Branch Sides:
            - BranchSide:      'settings.c:856,32'
              BranchSideFuncs:
                - t_strconcat
                - settings_parse_get_value
                - t_strconcat
                - t_strdup_printf
            - BranchSide:      'settings.c:859,7'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
        - Branch String:   'settings.c:859,19'
          Branch Sides:
            - BranchSide:      'settings.c:859,22'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
            - BranchSide:      'settings.c:860,11'
              BranchSideFuncs: []
        - Branch String:   'settings.c:859,6'
          Branch Sides:
            - BranchSide:      'settings.c:860,11'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:865,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup_printf
        - Branch String:   'settings.c:865,6'
          Branch Sides:
            - BranchSide:      'settings.c:867,50'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:870,21'
              BranchSideFuncs:
                - t_strconcat
      Callsites:
        - Src:             'settings.c:833,3'
          Dst:             i_panic
        - Src:             'settings.c:838,7'
          Dst:             strcmp
        - Src:             'settings.c:841,4'
          Dst:             t_strdup_printf
        - Src:             'settings.c:842,15'
          Dst:             settings_parse_get_value
        - Src:             'settings.c:847,15'
          Dst:             settings_parse_get_value
        - Src:             'settings.c:848,28'
          Dst:             strncmp
        - Src:             'settings.c:848,28'
          Dst:             str_begins_with
        - Src:             'settings.c:856,9'
          Dst:             t_strconcat
        - Src:             'settings.c:857,15'
          Dst:             settings_parse_get_value
        - Src:             'settings.c:866,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:872,13'
          Dst:             t_strconcat
    - functionName:    settings_override_cmp
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 820
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set1
        - set2
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_append_array_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest_array
        - src_array
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_buf
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:220,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:220,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:220,2'
              BranchSideFuncs:
                - buffer_append_buf
      Callsites:
        - Src:             '../../src/lib/array.h:220,2'
          Dst:             i_panic
        - Src:             '../../src/lib/array.h:221,2'
          Dst:             buffer_append_buf
    - functionName:    settings_mmap_apply_blob
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - block
        - parser
        - info
        - start_offset
        - end_offset
        - error_r
      BBCount:         33
      ICount:          264
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - be32_to_cpu_unaligned
        - i_panic
        - settings_parse_keyidx_value_nodup
        - settings_parser_get_error
        - strlen
        - t_pop_pass_str
        - t_push
        - t_strdup
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:415,2'
          Branch Sides:
            - BranchSide:      'settings.c:419,4'
              BranchSideFuncs:
                - be32_to_cpu_unaligned.3587
                - strlen
                - t_push
                - settings_parse_keyidx_value_nodup
                - t_pop_pass_str
                - i_panic
                - settings_parser_get_error
                - t_strdup
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - t_strdup_printf
            - BranchSide:      'settings.c:467,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:420,7'
          Branch Sides:
            - BranchSide:      'settings.c:423,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:426,10'
              BranchSideFuncs:
                - strlen
                - t_push
                - settings_parse_keyidx_value_nodup
                - t_pop_pass_str
                - be32_to_cpu_unaligned.3587
                - t_strdup_printf
                - i_panic
                - settings_parser_get_error
                - t_strdup
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
                - strlen
        - Branch String:   'settings.c:429,7'
          Branch Sides:
            - BranchSide:      'settings.c:430,32'
              BranchSideFuncs:
                - strlen
                - strlen
                - t_push
                - settings_parse_keyidx_value_nodup
                - t_pop_pass_str
                - be32_to_cpu_unaligned.3587
                - t_strdup_printf
                - i_panic
                - settings_parser_get_error
                - t_strdup
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'settings.c:434,7'
              BranchSideFuncs:
                - strlen
                - t_push
                - settings_parse_keyidx_value_nodup
                - t_pop_pass_str
                - be32_to_cpu_unaligned.3587
                - strlen
                - t_strdup_printf
                - i_panic
                - settings_parser_get_error
                - t_strdup
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:434,7'
          Branch Sides:
            - BranchSide:      'settings.c:439,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:442,37'
              BranchSideFuncs:
                - strlen
                - t_push
                - settings_parse_keyidx_value_nodup
                - t_pop_pass_str
                - be32_to_cpu_unaligned.3587
                - t_strdup_printf
                - strlen
                - t_strdup_printf
                - i_panic
                - settings_parser_get_error
                - t_strdup
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:444,7'
          Branch Sides:
            - BranchSide:      'settings.c:448,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:452,3'
              BranchSideFuncs:
                - t_push
                - settings_parse_keyidx_value_nodup
                - t_pop_pass_str
                - be32_to_cpu_unaligned.3587
                - strlen
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - t_strdup_printf
                - i_panic
                - settings_parser_get_error
                - t_strdup
                - t_strdup_printf
        - Branch String:   'settings.c:454,8'
          Branch Sides:
            - BranchSide:      'settings.c:455,36'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_parse_keyidx_value_nodup
                - t_pop_pass_str
                - be32_to_cpu_unaligned.3587
                - strlen
                - t_push
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - t_strdup_printf
                - i_panic
                - settings_parser_get_error
                - t_strdup
            - BranchSide:      'settings.c:459,44'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - t_pop_pass_str
                - be32_to_cpu_unaligned.3587
                - strlen
                - t_push
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - t_strdup_printf
                - i_panic
                - settings_parser_get_error
                - t_strdup
        - Branch String:   'settings.c:461,8'
          Branch Sides:
            - BranchSide:      'settings.c:462,51'
              BranchSideFuncs:
                - settings_parser_get_error
                - t_strdup
                - t_pop_pass_str
                - be32_to_cpu_unaligned.3587
                - strlen
                - t_push
                - settings_parse_keyidx_value_nodup
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:463,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - be32_to_cpu_unaligned.3587
                - strlen
                - t_push
                - settings_parse_keyidx_value_nodup
                - settings_parser_get_error
                - t_strdup
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:463,5'
          Branch Sides:
            - BranchSide:      'settings.c:463,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - be32_to_cpu_unaligned.3587
                - strlen
                - t_push
                - settings_parse_keyidx_value_nodup
                - settings_parser_get_error
                - t_strdup
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:463,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - be32_to_cpu_unaligned.3587
                - strlen
                - t_push
                - settings_parse_keyidx_value_nodup
                - settings_parser_get_error
                - t_strdup
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:463,5'
          Branch Sides:
            - BranchSide:      'settings.c:463,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:463,5'
              BranchSideFuncs:
                - be32_to_cpu_unaligned.3587
                - strlen
                - t_push
                - settings_parse_keyidx_value_nodup
                - t_pop_pass_str
                - i_panic
                - settings_parser_get_error
                - t_strdup
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - t_strdup_printf
        - Branch String:   'settings.c:464,7'
          Branch Sides:
            - BranchSide:      'settings.c:415,2'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:465,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:418,22'
          Dst:             be32_to_cpu_unaligned
        - Src:             'settings.c:421,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:431,14'
          Dst:             strlen
        - Src:             'settings.c:436,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:443,13'
          Dst:             strlen
        - Src:             'settings.c:445,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:452,3'
          Dst:             t_push
        - Src:             'settings.c:455,11'
          Dst:             t_strdup_printf
        - Src:             'settings.c:459,10'
          Dst:             settings_parse_keyidx_value_nodup
        - Src:             'settings.c:462,25'
          Dst:             settings_parser_get_error
        - Src:             'settings.c:462,16'
          Dst:             t_strdup
        - Src:             'settings.c:463,5'
          Dst:             t_pop_pass_str
        - Src:             'settings.c:463,5'
          Dst:             i_panic
    - functionName:    be32_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
      BBCount:         1
      ICount:          33
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_mmap_validate
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 502
      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:479,2'
          Branch Sides:
            - BranchSide:      'settings.c:480,7'
              BranchSideFuncs:
                - settings_block_read_str
                - strcmp
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'settings.c:495,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'settings.c:480,7'
          Branch Sides:
            - BranchSide:      'settings.c:481,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:482,31'
              BranchSideFuncs:
                - settings_block_read_str
                - strcmp
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:482,7'
          Branch Sides:
            - BranchSide:      'settings.c:486,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:488,14'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - settings_block_read_str
                - t_strdup_printf
        - Branch String:   'settings.c:488,7'
          Branch Sides:
            - BranchSide:      'settings.c:491,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:494,2'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_block_read_str
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:495,6'
          Branch Sides:
            - BranchSide:      'settings.c:498,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:501,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:482,7'
          Dst:             settings_block_read_str
        - Src:             'settings.c:488,7'
          Dst:             strcmp
        - Src:             'settings.c:489,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:496,14'
          Dst:             t_strdup_printf
    - functionName:    settings_block_read_str
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 140
      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:    6
      BranchProfiles:
        - Branch String:   'settings.c:133,6'
          Branch Sides:
            - BranchSide:      'settings.c:136,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:139,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:132,13'
          Dst:             strlen
        - Src:             'settings.c:134,14'
          Dst:             t_strdup_printf
    - functionName:    p_get_max_easy_alloc_size
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 150
      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: 117
      functionLinenumberEnd: 126
      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: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:120,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:122,6'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/mempool.h:122,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:123,10'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:125,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    pool_get_name
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 155
      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: 740
      functionLinenumberEnd: 744
      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:744,9'
          Dst:             p_get_max_easy_alloc_size
    - functionName:    settings_mmap_pool_realloc
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 727
      functionLinenumberEnd: 731
      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:731,9'
          Dst:             p_realloc
    - functionName:    settings_mmap_pool_free
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 718
      functionLinenumberEnd: 723
      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:722,2'
          Dst:             p_free_internal
    - functionName:    settings_mmap_pool_malloc
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 714
      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:714,9'
          Dst:             p_malloc
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 112
      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:    7
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    settings_mmap_pool_unref
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 707
      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:697,2'
          Branch Sides:
            - BranchSide:      'settings.c:697,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:698,3'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.3603
        - Branch String:   'settings.c:699,6'
          Branch Sides:
            - BranchSide:      'settings.c:700,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:702,2'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.3603
        - Branch String:   'settings.c:702,2'
          Branch Sides:
            - BranchSide:      'settings.c:702,2'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.3603
            - BranchSide:      'settings.c:702,2'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.3603
        - Branch String:   'settings.c:702,2'
          Branch Sides:
            - BranchSide:      'settings.c:702,2'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.3603
            - BranchSide:      'settings.c:704,23'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.3603
      Callsites:
        - Src:             'settings.c:697,2'
          Dst:             i_panic
        - Src:             'settings.c:704,2'
          Dst:             settings_mmap_unref
        - Src:             'settings.c:705,2'
          Dst:             pool_external_refs_unref
        - Src:             'settings.c:706,2'
          Dst:             pool_unref
    - functionName:    settings_mmap_unref
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 607
      functionLinenumberEnd: 627
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _mmap
      BBCount:         24
      ICount:          141
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - event_filter_unref
        - hash_table_destroy
        - i_error
        - i_panic
        - munmap
        - pool_unref
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings.c:609,6'
          Branch Sides:
            - BranchSide:      'settings.c:610,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:611,2'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.3603
                - i_error
                - event_filter_unref
                - i_panic
        - Branch String:   'settings.c:611,2'
          Branch Sides:
            - BranchSide:      'settings.c:611,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:613,3'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.3603
                - i_error
                - event_filter_unref
        - Branch String:   'settings.c:614,6'
          Branch Sides:
            - BranchSide:      'settings.c:615,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:617,20'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.3603
                - i_error
                - event_filter_unref
        - Branch String:   'settings.c:617,2'
          Branch Sides:
            - BranchSide:      'settings.c:618,7'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.3603
                - i_error
                - event_filter_unref
            - BranchSide:      'settings.c:622,2'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.3603
                - i_error
        - Branch String:   'settings.c:618,59'
          Branch Sides:
            - BranchSide:      'settings.c:619,7'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.3603
                - i_error
                - event_filter_unref
            - BranchSide:      'settings.c:621,2'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.3603
                - i_error
                - event_filter_unref
        - Branch String:   'settings.c:618,7'
          Branch Sides:
            - BranchSide:      'settings.c:620,24'
              BranchSideFuncs:
                - event_filter_unref
                - hash_table_destroy
                - munmap
                - pool_unref.3603
                - i_error
            - BranchSide:      'settings.c:621,2'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.3603
                - i_error
                - event_filter_unref
        - Branch String:   'settings.c:624,6'
          Branch Sides:
            - BranchSide:      'settings.c:625,3'
              BranchSideFuncs:
                - i_error
                - pool_unref.3603
            - BranchSide:      'settings.c:626,14'
              BranchSideFuncs:
                - pool_unref.3603
      Callsites:
        - Src:             'settings.c:611,2'
          Dst:             i_panic
        - Src:             'settings.c:620,4'
          Dst:             event_filter_unref
        - Src:             'settings.c:622,2'
          Dst:             hash_table_destroy
        - Src:             'settings.c:624,6'
          Dst:             munmap
        - Src:             'settings.c:625,3'
          Dst:             i_error
        - Src:             'settings.c:626,2'
          Dst:             pool_unref
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    9
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,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: 684
      functionLinenumberEnd: 690
      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:688,2'
          Branch Sides:
            - BranchSide:      'settings.c:688,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:688,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:688,2'
          Dst:             i_panic
    - functionName:    settings_mmap_pool_get_name
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 676
      functionLinenumberEnd: 680
      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:680,9'
          Dst:             pool_get_name
    - functionName:    settings_mmap_ref
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 600
      functionLinenumberEnd: 604
      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:601,2'
          Branch Sides:
            - BranchSide:      'settings.c:601,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:601,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:601,2'
          Dst:             i_panic
    - functionName:    settings_var_expand_init
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 793
      functionLinenumberEnd: 815
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - tab_r
        - func_tab_r
        - func_context_r
      BBCount:         20
      ICount:          119
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - event_get_parent
        - event_get_ptr
        - malloc_multiply_check
        - t_malloc0
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:797,2'
          Branch Sides:
            - BranchSide:      'settings.c:799,18'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
                - event_get_parent
                - event_get_ptr
                - malloc_multiply_check.3609
                - t_malloc0
            - BranchSide:      'settings.c:811,7'
              BranchSideFuncs:
                - event_get_ptr
                - malloc_multiply_check.3609
                - t_malloc0
        - Branch String:   'settings.c:800,7'
          Branch Sides:
            - BranchSide:      'settings.c:801,4'
              BranchSideFuncs:
                - event_get_ptr
                - malloc_multiply_check.3609
                - t_malloc0
            - BranchSide:      'settings.c:805,26'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_ptr
                - event_get_parent
                - event_get_ptr
                - malloc_multiply_check.3609
                - t_malloc0
                - event_get_ptr
        - Branch String:   'settings.c:807,22'
          Branch Sides:
            - BranchSide:      'settings.c:807,26'
              BranchSideFuncs:
                - event_get_ptr
                - malloc_multiply_check.3609
                - t_malloc0
            - BranchSide:      'settings.c:808,4'
              BranchSideFuncs:
                - event_get_ptr
                - malloc_multiply_check.3609
                - t_malloc0
        - Branch String:   'settings.c:807,7'
          Branch Sides:
            - BranchSide:      'settings.c:808,4'
              BranchSideFuncs:
                - event_get_ptr
                - malloc_multiply_check.3609
                - t_malloc0
            - BranchSide:      'settings.c:809,28'
              BranchSideFuncs:
                - event_get_parent
                - event_get_ptr
                - malloc_multiply_check.3609
                - t_malloc0
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:811,6'
          Branch Sides:
            - BranchSide:      'settings.c:812,12'
              BranchSideFuncs:
                - malloc_multiply_check.3609
                - t_malloc0
                - event_get_ptr
            - BranchSide:      'settings.c:813,20'
              BranchSideFuncs:
                - event_get_ptr
        - Branch String:   'settings.c:813,20'
          Branch Sides:
            - BranchSide:      'settings.c:813,20'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:814,17'
              BranchSideFuncs:
                - event_get_ptr
      Callsites:
        - Src:             'settings.c:799,4'
          Dst:             event_get_ptr
        - Src:             'settings.c:805,12'
          Dst:             event_get_ptr
        - Src:             'settings.c:806,17'
          Dst:             event_get_ptr
        - Src:             'settings.c:809,11'
          Dst:             event_get_parent
        - Src:             'settings.c:812,12'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:812,12'
          Dst:             t_malloc0
        - Src:             'settings.c:814,3'
          Dst:             event_get_ptr
    - 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:    7
      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_instance_override
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 884
      functionLinenumberEnd: 946
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - root
        - instance
        - parser
        - mpool
        - event
        - filter_key
        - filter_value
        - error_r
      BBCount:         47
      ICount:          309
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - array_append_array_i
        - array_create_i
        - array_idx_i
        - array_is_created_i
        - array_sort_i
        - event_filter_match
        - i_panic
        - null_strcmp
        - pool_add_external_ref
        - pool_datastack_create
        - settings_override_cmp
        - settings_override_get_value
        - settings_parse_keyvalue
        - settings_parse_keyvalue_nodup
        - settings_parser_get_error
        - strcmp
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:888,6'
          Branch Sides:
            - BranchSide:      'settings.c:889,3'
              BranchSideFuncs:
                - array_append_array_i
                - array_is_created_i.3613
                - array_sort_i
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
                - event_filter_match
                - array_append_array_i
            - BranchSide:      'settings.c:890,6'
              BranchSideFuncs:
                - array_is_created_i.3613
                - array_sort_i
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
                - event_filter_match
                - array_append_array_i
        - Branch String:   'settings.c:890,6'
          Branch Sides:
            - BranchSide:      'settings.c:891,3'
              BranchSideFuncs:
                - array_append_array_i
                - array_sort_i
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
                - event_filter_match
            - BranchSide:      'settings.c:892,2'
              BranchSideFuncs:
                - array_sort_i
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
                - event_filter_match
        - Branch String:   'settings.c:900,2'
          Branch Sides:
            - BranchSide:      'settings.c:901,21'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
                - event_filter_match
            - BranchSide:      'settings.c:945,9'
              BranchSideFuncs: []
        - Branch String:   'settings.c:903,27'
          Branch Sides:
            - BranchSide:      'settings.c:904,27'
              BranchSideFuncs:
                - event_filter_match
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
            - BranchSide:      'settings.c:907,7'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
        - Branch String:   'settings.c:903,7'
          Branch Sides:
            - BranchSide:      'settings.c:905,4'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
            - BranchSide:      'settings.c:907,7'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
        - Branch String:   'settings.c:907,26'
          Branch Sides:
            - BranchSide:      'settings.c:907,29'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
            - BranchSide:      'settings.c:912,41'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
        - Branch String:   'settings.c:907,58'
          Branch Sides:
            - BranchSide:      'settings.c:908,14'
              BranchSideFuncs:
                - strcmp
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - null_strcmp
            - BranchSide:      'settings.c:912,41'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
        - Branch String:   'settings.c:908,53'
          Branch Sides:
            - BranchSide:      'settings.c:909,19'
              BranchSideFuncs:
                - null_strcmp
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
            - BranchSide:      'settings.c:912,41'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
        - Branch String:   'settings.c:907,7'
          Branch Sides:
            - BranchSide:      'settings.c:910,16'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
            - BranchSide:      'settings.c:912,41'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
        - Branch String:   'settings.c:914,7'
          Branch Sides:
            - BranchSide:      'settings.c:915,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:916,7'
              BranchSideFuncs:
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - settings_override_get_value
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
        - Branch String:   'settings.c:916,7'
          Branch Sides:
            - BranchSide:      'settings.c:917,4'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
                - event_filter_match
            - BranchSide:      'settings.c:919,7'
              BranchSideFuncs:
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - settings_override_get_value
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
        - Branch String:   'settings.c:919,7'
          Branch Sides:
            - BranchSide:      'settings.c:920,34'
              BranchSideFuncs:
                - settings_parse_keyvalue
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
            - BranchSide:      'settings.c:930,8'
              BranchSideFuncs:
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - settings_override_get_value
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
        - Branch String:   'settings.c:930,8'
          Branch Sides:
            - BranchSide:      'settings.c:931,5'
              BranchSideFuncs:
                - array_idx_i.3614
                - settings_parse_keyvalue_nodup
                - settings_override_get_value
                - array_is_created_i.3613
                - pool_add_external_ref
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:932,13'
              BranchSideFuncs:
                - settings_parse_keyvalue_nodup
                - settings_override_get_value
                - array_is_created_i.3613
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
        - Branch String:   'settings.c:931,5'
          Branch Sides:
            - BranchSide:      'settings.c:931,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:934,40'
              BranchSideFuncs:
                - settings_parse_keyvalue_nodup
                - settings_override_get_value
                - array_is_created_i.3613
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
                - event_filter_match
                - settings_parser_get_error
                - t_strdup_printf
        - Branch String:   'settings.c:936,7'
          Branch Sides:
            - BranchSide:      'settings.c:940,34'
              BranchSideFuncs:
                - settings_parser_get_error
                - t_strdup_printf
            - BranchSide:      'settings.c:944,2'
              BranchSideFuncs:
                - settings_override_get_value
                - array_is_created_i.3613
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - t_strdup_printf
                - pool_add_external_ref
                - array_idx_i.3614
                - i_panic
                - settings_parse_keyvalue
                - strcmp
                - null_strcmp
                - event_filter_match
      Callsites:
        - Src:             'settings.c:887,2'
          Dst:             pool_datastack_create
        - Src:             'settings.c:887,2'
          Dst:             array_create_i
        - Src:             'settings.c:888,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:889,3'
          Dst:             array_append_array_i
        - Src:             'settings.c:890,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:891,3'
          Dst:             array_append_array_i
        - Src:             'settings.c:892,2'
          Dst:             array_sort_i
        - Src:             'settings.c:892,2'
          Dst:             settings_override_cmp
        - Src:             'settings.c:904,8'
          Dst:             event_filter_match
        - Src:             'settings.c:908,7'
          Dst:             strcmp
        - Src:             'settings.c:909,7'
          Dst:             null_strcmp
        - Src:             'settings.c:912,13'
          Dst:             settings_override_get_value
        - Src:             'settings.c:920,10'
          Dst:             settings_parse_keyvalue
        - Src:             'settings.c:930,8'
          Dst:             array_is_created_i
        - Src:             'settings.c:931,5'
          Dst:             array_idx_i
        - Src:             'settings.c:931,5'
          Dst:             i_panic
        - Src:             'settings.c:933,5'
          Dst:             pool_add_external_ref
        - Src:             'settings.c:934,10'
          Dst:             settings_parse_keyvalue_nodup
        - Src:             'settings.c:941,17'
          Dst:             settings_parser_get_error
        - Src:             'settings.c:937,15'
          Dst:             t_strdup_printf
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3576
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3576
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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_idx_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:273,2'
          Dst:             i_panic
    - functionName:    settings_mmap_apply
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - event
        - parser
        - info
        - flags
        - filter_name
        - error_r
      BBCount:         48
      ICount:          377
      EdgeCount:       66
      CyclomaticComplexity: 20
      functionsReached:
        - be32_to_cpu_unaligned
        - be64_to_cpu_unaligned
        - event_filter_find_field_exact
        - event_filter_match
        - hash_table_lookup
        - settings_mmap_apply_blob
        - settings_mmap_validate
        - strcmp
        - strlen
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:513,6'
          Branch Sides:
            - BranchSide:      'settings.c:516,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:519,6'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
                - settings_mmap_validate
        - Branch String:   'settings.c:519,6'
          Branch Sides:
            - BranchSide:      'settings.c:520,14'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:524,7'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
                - settings_mmap_validate
        - Branch String:   'settings.c:524,33'
          Branch Sides:
            - BranchSide:      'settings.c:525,7'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
            - BranchSide:      'settings.c:531,31'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:524,6'
          Branch Sides:
            - BranchSide:      'settings.c:526,30'
              BranchSideFuncs:
                - settings_mmap_validate
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
            - BranchSide:      'settings.c:531,31'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:526,7'
          Branch Sides:
            - BranchSide:      'settings.c:527,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:528,3'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:531,6'
          Branch Sides:
            - BranchSide:      'settings.c:534,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:536,31'
              BranchSideFuncs:
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:541,2'
          Branch Sides:
            - BranchSide:      'settings.c:543,4'
              BranchSideFuncs:
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
            - BranchSide:      'settings.c:595,9'
              BranchSideFuncs: []
        - Branch String:   'settings.c:546,7'
          Branch Sides:
            - BranchSide:      'settings.c:548,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:552,4'
              BranchSideFuncs:
                - event_filter_match
                - be32_to_cpu_unaligned.3587
                - t_strdup_printf
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
        - Branch String:   'settings.c:553,7'
          Branch Sides:
            - BranchSide:      'settings.c:555,12'
              BranchSideFuncs:
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
            - BranchSide:      'settings.c:594,2'
              BranchSideFuncs:
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:555,54'
          Branch Sides:
            - BranchSide:      'settings.c:556,24'
              BranchSideFuncs:
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - t_strdup_printf
                - event_filter_find_field_exact
                - strcmp
            - BranchSide:      'settings.c:558,5'
              BranchSideFuncs:
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - t_strdup_printf
                - event_filter_find_field_exact
                - strcmp
        - Branch String:   'settings.c:570,8'
          Branch Sides:
            - BranchSide:      'settings.c:571,16'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:574,28'
              BranchSideFuncs:
                - strlen
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - t_strdup_printf
                - event_filter_find_field_exact
                - strcmp
        - Branch String:   'settings.c:576,28'
          Branch Sides:
            - BranchSide:      'settings.c:576,32'
              BranchSideFuncs:
                - event_filter_find_field_exact
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - t_strdup_printf
                - strcmp
            - BranchSide:      'settings.c:589,33'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:576,8'
          Branch Sides:
            - BranchSide:      'settings.c:580,7'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
            - BranchSide:      'settings.c:589,33'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:585,23'
          Branch Sides:
            - BranchSide:      'settings.c:585,27'
              BranchSideFuncs:
                - strcmp
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - event_filter_find_field_exact
                - t_strdup_printf
            - BranchSide:      'settings.c:588,4'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:585,34'
          Branch Sides:
            - BranchSide:      'settings.c:586,16'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
            - BranchSide:      'settings.c:588,4'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:585,9'
          Branch Sides:
            - BranchSide:      'settings.c:587,18'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
            - BranchSide:      'settings.c:588,4'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:589,8'
          Branch Sides:
            - BranchSide:      'settings.c:592,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:593,3'
              BranchSideFuncs:
                - be32_to_cpu_unaligned.3587
                - event_filter_match
                - be64_to_cpu_unaligned
                - be64_to_cpu_unaligned
                - strlen
                - settings_mmap_apply_blob
                - event_filter_find_field_exact
                - strcmp
                - t_strdup_printf
      Callsites:
        - Src:             'settings.c:512,3'
          Dst:             hash_table_lookup
        - Src:             'settings.c:514,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:526,7'
          Dst:             settings_mmap_validate
        - Src:             'settings.c:531,6'
          Dst:             settings_mmap_apply_blob
        - Src:             'settings.c:542,31'
          Dst:             be32_to_cpu_unaligned
        - Src:             'settings.c:547,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:556,5'
          Dst:             event_filter_match
        - Src:             'settings.c:557,29'
          Dst:             be64_to_cpu_unaligned
        - Src:             'settings.c:561,31'
          Dst:             be64_to_cpu_unaligned
        - Src:             'settings.c:574,21'
          Dst:             strlen
        - Src:             'settings.c:579,6'
          Dst:             event_filter_find_field_exact
        - Src:             'settings.c:586,9'
          Dst:             strcmp
        - Src:             'settings.c:589,8'
          Dst:             settings_mmap_apply_blob
    - functionName:    be64_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
      BBCount:         1
      ICount:          57
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_mmap_pool_create
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 767
      functionLinenumberEnd: 785
      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:781,6'
          Branch Sides:
            - BranchSide:      'settings.c:782,21'
              BranchSideFuncs:
                - settings_mmap_ref
            - BranchSide:      'settings.c:784,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:784,2'
          Branch Sides:
            - BranchSide:      'settings.c:784,2'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:784,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:770,3'
          Dst:             pool_alloconly_create
        - Src:             'settings.c:772,10'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:772,10'
          Dst:             p_malloc
        - Src:             'settings.c:782,3'
          Dst:             settings_mmap_ref
    - functionName:    settings_mmap_pool_clear
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 736
      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:736,2'
          Dst:             i_panic
    - functionName:    settings_instance_get
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 959
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - root
        - instance
        - filter_key
        - filter_value
        - filter_name
        - info
        - flags
        - source_filename
        - source_linenum
        - set_r
        - error_r
      BBCount:         63
      ICount:          439
      EdgeCount:       79
      CyclomaticComplexity: 18
      functionsReached:
        - event_add_str
        - event_create
        - event_find_field_recursive
        - event_unref
        - i_panic
        - pool_unref
        - settings_check
        - settings_instance_override
        - settings_mmap_apply
        - settings_mmap_pool_create
        - settings_parse_set_expanded
        - settings_parser_get_set
        - settings_parser_init
        - settings_parser_unref
        - settings_var_expand_init
        - settings_var_expand_with_funcs
        - settings_var_skip
        - t_pop_pass_str
        - t_push
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:964,2'
          Branch Sides:
            - BranchSide:      'settings.c:964,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:966,3'
              BranchSideFuncs:
                - event_create
                - event_find_field_recursive
                - settings_mmap_pool_create
                - settings_parser_init
                - settings_parse_set_expanded
                - t_push
                - settings_instance_override
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_mmap_apply
                - t_strdup_printf
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - event_add_str
                - event_add_str
        - Branch String:   'settings.c:969,6'
          Branch Sides:
            - BranchSide:      'settings.c:970,17'
              BranchSideFuncs:
                - event_add_str
                - event_find_field_recursive
                - settings_mmap_pool_create
                - settings_parser_init
                - settings_parse_set_expanded
                - t_push
                - settings_instance_override
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_mmap_apply
                - t_strdup_printf
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - event_add_str
            - BranchSide:      'settings.c:971,33'
              BranchSideFuncs:
                - event_find_field_recursive
                - settings_mmap_pool_create
                - settings_parser_init
                - settings_parse_set_expanded
                - t_push
                - settings_instance_override
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_mmap_apply
                - t_strdup_printf
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - event_add_str
        - Branch String:   'settings.c:971,6'
          Branch Sides:
            - BranchSide:      'settings.c:972,17'
              BranchSideFuncs:
                - event_add_str
                - settings_mmap_pool_create
                - settings_parser_init
                - settings_parse_set_expanded
                - t_push
                - settings_instance_override
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_mmap_apply
                - t_strdup_printf
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
            - BranchSide:      'settings.c:975,29'
              BranchSideFuncs:
                - settings_mmap_pool_create
                - settings_parser_init
                - settings_parse_set_expanded
                - t_push
                - settings_instance_override
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_mmap_apply
                - t_strdup_printf
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
        - Branch String:   'settings.c:982,6'
          Branch Sides:
            - BranchSide:      'settings.c:983,29'
              BranchSideFuncs:
                - settings_mmap_apply
                - settings_parse_set_expanded
                - t_push
                - settings_instance_override
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
                - t_strdup_printf
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
            - BranchSide:      'settings.c:999,30'
              BranchSideFuncs:
                - settings_parse_set_expanded
                - t_push
                - settings_instance_override
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
        - Branch String:   'settings.c:985,7'
          Branch Sides:
            - BranchSide:      'settings.c:987,42'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
            - BranchSide:      'settings.c:993,7'
              BranchSideFuncs:
                - settings_parse_set_expanded
                - t_push
                - settings_instance_override
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
        - Branch String:   'settings.c:993,7'
          Branch Sides:
            - BranchSide:      'settings.c:994,16'
              BranchSideFuncs:
                - settings_parse_set_expanded
                - t_push
                - settings_instance_override
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
            - BranchSide:      'settings.c:995,2'
              BranchSideFuncs:
                - settings_parse_set_expanded
                - t_push
                - settings_instance_override
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
        - Branch String:   'settings.c:1004,4'
          Branch Sides:
            - BranchSide:      'settings.c:1004,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
            - BranchSide:      'settings.c:1004,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
                - i_panic
        - Branch String:   'settings.c:1004,4'
          Branch Sides:
            - BranchSide:      'settings.c:1004,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1004,4'
              BranchSideFuncs:
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
        - Branch String:   'settings.c:1005,6'
          Branch Sides:
            - BranchSide:      'settings.c:1006,3'
              BranchSideFuncs:
                - settings_parser_unref
                - pool_unref.3603
                - event_unref
            - BranchSide:      'settings.c:1011,6'
              BranchSideFuncs:
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
        - Branch String:   'settings.c:1011,6'
          Branch Sides:
            - BranchSide:      'settings.c:1012,15'
              BranchSideFuncs:
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
            - BranchSide:      'settings.c:1014,38'
              BranchSideFuncs:
                - settings_parser_get_set
                - settings_parser_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - pool_unref.3603
                - event_unref
        - Branch String:   'settings.c:1022,25'
          Branch Sides:
            - BranchSide:      'settings.c:1022,29'
              BranchSideFuncs:
                - pool_unref.3603
                - event_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
            - BranchSide:      'settings.c:1027,7'
              BranchSideFuncs:
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
        - Branch String:   'settings.c:1022,6'
          Branch Sides:
            - BranchSide:      'settings.c:1023,3'
              BranchSideFuncs:
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
            - BranchSide:      'settings.c:1027,7'
              BranchSideFuncs:
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
        - Branch String:   'settings.c:1027,6'
          Branch Sides:
            - BranchSide:      'settings.c:1028,23'
              BranchSideFuncs:
                - settings_check
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
            - BranchSide:      'settings.c:1037,7'
              BranchSideFuncs:
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
        - Branch String:   'settings.c:1028,7'
          Branch Sides:
            - BranchSide:      'settings.c:1030,10'
              BranchSideFuncs:
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
            - BranchSide:      'settings.c:1035,2'
              BranchSideFuncs:
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
        - Branch String:   'settings.c:1037,6'
          Branch Sides:
            - BranchSide:      'settings.c:1038,7'
              BranchSideFuncs:
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
            - BranchSide:      'settings.c:1039,12'
              BranchSideFuncs:
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
                - settings_var_skip
        - Branch String:   'settings.c:1039,11'
          Branch Sides:
            - BranchSide:      'settings.c:1040,21'
              BranchSideFuncs:
                - settings_var_skip
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
            - BranchSide:      'settings.c:1042,9'
              BranchSideFuncs:
                - t_push
                - settings_var_expand_init
                - settings_var_expand_with_funcs
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
        - Branch String:   'settings.c:1051,4'
          Branch Sides:
            - BranchSide:      'settings.c:1051,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
            - BranchSide:      'settings.c:1051,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
                - i_panic
        - Branch String:   'settings.c:1051,4'
          Branch Sides:
            - BranchSide:      'settings.c:1051,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1051,4'
              BranchSideFuncs:
                - event_unref
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
        - Branch String:   'settings.c:1052,6'
          Branch Sides:
            - BranchSide:      'settings.c:1055,4'
              BranchSideFuncs:
                - t_strdup_printf
                - pool_unref.3603
                - event_unref
            - BranchSide:      'settings.c:1061,11'
              BranchSideFuncs:
                - event_unref
      Callsites:
        - Src:             'settings.c:964,2'
          Dst:             i_panic
        - Src:             'settings.c:968,10'
          Dst:             event_create
        - Src:             'settings.c:970,3'
          Dst:             event_add_str
        - Src:             'settings.c:971,6'
          Dst:             event_find_field_recursive
        - Src:             'settings.c:972,3'
          Dst:             event_add_str
        - Src:             'settings.c:975,3'
          Dst:             settings_mmap_pool_create
        - Src:             'settings.c:979,3'
          Dst:             settings_parser_init
        - Src:             'settings.c:983,9'
          Dst:             settings_mmap_apply
        - Src:             'settings.c:986,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:988,4'
          Dst:             settings_parser_unref
        - Src:             'settings.c:989,4'
          Dst:             pool_unref
        - Src:             'settings.c:990,4'
          Dst:             event_unref
        - Src:             'settings.c:999,2'
          Dst:             settings_parse_set_expanded
        - Src:             'settings.c:1001,2'
          Dst:             t_push
        - Src:             'settings.c:1002,9'
          Dst:             settings_instance_override
        - Src:             'settings.c:1004,4'
          Dst:             t_pop_pass_str
        - Src:             'settings.c:1004,4'
          Dst:             i_panic
        - Src:             'settings.c:1006,3'
          Dst:             settings_parser_unref
        - Src:             'settings.c:1007,3'
          Dst:             pool_unref
        - Src:             'settings.c:1008,3'
          Dst:             event_unref
        - Src:             'settings.c:1014,14'
          Dst:             settings_parser_get_set
        - Src:             'settings.c:1020,2'
          Dst:             settings_parser_unref
        - Src:             'settings.c:1023,3'
          Dst:             pool_unref
        - Src:             'settings.c:1024,3'
          Dst:             event_unref
        - Src:             'settings.c:1028,8'
          Dst:             settings_check
        - Src:             'settings.c:1029,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1031,4'
          Dst:             pool_unref
        - Src:             'settings.c:1032,4'
          Dst:             event_unref
        - Src:             'settings.c:1040,3'
          Dst:             settings_var_skip
        - Src:             'settings.c:1042,9'
          Dst:             t_push
        - Src:             'settings.c:1047,3'
          Dst:             settings_var_expand_init
        - Src:             'settings.c:1048,9'
          Dst:             settings_var_expand_with_funcs
        - Src:             'settings.c:1051,4'
          Dst:             t_pop_pass_str
        - Src:             'settings.c:1051,4'
          Dst:             i_panic
        - Src:             'settings.c:1053,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1056,3'
          Dst:             pool_unref
        - Src:             'settings.c:1057,3'
          Dst:             event_unref
        - Src:             'settings.c:1062,2'
          Dst:             event_unref
    - functionName:    settings_block_read_size
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 124
      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:          100
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - be64_to_cpu_unaligned
        - t_strdup_printf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings.c:106,6'
          Branch Sides:
            - BranchSide:      'settings.c:109,51'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:113,34'
              BranchSideFuncs:
                - be64_to_cpu_unaligned
                - t_strdup_printf
        - Branch String:   'settings.c:114,6'
          Branch Sides:
            - BranchSide:      'settings.c:118,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:122,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:107,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:113,12'
          Dst:             be64_to_cpu_unaligned
        - Src:             'settings.c:115,14'
          Dst:             t_strdup_printf
    - functionName:    pool_ref
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    settings_block_read_uint32
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 98
      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:          73
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - be32_to_cpu_unaligned
        - t_strdup_printf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings.c:88,6'
          Branch Sides:
            - BranchSide:      'settings.c:91,51'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:95,33'
              BranchSideFuncs:
                - be32_to_cpu_unaligned.3587
      Callsites:
        - Src:             'settings.c:89,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:95,11'
          Dst:             be32_to_cpu_unaligned
    - functionName:    settings_block_read
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - _offset
        - error_r
      BBCount:         39
      ICount:          369
      EdgeCount:       54
      CyclomaticComplexity: 17
      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:224,6'
          Branch Sides:
            - BranchSide:      'settings.c:226,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:227,28'
              BranchSideFuncs:
                - settings_block_read_str
                - hash_table_lookup
                - malloc_multiply_check.3609
                - p_malloc.3600
                - hash_table_insert
                - settings_block_read_uint32
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_str
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:233,6'
          Branch Sides:
            - BranchSide:      'settings.c:236,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:242,30'
              BranchSideFuncs:
                - settings_block_read_str
                - hash_table_lookup
                - malloc_multiply_check.3609
                - p_malloc.3600
                - hash_table_insert
                - settings_block_read_uint32
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_str
                - t_strdup_printf
        - Branch String:   'settings.c:242,6'
          Branch Sides:
            - BranchSide:      'settings.c:244,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:247,3'
              BranchSideFuncs:
                - hash_table_lookup
                - malloc_multiply_check.3609
                - p_malloc.3600
                - hash_table_insert
                - settings_block_read_uint32
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_str
                - t_strdup_printf
        - Branch String:   'settings.c:248,6'
          Branch Sides:
            - BranchSide:      'settings.c:251,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:254,10'
              BranchSideFuncs:
                - malloc_multiply_check.3609
                - p_malloc.3600
                - hash_table_insert
                - settings_block_read_uint32
                - settings_block_read_size
                - 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:260,6'
          Branch Sides:
            - BranchSide:      'settings.c:263,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:264,32'
              BranchSideFuncs:
                - settings_block_read_size
                - 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:266,2'
          Branch Sides:
            - BranchSide:      'settings.c:267,31'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
            - BranchSide:      'settings.c:274,31'
              BranchSideFuncs:
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
        - Branch String:   'settings.c:267,7'
          Branch Sides:
            - BranchSide:      'settings.c:269,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:270,2'
              BranchSideFuncs:
                - settings_block_read_size
                - 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:274,6'
          Branch Sides:
            - BranchSide:      'settings.c:277,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:278,27'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
        - Branch String:   'settings.c:281,6'
          Branch Sides:
            - BranchSide:      'settings.c:285,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:286,6'
              BranchSideFuncs:
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
        - Branch String:   'settings.c:286,6'
          Branch Sides:
            - BranchSide:      'settings.c:287,18'
              BranchSideFuncs:
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
            - BranchSide:      'settings.c:288,29'
              BranchSideFuncs:
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
        - Branch String:   'settings.c:294,6'
          Branch Sides:
            - BranchSide:      'settings.c:297,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:301,18'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
        - Branch String:   'settings.c:301,2'
          Branch Sides:
            - BranchSide:      'settings.c:304,32'
              BranchSideFuncs:
                - settings_block_read_size
                - settings_block_read_str
                - t_strdup_printf
            - BranchSide:      'settings.c:321,39'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'settings.c:304,7'
          Branch Sides:
            - BranchSide:      'settings.c:307,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:309,23'
              BranchSideFuncs:
                - settings_block_read_str
                - t_strdup_printf
                - settings_block_read_size
        - Branch String:   'settings.c:311,7'
          Branch Sides:
            - BranchSide:      'settings.c:315,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:318,13'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
        - Branch String:   'settings.c:327,6'
          Branch Sides:
            - BranchSide:      'settings.c:330,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:333,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:224,6'
          Dst:             settings_block_read_size
        - Src:             'settings.c:234,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:242,6'
          Dst:             settings_block_read_str
        - Src:             'settings.c:247,3'
          Dst:             hash_table_lookup
        - Src:             'settings.c:249,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:254,10'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:254,10'
          Dst:             p_malloc
        - Src:             'settings.c:257,2'
          Dst:             hash_table_insert
        - Src:             'settings.c:260,6'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:267,7'
          Dst:             settings_block_read_str
        - Src:             'settings.c:274,6'
          Dst:             settings_block_read_size
        - Src:             'settings.c:281,6'
          Dst:             settings_block_read_str
        - Src:             'settings.c:294,6'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:304,7'
          Dst:             settings_block_read_size
        - Src:             'settings.c:311,7'
          Dst:             settings_block_read_str
        - Src:             'settings.c:328,14'
          Dst:             t_strdup_printf
    - functionName:    settings_read_filters
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 212
      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:          324
      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_merge
        - event_filter_parse_case_sensitive
        - event_filter_unref
        - i_strcmp_p
        - malloc_multiply_check
        - p_malloc
        - pool_ref
        - settings_block_read_str
        - settings_block_read_uint32
        - strcmp
        - t_strconcat
        - t_strdup
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:149,6'
          Branch Sides:
            - BranchSide:      'settings.c:153,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:155,24'
              BranchSideFuncs:
                - malloc_multiply_check.3609
                - p_malloc.3600
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:155,24'
          Branch Sides:
            - BranchSide:      'settings.c:155,2'
              BranchSideFuncs:
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:156,3'
              BranchSideFuncs:
                - malloc_multiply_check.3609
                - p_malloc.3600
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:158,2'
          Branch Sides:
            - BranchSide:      'settings.c:159,31'
              BranchSideFuncs:
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:211,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:159,7'
          Branch Sides:
            - BranchSide:      'settings.c:162,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:163,7'
              BranchSideFuncs:
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:163,7'
          Branch Sides:
            - BranchSide:      'settings.c:164,4'
              BranchSideFuncs:
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:168,37'
              BranchSideFuncs:
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:169,7'
          Branch Sides:
            - BranchSide:      'settings.c:173,5'
              BranchSideFuncs:
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:179,34'
              BranchSideFuncs:
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
        - Branch String:   'settings.c:180,7'
          Branch Sides:
            - BranchSide:      'settings.c:181,8'
              BranchSideFuncs:
                - array_lsearch_i
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
            - BranchSide:      'settings.c:197,41'
              BranchSideFuncs:
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - 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.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
        - Branch String:   'settings.c:181,8'
          Branch Sides:
            - BranchSide:      'settings.c:182,30'
              BranchSideFuncs:
                - t_strconcat
                - array_lsearch_i
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
            - BranchSide:      'settings.c:183,8'
              BranchSideFuncs:
                - array_lsearch_i
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
        - Branch String:   'settings.c:183,8'
          Branch Sides:
            - BranchSide:      'settings.c:184,22'
              BranchSideFuncs:
                - t_strdup
                - array_append_i.3636
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - strcmp
                - event_filter_unref
            - BranchSide:      'settings.c:188,8'
              BranchSideFuncs:
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - strcmp
                - event_filter_unref
        - Branch String:   'settings.c:188,42'
          Branch Sides:
            - BranchSide:      'settings.c:189,16'
              BranchSideFuncs:
                - strcmp
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - event_filter_unref
            - BranchSide:      'settings.c:196,3'
              BranchSideFuncs:
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - 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.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
        - Branch String:   'settings.c:189,66'
          Branch Sides:
            - BranchSide:      'settings.c:190,9'
              BranchSideFuncs:
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - strcmp
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - event_filter_unref
            - BranchSide:      'settings.c:196,3'
              BranchSideFuncs:
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - 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.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
        - Branch String:   'settings.c:188,8'
          Branch Sides:
            - BranchSide:      'settings.c:192,5'
              BranchSideFuncs:
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:196,3'
              BranchSideFuncs:
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - 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.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
        - Branch String:   'settings.c:198,21'
          Branch Sides:
            - BranchSide:      'settings.c:198,24'
              BranchSideFuncs:
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - strcmp
                - event_filter_unref
            - BranchSide:      'settings.c:206,58'
              BranchSideFuncs:
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:198,45'
          Branch Sides:
            - BranchSide:      'settings.c:199,15'
              BranchSideFuncs:
                - strcmp
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - event_filter_unref
            - BranchSide:      'settings.c:206,58'
              BranchSideFuncs:
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:198,7'
          Branch Sides:
            - BranchSide:      'settings.c:201,4'
              BranchSideFuncs:
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - strcmp
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:206,58'
              BranchSideFuncs:
                - event_filter_create_with_pool
                - pool_ref
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_find_field_exact
                - strcmp
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.3636
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
      Callsites:
        - Src:             'settings.c:149,6'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:156,3'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:156,3'
          Dst:             p_malloc
        - Src:             'settings.c:159,7'
          Dst:             settings_block_read_str
        - Src:             'settings.c:168,37'
          Dst:             event_filter_create
        - Src:             'settings.c:169,7'
          Dst:             event_filter_parse_case_sensitive
        - Src:             'settings.c:171,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:174,4'
          Dst:             event_filter_unref
        - Src:             'settings.c:179,4'
          Dst:             event_filter_find_field_exact
        - Src:             'settings.c:182,13'
          Dst:             t_strconcat
        - Src:             'settings.c:183,8'
          Dst:             array_lsearch_i
        - Src:             'settings.c:183,8'
          Dst:             i_strcmp_p
        - Src:             'settings.c:184,13'
          Dst:             t_strdup
        - Src:             'settings.c:185,5'
          Dst:             array_append_i
        - Src:             'settings.c:189,9'
          Dst:             strcmp
        - Src:             'settings.c:193,5'
          Dst:             event_filter_unref
        - Src:             'settings.c:197,11'
          Dst:             event_filter_find_field_exact
        - Src:             'settings.c:199,8'
          Dst:             strcmp
        - Src:             'settings.c:202,4'
          Dst:             event_filter_unref
        - Src:             'settings.c:206,28'
          Dst:             event_filter_create_with_pool
        - Src:             'settings.c:207,3'
          Dst:             pool_ref
        - Src:             'settings.c:208,3'
          Dst:             event_filter_merge
        - Src:             'settings.c:209,3'
          Dst:             event_filter_unref
    - functionName:    settings_root_deinit
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1373
      functionLinenumberEnd: 1391
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _root
      BBCount:         14
      ICount:          103
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - array_is_created_i
        - buffer_get_modifiable_data
        - event_filter_unref
        - i_warning
        - pool_unref
        - settings_mmap_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1380,6'
          Branch Sides:
            - BranchSide:      'settings.c:1381,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - settings_mmap_unref
                - pool_unref.3603
                - i_warning
                - event_filter_unref
            - BranchSide:      'settings.c:1384,23'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_unref.3603
                - i_warning
        - Branch String:   'settings.c:1381,3'
          Branch Sides:
            - BranchSide:      'settings.c:1382,24'
              BranchSideFuncs:
                - event_filter_unref
                - settings_mmap_unref
                - pool_unref.3603
                - i_warning
            - BranchSide:      'settings.c:1383,2'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_unref.3603
                - i_warning
        - Branch String:   'settings.c:1386,2'
          Branch Sides:
            - BranchSide:      'settings.c:1388,6'
              BranchSideFuncs:
                - i_warning
                - pool_unref.3603
            - BranchSide:      'settings.c:1390,14'
              BranchSideFuncs:
                - pool_unref.3603
      Callsites:
        - Src:             'settings.c:1380,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:1381,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:1382,4'
          Dst:             event_filter_unref
        - Src:             'settings.c:1384,2'
          Dst:             settings_mmap_unref
        - Src:             'settings.c:1387,3'
          Dst:             i_warning
        - Src:             'settings.c:1390,2'
          Dst:             pool_unref
    - functionName:    settings_root_init
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1365
      functionLinenumberEnd: 1369
      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:1366,9'
          Branch Sides:
            - BranchSide:      'settings.c:1366,9'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.3609
                - p_malloc.3600
            - BranchSide:      'settings.c:1366,16'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.3609
                - p_malloc.3600
      Callsites:
        - Src:             'settings.c:1366,16'
          Dst:             pool_alloconly_create
        - Src:             'settings.c:1367,31'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:1367,31'
          Dst:             p_malloc
    - functionName:    settings_instance_free
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1351
      functionLinenumberEnd: 1362
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _instance
      BBCount:         10
      ICount:          71
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_is_created_i
        - buffer_get_modifiable_data
        - event_filter_unref
        - pool_unref
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:1357,6'
          Branch Sides:
            - BranchSide:      'settings.c:1357,6'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - pool_unref.3603
                - event_filter_unref
            - BranchSide:      'settings.c:1358,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - pool_unref.3603
                - event_filter_unref
        - Branch String:   'settings.c:1358,3'
          Branch Sides:
            - BranchSide:      'settings.c:1359,24'
              BranchSideFuncs:
                - event_filter_unref
                - pool_unref.3603
            - BranchSide:      'settings.c:1360,2'
              BranchSideFuncs:
                - pool_unref.3603
      Callsites:
        - Src:             'settings.c:1357,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:1358,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:1359,4'
          Dst:             event_filter_unref
        - Src:             'settings.c:1361,2'
          Dst:             pool_unref
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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:    settings_instance_dup
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1329
      functionLinenumberEnd: 1348
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - src
      BBCount:         10
      ICount:          123
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_space_i
        - array_count_i
        - array_is_created_i
        - p_strdup
        - settings_instance_alloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:1333,6'
          Branch Sides:
            - BranchSide:      'settings.c:1334,10'
              BranchSideFuncs:
                - array_count_i.3660
                - array_create_i.3612
                - array_append_space_i.3661
                - p_strdup
                - p_strdup
            - BranchSide:      'settings.c:1336,2'
              BranchSideFuncs:
                - array_count_i.3660
                - array_create_i.3612
                - array_append_space_i.3661
                - p_strdup
                - p_strdup
        - Branch String:   'settings.c:1339,2'
          Branch Sides:
            - BranchSide:      'settings.c:1341,4'
              BranchSideFuncs:
                - array_append_space_i.3661
                - p_strdup
                - p_strdup
            - BranchSide:      'settings.c:1347,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1330,35'
          Dst:             settings_instance_alloc
        - Src:             'settings.c:1333,7'
          Dst:             array_is_created_i
        - Src:             'settings.c:1336,2'
          Dst:             array_count_i
        - Src:             'settings.c:1336,2'
          Dst:             array_create_i
        - Src:             'settings.c:1341,4'
          Dst:             array_append_space_i
        - Src:             'settings.c:1344,19'
          Dst:             p_strdup
        - Src:             'settings.c:1345,21'
          Dst:             p_strdup
    - functionName:    settings_instance_alloc
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1311
      functionLinenumberEnd: 1316
      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:1312,9'
          Branch Sides:
            - BranchSide:      'settings.c:1312,9'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.3609
                - p_malloc.3600
            - BranchSide:      'settings.c:1312,16'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.3609
                - p_malloc.3600
      Callsites:
        - Src:             'settings.c:1312,16'
          Dst:             pool_alloconly_create
        - Src:             'settings.c:1314,3'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:1314,3'
          Dst:             p_malloc
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 336
      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:334,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    settings_instance_new
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1321
      functionLinenumberEnd: 1324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - root
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_instance_alloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:1322,39'
          Dst:             settings_instance_alloc
    - functionName:    settings_root_override
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1297
      functionLinenumberEnd: 1307
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - root
        - key
        - value
        - type
      BBCount:         12
      ICount:          89
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_is_created_i
        - i_panic
        - p_strdup
        - settings_override_get_filter
        - t_pop
        - t_push
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:1298,6'
          Branch Sides:
            - BranchSide:      'settings.c:1299,3'
              BranchSideFuncs:
                - array_append_space_i.3661
                - p_strdup
                - t_push
                - settings_override_get_filter
                - t_pop
                - i_panic
            - BranchSide:      'settings.c:1301,3'
              BranchSideFuncs:
                - array_append_space_i.3661
                - p_strdup
                - t_push
                - settings_override_get_filter
                - t_pop
                - i_panic
        - Branch String:   'settings.c:1306,4'
          Branch Sides:
            - BranchSide:      'settings.c:1306,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1306,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1298,7'
          Dst:             array_is_created_i
        - Src:             'settings.c:1299,3'
          Dst:             array_create_i
        - Src:             'settings.c:1301,3'
          Dst:             array_append_space_i
        - Src:             'settings.c:1303,15'
          Dst:             p_strdup
        - Src:             'settings.c:1304,2'
          Dst:             t_push
        - Src:             'settings.c:1305,3'
          Dst:             settings_override_get_filter
        - Src:             'settings.c:1306,4'
          Dst:             t_pop
        - Src:             'settings.c:1306,4'
          Dst:             i_panic
    - functionName:    settings_override_get_filter
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1203
      functionLinenumberEnd: 1271
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - pool
        - _key
      BBCount:         37
      ICount:          254
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached:
        - event_filter_create_with_pool
        - event_filter_parse_case_sensitive
        - i_panic
        - p_strdup
        - p_strdup_until
        - pool_ref
        - settings_section_escape
        - str_append
        - str_begins_with
        - str_c
        - str_escape
        - str_insert
        - str_len
        - str_printfa
        - strchr
        - strcmp
        - strncmp
        - t_str_new
        - t_strdup_until
        - wildcard_str_escape
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:1222,44'
          Branch Sides:
            - BranchSide:      'settings.c:1222,2'
              BranchSideFuncs:
                - strchr
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
                - str_begins_with
                - p_strdup_until
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - t_str_new
                - strncmp
                - str_append.3575
                - t_strdup_until
                - strcmp
                - t_strdup_until
                - str_len.3574
                - wildcard_str_escape
                - str_escape
                - str_printfa
                - strchr
                - t_str_new
            - BranchSide:      'settings.c:1223,24'
              BranchSideFuncs:
                - strchr
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
                - str_begins_with
                - p_strdup_until
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - t_str_new
                - strncmp
                - str_append.3575
                - t_strdup_until
                - strcmp
                - t_strdup_until
                - str_len.3574
                - wildcard_str_escape
                - str_escape
                - str_printfa
                - strchr
                - t_str_new
        - Branch String:   'settings.c:1222,2'
          Branch Sides:
            - BranchSide:      'settings.c:1224,7'
              BranchSideFuncs:
                - str_append.3575
                - t_strdup_until
                - strcmp
                - t_strdup_until
                - str_len.3574
                - wildcard_str_escape
                - str_escape
                - str_printfa
                - strchr
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
                - str_begins_with
                - p_strdup_until
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - t_str_new
                - strncmp
                - strchr
                - t_str_new
            - BranchSide:      'settings.c:1239,6'
              BranchSideFuncs:
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
                - str_begins_with
                - p_strdup_until
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - t_str_new
                - strncmp
        - Branch String:   'settings.c:1224,7'
          Branch Sides:
            - BranchSide:      'settings.c:1225,13'
              BranchSideFuncs:
                - t_str_new
                - t_strdup_until
                - strcmp
                - t_strdup_until
                - str_len.3574
                - wildcard_str_escape
                - str_escape
                - str_printfa
                - strchr
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
                - str_begins_with
                - p_strdup_until
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - t_str_new
                - strncmp
                - str_append.3575
                - strchr
            - BranchSide:      'settings.c:1227,15'
              BranchSideFuncs:
                - str_append.3575
                - t_strdup_until
                - strcmp
                - t_strdup_until
                - str_len.3574
                - wildcard_str_escape
                - str_escape
                - str_printfa
                - strchr
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
                - str_begins_with
                - p_strdup_until
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - t_str_new
                - strncmp
                - t_str_new
                - strchr
        - Branch String:   'settings.c:1230,7'
          Branch Sides:
            - BranchSide:      'settings.c:1231,20'
              BranchSideFuncs:
                - t_strdup_until
                - str_len.3574
                - wildcard_str_escape
                - str_escape
                - str_printfa
                - strchr
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
                - str_begins_with
                - p_strdup_until
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - t_str_new
                - strncmp
                - str_append.3575
                - t_strdup_until
                - strcmp
                - t_str_new
                - strchr
            - BranchSide:      'settings.c:1232,38'
              BranchSideFuncs:
                - t_strdup_until
                - str_len.3574
                - wildcard_str_escape
                - str_escape
                - str_printfa
                - strchr
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
                - str_begins_with
                - p_strdup_until
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - t_str_new
                - strncmp
                - str_append.3575
                - t_strdup_until
                - strcmp
                - t_str_new
                - strchr
        - Branch String:   'settings.c:1239,20'
          Branch Sides:
            - BranchSide:      'settings.c:1239,6'
              BranchSideFuncs:
                - str_begins_with
                - p_strdup_until
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - t_str_new
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
                - strncmp
            - BranchSide:      'settings.c:1251,13'
              BranchSideFuncs:
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
        - Branch String:   'settings.c:1239,6'
          Branch Sides:
            - BranchSide:      'settings.c:1239,24'
              BranchSideFuncs:
                - strncmp
                - p_strdup_until
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - t_str_new
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
            - BranchSide:      'settings.c:1239,24'
              BranchSideFuncs:
                - str_begins_with
                - p_strdup_until
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - t_str_new
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
        - Branch String:   'settings.c:1239,24'
          Branch Sides:
            - BranchSide:      'settings.c:1242,41'
              BranchSideFuncs:
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
            - BranchSide:      'settings.c:1251,13'
              BranchSideFuncs:
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
        - Branch String:   'settings.c:1239,6'
          Branch Sides:
            - BranchSide:      'settings.c:1242,41'
              BranchSideFuncs:
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
            - BranchSide:      'settings.c:1251,13'
              BranchSideFuncs:
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
                - str_insert.3573
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - p_strdup
        - Branch String:   'settings.c:1244,7'
          Branch Sides:
            - BranchSide:      'settings.c:1245,13'
              BranchSideFuncs:
                - t_str_new
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
            - BranchSide:      'settings.c:1247,15'
              BranchSideFuncs:
                - str_append.3575
                - wildcard_str_escape
                - str_printfa
                - p_strdup
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
        - Branch String:   'settings.c:1261,6'
          Branch Sides:
            - BranchSide:      'settings.c:1262,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1264,46'
              BranchSideFuncs:
                - event_filter_create_with_pool
                - pool_ref
                - str_c
                - event_filter_parse_case_sensitive
                - i_panic
        - Branch String:   'settings.c:1266,6'
          Branch Sides:
            - BranchSide:      'settings.c:1266,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1269,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'settings.c:1222,18'
          Dst:             strchr
        - Src:             'settings.c:1223,17'
          Dst:             strchr
        - Src:             'settings.c:1225,13'
          Dst:             t_str_new
        - Src:             'settings.c:1227,4'
          Dst:             str_append
        - Src:             'settings.c:1229,21'
          Dst:             t_strdup_until
        - Src:             'settings.c:1230,7'
          Dst:             strcmp
        - Src:             'settings.c:1232,23'
          Dst:             t_strdup_until
        - Src:             'settings.c:1233,25'
          Dst:             str_len
        - Src:             'settings.c:1235,8'
          Dst:             wildcard_str_escape
        - Src:             'settings.c:1236,8'
          Dst:             str_escape
        - Src:             'settings.c:1234,3'
          Dst:             str_printfa
        - Src:             'settings.c:1239,24'
          Dst:             strncmp
        - Src:             'settings.c:1239,24'
          Dst:             str_begins_with
        - Src:             'settings.c:1242,26'
          Dst:             p_strdup_until
        - Src:             'settings.c:1245,13'
          Dst:             t_str_new
        - Src:             'settings.c:1247,4'
          Dst:             str_append
        - Src:             'settings.c:1249,8'
          Dst:             wildcard_str_escape
        - Src:             'settings.c:1248,3'
          Dst:             str_printfa
        - Src:             'settings.c:1252,3'
          Dst:             str_insert
        - Src:             'settings.c:1255,5'
          Dst:             settings_section_escape
        - Src:             'settings.c:1254,25'
          Dst:             wildcard_str_escape
        - Src:             'settings.c:1253,3'
          Dst:             str_printfa
        - Src:             'settings.c:1256,26'
          Dst:             p_strdup
        - Src:             'settings.c:1257,28'
          Dst:             p_strdup
        - Src:             'settings.c:1259,13'
          Dst:             p_strdup
        - Src:             'settings.c:1264,16'
          Dst:             event_filter_create_with_pool
        - Src:             'settings.c:1265,2'
          Dst:             pool_ref
        - Src:             'settings.c:1266,40'
          Dst:             str_c
        - Src:             'settings.c:1266,6'
          Dst:             event_filter_parse_case_sensitive
        - Src:             'settings.c:1268,3'
          Dst:             i_panic
    - functionName:    settings_override
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1276
      functionLinenumberEnd: 1292
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - instance
        - key
        - value
        - type
      BBCount:         17
      ICount:          127
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_is_created_i
        - i_panic
        - p_strdup
        - settings_override_get_filter
        - strlen
        - t_pop
        - t_push
        - t_strndup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:1277,6'
          Branch Sides:
            - BranchSide:      'settings.c:1278,3'
              BranchSideFuncs:
                - array_append_space_i.3661
                - strlen
                - t_push
                - p_strdup
                - settings_override_get_filter
                - t_pop
                - i_panic
                - t_strndup
            - BranchSide:      'settings.c:1280,3'
              BranchSideFuncs:
                - array_append_space_i.3661
                - strlen
                - t_push
                - p_strdup
                - settings_override_get_filter
                - t_pop
                - i_panic
                - t_strndup
        - Branch String:   'settings.c:1284,15'
          Branch Sides:
            - BranchSide:      'settings.c:1284,18'
              BranchSideFuncs:
                - p_strdup
                - settings_override_get_filter
                - t_pop
                - i_panic
                - t_strndup
            - BranchSide:      'settings.c:1289,25'
              BranchSideFuncs:
                - p_strdup
                - settings_override_get_filter
                - t_pop
                - i_panic
        - Branch String:   'settings.c:1284,7'
          Branch Sides:
            - BranchSide:      'settings.c:1286,4'
              BranchSideFuncs:
                - t_strndup
                - p_strdup
                - settings_override_get_filter
                - t_pop
                - i_panic
            - BranchSide:      'settings.c:1289,25'
              BranchSideFuncs:
                - p_strdup
                - settings_override_get_filter
                - t_pop
                - i_panic
        - Branch String:   'settings.c:1291,4'
          Branch Sides:
            - BranchSide:      'settings.c:1291,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1291,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1277,7'
          Dst:             array_is_created_i
        - Src:             'settings.c:1278,3'
          Dst:             array_create_i
        - Src:             'settings.c:1280,3'
          Dst:             array_append_space_i
        - Src:             'settings.c:1282,15'
          Dst:             strlen
        - Src:             'settings.c:1283,2'
          Dst:             t_push
        - Src:             'settings.c:1287,10'
          Dst:             t_strndup
        - Src:             'settings.c:1289,16'
          Dst:             p_strdup
        - Src:             'settings.c:1290,3'
          Dst:             settings_override_get_filter
        - Src:             'settings.c:1291,4'
          Dst:             t_pop
        - Src:             'settings.c:1291,4'
          Dst:             i_panic
    - functionName:    settings_get_or_fatal
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1190
      functionLinenumberEnd: 1197
      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:1194,6'
          Branch Sides:
            - BranchSide:      'settings.c:1196,17'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'settings.c:1197,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1194,6'
          Dst:             settings_get
        - Src:             'settings.c:1196,3'
          Dst:             i_fatal
    - functionName:    settings_get
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1137
      functionLinenumberEnd: 1142
      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:          68
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - settings_get_full
      functionUses:    4
      BranchProfiles:
        - Branch String:   'settings.c:1141,2'
          Branch Sides:
            - BranchSide:      'settings.c:1141,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1141,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1138,12'
          Dst:             settings_get_full
        - Src:             'settings.c:1141,2'
          Dst:             i_panic
    - functionName:    settings_get_full
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1074
      functionLinenumberEnd: 1127
      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:         51
      ICount:          285
      EdgeCount:       63
      CyclomaticComplexity: 14
      functionsReached:
        - event_get_parent
        - event_get_ptr
        - i_panic
        - settings_instance_get
        - settings_section_escape
        - t_pop_pass_str
        - t_push
        - t_strdup_printf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings.c:1080,2'
          Branch Sides:
            - BranchSide:      'settings.c:1080,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1082,2'
              BranchSideFuncs:
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:1083,7'
          Branch Sides:
            - BranchSide:      'settings.c:1084,25'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
            - BranchSide:      'settings.c:1085,7'
              BranchSideFuncs:
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:1085,7'
          Branch Sides:
            - BranchSide:      'settings.c:1086,29'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
            - BranchSide:      'settings.c:1089,7'
              BranchSideFuncs:
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:1089,7'
          Branch Sides:
            - BranchSide:      'settings.c:1090,31'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
            - BranchSide:      'settings.c:1093,7'
              BranchSideFuncs:
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:1093,20'
          Branch Sides:
            - BranchSide:      'settings.c:1093,23'
              BranchSideFuncs:
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
            - BranchSide:      'settings.c:1095,33'
              BranchSideFuncs:
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:1093,40'
          Branch Sides:
            - BranchSide:      'settings.c:1093,43'
              BranchSideFuncs:
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
            - BranchSide:      'settings.c:1095,33'
              BranchSideFuncs:
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:1093,7'
          Branch Sides:
            - BranchSide:      'settings.c:1094,4'
              BranchSideFuncs:
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:1095,33'
              BranchSideFuncs:
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:1096,2'
          Branch Sides:
            - BranchSide:      'settings.c:1083,7'
              BranchSideFuncs:
                - event_get_parent
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - event_get_ptr
            - BranchSide:      'settings.c:1098,6'
              BranchSideFuncs:
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:1098,6'
          Branch Sides:
            - BranchSide:      'settings.c:1099,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1100,6'
              BranchSideFuncs:
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
        - Branch String:   'settings.c:1100,6'
          Branch Sides:
            - BranchSide:      'settings.c:1101,10'
              BranchSideFuncs:
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
            - BranchSide:      'settings.c:1103,10'
              BranchSideFuncs:
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
        - Branch String:   'settings.c:1109,6'
          Branch Sides:
            - BranchSide:      'settings.c:1110,12'
              BranchSideFuncs:
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
            - BranchSide:      'settings.c:1113,2'
              BranchSideFuncs:
                - t_push
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
                - settings_section_escape
                - t_strdup_printf
        - Branch String:   'settings.c:1115,7'
          Branch Sides:
            - BranchSide:      'settings.c:1116,43'
              BranchSideFuncs:
                - settings_section_escape
                - t_strdup_printf
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'settings.c:1118,14'
              BranchSideFuncs:
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings.c:1118,14'
          Branch Sides:
            - BranchSide:      'settings.c:1119,18'
              BranchSideFuncs:
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'settings.c:1121,16'
              BranchSideFuncs:
                - settings_instance_get
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings.c:1126,4'
          Branch Sides:
            - BranchSide:      'settings.c:1126,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'settings.c:1126,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings.c:1126,4'
          Branch Sides:
            - BranchSide:      'settings.c:1126,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1126,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1080,2'
          Dst:             i_panic
        - Src:             'settings.c:1084,11'
          Dst:             event_get_ptr
        - Src:             'settings.c:1086,15'
          Dst:             event_get_ptr
        - Src:             'settings.c:1090,17'
          Dst:             event_get_ptr
        - Src:             'settings.c:1095,16'
          Dst:             event_get_parent
        - Src:             'settings.c:1099,3'
          Dst:             i_panic
        - Src:             'settings.c:1113,2'
          Dst:             t_push
        - Src:             'settings.c:1117,5'
          Dst:             settings_section_escape
        - Src:             'settings.c:1116,18'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1123,9'
          Dst:             settings_instance_get
        - Src:             'settings.c:1126,4'
          Dst:             t_pop_pass_str
        - Src:             'settings.c:1126,4'
          Dst:             i_panic
    - functionName:    settings_try_get_filter
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1178
      functionLinenumberEnd: 1181
      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:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_get_full
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:1179,9'
          Dst:             settings_get_full
    - functionName:    settings_get_filter
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1153
      functionLinenumberEnd: 1168
      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:         8
      ICount:          81
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - settings_get_full
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:1157,6'
          Branch Sides:
            - BranchSide:      'settings.c:1158,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1159,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'settings.c:1159,6'
          Branch Sides:
            - BranchSide:      'settings.c:1164,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1167,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1154,12'
          Dst:             settings_get_full
        - Src:             'settings.c:1161,14'
          Dst:             t_strdup_printf
    - functionName:    settings_has_mmap
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 657
      functionLinenumberEnd: 658
      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: 342
      functionLinenumberEnd: 402
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - service_name
        - flags
        - specific_services_r
        - error_r
      BBCount:         29
      ICount:          224
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - array_append_space_i
        - array_count_i
        - array_create_i
        - array_idx_i
        - be64_to_cpu_unaligned
        - memchr
        - memcmp
        - pool_datastack_create
        - settings_block_read
        - settings_read_filters
        - strlen
        - t_strdup_printf
        - t_strdup_until
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:358,35'
          Branch Sides:
            - BranchSide:      'settings.c:359,13'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:361,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:359,61'
          Branch Sides:
            - BranchSide:      'settings.c:360,6'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:361,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:358,6'
          Branch Sides:
            - BranchSide:      'settings.c:361,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:364,6'
              BranchSideFuncs:
                - be64_to_cpu_unaligned
                - settings_read_filters
                - settings_block_read
                - array_count_i.3660
                - array_append_space_i.3661
                - array_idx_i.3614
                - t_strdup_printf
                - t_strdup_until
                - t_strdup_printf
        - Branch String:   'settings.c:364,41'
          Branch Sides:
            - BranchSide:      'settings.c:365,6'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_printf
            - BranchSide:      'settings.c:368,19'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_printf
        - Branch String:   'settings.c:364,6'
          Branch Sides:
            - BranchSide:      'settings.c:368,19'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_printf
            - BranchSide:      'settings.c:373,28'
              BranchSideFuncs:
                - be64_to_cpu_unaligned
                - settings_read_filters
                - settings_block_read
                - array_count_i.3660
                - array_append_space_i.3661
                - array_idx_i.3614
                - t_strdup_printf
        - Branch String:   'settings.c:376,6'
          Branch Sides:
            - BranchSide:      'settings.c:380,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:385,18'
              BranchSideFuncs:
                - settings_read_filters
                - settings_block_read
                - array_count_i.3660
                - array_append_space_i.3661
                - array_idx_i.3614
        - Branch String:   'settings.c:386,6'
          Branch Sides:
            - BranchSide:      'settings.c:388,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:390,2'
              BranchSideFuncs:
                - settings_block_read
                - array_count_i.3660
                - array_append_space_i.3661
                - array_idx_i.3614
        - Branch String:   'settings.c:391,7'
          Branch Sides:
            - BranchSide:      'settings.c:392,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:393,2'
              BranchSideFuncs:
                - array_count_i.3660
                - array_append_space_i.3661
                - array_idx_i.3614
                - settings_block_read
        - Branch String:   'settings.c:393,2'
          Branch Sides:
            - BranchSide:      'settings.c:391,27'
              BranchSideFuncs:
                - settings_block_read
                - array_count_i.3660
                - array_append_space_i.3661
                - array_idx_i.3614
            - BranchSide:      'settings.c:395,6'
              BranchSideFuncs:
                - array_count_i.3660
                - array_append_space_i.3661
                - array_idx_i.3614
        - Branch String:   'settings.c:395,6'
          Branch Sides:
            - BranchSide:      'settings.c:396,3'
              BranchSideFuncs:
                - array_append_space_i.3661
                - array_idx_i.3614
            - BranchSide:      'settings.c:399,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:353,2'
          Dst:             pool_datastack_create
        - Src:             'settings.c:353,2'
          Dst:             array_create_i
        - Src:             'settings.c:356,40'
          Dst:             strlen
        - Src:             'settings.c:357,29'
          Dst:             memchr
        - Src:             'settings.c:359,6'
          Dst:             memcmp
        - Src:             'settings.c:368,4'
          Dst:             t_strdup_until
        - Src:             'settings.c:366,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:375,3'
          Dst:             be64_to_cpu_unaligned
        - Src:             'settings.c:378,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:386,6'
          Dst:             settings_read_filters
        - Src:             'settings.c:391,7'
          Dst:             settings_block_read
        - Src:             'settings.c:395,6'
          Dst:             array_count_i
        - Src:             'settings.c:396,3'
          Dst:             array_append_space_i
        - Src:             'settings.c:397,26'
          Dst:             array_idx_i
    - functionName:    settings_read
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 653
      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_services_r
        - error_r
      BBCount:         7
      ICount:          119
      EdgeCount:       7
      CyclomaticComplexity: 2
      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
        - strcmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:640,6'
          Branch Sides:
            - BranchSide:      'settings.c:641,57'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'settings.c:642,6'
              BranchSideFuncs:
                - p_strdup
                - settings_mmap_unref
                - hash_table_create
                - settings_mmap_parse
                - i_fatal
        - Branch String:   'settings.c:642,6'
          Branch Sides:
            - BranchSide:      'settings.c:643,59'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'settings.c:645,33'
              BranchSideFuncs:
                - p_strdup
                - settings_mmap_unref
                - hash_table_create
                - settings_mmap_parse
      Callsites:
        - Src:             'settings.c:635,16'
          Dst:             pool_alloconly_create
        - Src:             'settings.c:636,31'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:636,31'
          Dst:             p_malloc
        - Src:             'settings.c:639,20'
          Dst:             mmap_ro_file
        - Src:             'settings.c:641,3'
          Dst:             i_fatal
        - Src:             'settings.c:643,3'
          Dst:             i_fatal
        - Src:             'settings.c:645,24'
          Dst:             p_strdup
        - Src:             'settings.c:647,2'
          Dst:             settings_mmap_unref
        - Src:             'settings.c:650,2'
          Dst:             hash_table_create
        - Src:             'settings.c:650,2'
          Dst:             str_hash
        - Src:             'settings.c:650,2'
          Dst:             strcmp
        - Src:             'settings.c:652,9'
          Dst:             settings_mmap_parse
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:273,2'
          Dst:             i_panic
    - functionName:    setting_copy
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - type
        - src
        - dest
        - pool
        - keep_values
      BBCount:         84
      ICount:          538
      EdgeCount:       101
      CyclomaticComplexity: 19
      functionsReached:
        - array_append_i
        - array_count_i
        - array_create_i
        - array_get_i
        - array_idx_i
        - array_is_created_i
        - i_panic
        - p_strdup
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:675,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:675,2'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:677,15'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:687,34'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:687,34'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:687,34'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:687,34'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:694,17'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:701,20'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:710,32'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:710,32'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:710,32'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:720,45'
              BranchSideFuncs:
                - array_is_created_i.3818
                - array_get_i.3819
                - array_is_created_i.3818
                - array_create_i.3822
                - array_count_i.3823
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
                - i_panic
                - i_panic
            - BranchSide:      'settings-parser.c:752,45'
              BranchSideFuncs:
                - array_is_created_i.3818
                - array_get_i.3819
                - array_is_created_i.3818
                - array_create_i.3822
                - array_count_i.3823
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:781,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:781,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:713,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:714,17'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:716,25'
              BranchSideFuncs:
                - p_strdup
        - Branch String:   'settings-parser.c:725,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:726,4'
              BranchSideFuncs:
                - array_get_i.3819
                - array_is_created_i.3818
                - array_create_i.3822
                - array_count_i.3823
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
                - i_panic
                - i_panic
            - BranchSide:      'settings-parser.c:728,13'
              BranchSideFuncs:
                - array_get_i.3819
                - array_is_created_i.3818
                - array_create_i.3822
                - array_count_i.3823
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
                - i_panic
                - i_panic
        - Branch String:   'settings-parser.c:729,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:729,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:730,8'
              BranchSideFuncs:
                - array_is_created_i.3818
                - array_create_i.3822
                - array_count_i.3823
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
                - i_panic
        - Branch String:   'settings-parser.c:730,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:731,4'
              BranchSideFuncs:
                - array_count_i.3823
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
                - i_panic
            - BranchSide:      'settings-parser.c:732,16'
              BranchSideFuncs:
                - array_count_i.3823
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
                - i_panic
        - Branch String:   'settings-parser.c:733,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:733,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:734,10'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:734,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:735,8'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:749,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:735,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:736,20'
              BranchSideFuncs:
                - array_idx_i.3813
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - strcmp
            - BranchSide:      'settings-parser.c:744,10'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:737,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:738,17'
              BranchSideFuncs:
                - strcmp
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
            - BranchSide:      'settings-parser.c:741,9'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:738,10'
          Branch Sides:
            - BranchSide:      'settings-parser.c:739,7'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:740,5'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:741,9'
          Branch Sides:
            - BranchSide:      'settings-parser.c:742,6'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:743,4'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:744,10'
          Branch Sides:
            - BranchSide:      'settings-parser.c:744,24'
              BranchSideFuncs:
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:744,46'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:746,10'
          Branch Sides:
            - BranchSide:      'settings-parser.c:746,24'
              BranchSideFuncs:
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:746,48'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:757,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:758,4'
              BranchSideFuncs:
                - array_get_i.3819
                - array_is_created_i.3818
                - array_create_i.3822
                - array_count_i.3823
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:760,13'
              BranchSideFuncs:
                - array_get_i.3819
                - array_is_created_i.3818
                - array_create_i.3822
                - array_count_i.3823
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:761,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:762,4'
              BranchSideFuncs:
                - array_count_i.3823
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:763,16'
              BranchSideFuncs:
                - array_count_i.3823
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:764,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:765,8'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:777,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:765,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:766,20'
              BranchSideFuncs:
                - array_idx_i.3813
                - p_strdup
                - array_append_i.3825
                - strcmp
            - BranchSide:      'settings-parser.c:774,10'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:767,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:768,17'
              BranchSideFuncs:
                - strcmp
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
            - BranchSide:      'settings-parser.c:771,9'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:768,10'
          Branch Sides:
            - BranchSide:      'settings-parser.c:769,7'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:770,5'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:771,9'
          Branch Sides:
            - BranchSide:      'settings-parser.c:772,6'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:773,4'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
        - Branch String:   'settings-parser.c:774,10'
          Branch Sides:
            - BranchSide:      'settings-parser.c:774,24'
              BranchSideFuncs:
                - array_append_i.3825
                - p_strdup
                - array_idx_i.3813
                - strcmp
            - BranchSide:      'settings-parser.c:774,46'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - array_idx_i.3813
                - strcmp
      Callsites:
        - Src:             'settings-parser.c:716,16'
          Dst:             p_strdup
        - Src:             'settings-parser.c:725,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:728,13'
          Dst:             array_get_i
        - Src:             'settings-parser.c:729,3'
          Dst:             i_panic
        - Src:             'settings-parser.c:730,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:731,4'
          Dst:             array_create_i
        - Src:             'settings-parser.c:732,16'
          Dst:             array_count_i
        - Src:             'settings-parser.c:733,3'
          Dst:             i_panic
        - Src:             'settings-parser.c:736,20'
          Dst:             array_idx_i
        - Src:             'settings-parser.c:738,10'
          Dst:             strcmp
        - Src:             'settings-parser.c:744,37'
          Dst:             p_strdup
        - Src:             'settings-parser.c:745,4'
          Dst:             array_append_i
        - Src:             'settings-parser.c:746,39'
          Dst:             p_strdup
        - Src:             'settings-parser.c:747,4'
          Dst:             array_append_i
        - Src:             'settings-parser.c:757,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:760,13'
          Dst:             array_get_i
        - Src:             'settings-parser.c:761,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:762,4'
          Dst:             array_create_i
        - Src:             'settings-parser.c:763,16'
          Dst:             array_count_i
        - Src:             'settings-parser.c:766,20'
          Dst:             array_idx_i
        - Src:             'settings-parser.c:768,10'
          Dst:             strcmp
        - Src:             'settings-parser.c:774,37'
          Dst:             p_strdup
        - Src:             'settings-parser.c:775,4'
          Dst:             array_append_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      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:251,13'
          Dst:             array_count_i
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:    4
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:147,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3826
            - BranchSide:      '../../src/lib/array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3826
      Callsites:
        - Src:             '../../src/lib/array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:             '../../src/lib/array.h:210,2'
          Dst:             buffer_append
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      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-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:    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:    setting_define_find
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 182
      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:177,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:178,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'settings-parser.c:181,2'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:178,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:179,11'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:180,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'settings-parser.c:178,7'
          Dst:             strcmp
    - functionName:    settings_parse_strlist
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - array
        - key
        - value
      BBCount:         15
      ICount:          118
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_append_i
        - array_create_i
        - array_get_i
        - array_idx_set_i
        - array_is_created_i
        - p_strdup
        - strcmp
        - strrchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:274,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:275,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:276,5'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.3818
                - array_create_i.3822
                - array_get_i.3819
                - p_strdup
                - array_append_i.3825
                - array_append_i.3825
                - strcmp
                - array_idx_set_i
        - Branch String:   'settings-parser.c:279,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:280,3'
              BranchSideFuncs:
                - array_get_i.3819
                - p_strdup
                - array_append_i.3825
                - array_append_i.3825
                - strcmp
                - array_idx_set_i
            - BranchSide:      'settings-parser.c:283,10'
              BranchSideFuncs:
                - array_get_i.3819
                - p_strdup
                - array_append_i.3825
                - array_append_i.3825
                - strcmp
                - array_idx_set_i
        - Branch String:   'settings-parser.c:284,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:285,14'
              BranchSideFuncs:
                - strcmp
                - p_strdup
                - array_append_i.3825
                - array_append_i.3825
                - array_idx_set_i
            - BranchSide:      'settings-parser.c:291,18'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - array_append_i.3825
        - Branch String:   'settings-parser.c:285,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:286,4'
              BranchSideFuncs:
                - array_idx_set_i
            - BranchSide:      'settings-parser.c:289,2'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3825
                - array_append_i.3825
                - strcmp
                - array_idx_set_i
      Callsites:
        - Src:             'settings-parser.c:273,8'
          Dst:             strrchr
        - Src:             'settings-parser.c:277,11'
          Dst:             p_strdup
        - Src:             'settings-parser.c:279,7'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:280,3'
          Dst:             array_create_i
        - Src:             'settings-parser.c:283,10'
          Dst:             array_get_i
        - Src:             'settings-parser.c:285,7'
          Dst:             strcmp
        - Src:             'settings-parser.c:286,4'
          Dst:             array_idx_set_i
        - Src:             'settings-parser.c:291,9'
          Dst:             p_strdup
        - Src:             'settings-parser.c:292,2'
          Dst:             array_append_i
        - Src:             'settings-parser.c:293,2'
          Dst:             array_append_i
    - functionName:    get_enum
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 250
      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:230,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:231,14'
              BranchSideFuncs:
                - strchr
                - strncmp
                - p_strdup
                - strcmp
                - t_strconcat
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:248,23'
              BranchSideFuncs:
                - p_strdup
        - Branch String:   'settings-parser.c:232,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:233,15'
              BranchSideFuncs:
                - strcmp
                - t_strconcat
                - settings_parser_set_error
                - p_strdup
            - BranchSide:      'settings-parser.c:241,15'
              BranchSideFuncs:
                - strncmp
                - p_strdup
                - strchr
                - strcmp
                - t_strconcat
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:233,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:234,5'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:236,30'
              BranchSideFuncs:
                - t_strconcat
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:241,63'
          Branch Sides:
            - BranchSide:      'settings-parser.c:242,7'
              BranchSideFuncs:
                - p_strdup
                - strchr
                - strncmp
                - strcmp
                - t_strconcat
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:245,20'
              BranchSideFuncs:
                - p_strdup
                - strchr
                - strncmp
                - strcmp
                - t_strconcat
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:241,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:243,4'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:245,20'
              BranchSideFuncs:
                - p_strdup
                - strchr
                - strncmp
                - strcmp
                - t_strconcat
                - settings_parser_set_error
      Callsites:
        - Src:             'settings-parser.c:231,7'
          Dst:             strchr
        - Src:             'settings-parser.c:233,8'
          Dst:             strcmp
        - Src:             'settings-parser.c:237,5'
          Dst:             t_strconcat
        - Src:             'settings-parser.c:236,4'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:241,7'
          Dst:             strncmp
        - Src:             'settings-parser.c:248,14'
          Dst:             p_strdup
    - functionName:    settings_parser_set_error
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 165
      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:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:163,2'
          Dst:             p_free_internal
        - Src:             'settings-parser.c:164,15'
          Dst:             i_strdup
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    get_in_port_zero
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 262
      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:256,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:257,29'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:261,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:256,6'
          Dst:             net_str2port_zero
        - Src:             'settings-parser.c:257,34'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:257,3'
          Dst:             settings_parser_set_error
    - functionName:    get_octal
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 223
      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:213,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:214,19'
              BranchSideFuncs:
                - get_uint
            - BranchSide:      'settings-parser.c:216,24'
              BranchSideFuncs:
                - str_to_ullong_oct
                - t_strconcat
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:216,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:217,29'
              BranchSideFuncs:
                - t_strconcat
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:221,28'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:214,10'
          Dst:             get_uint
        - Src:             'settings-parser.c:216,6'
          Dst:             str_to_ullong_oct
        - Src:             'settings-parser.c:218,4'
          Dst:             t_strconcat
        - Src:             'settings-parser.c:217,3'
          Dst:             settings_parser_set_error
    - functionName:    get_uint
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 205
      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_uint
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:198,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:199,29'
              BranchSideFuncs:
                - str_num_error
                - t_strdup_printf
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:204,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:198,6'
          Dst:             str_to_uint
        - Src:             'settings-parser.c:201,4'
          Dst:             str_num_error
        - Src:             'settings-parser.c:199,34'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:199,3'
          Dst:             settings_parser_set_error
    - functionName:    get_bool
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 191
      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:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:189,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:189,6'
              BranchSideFuncs:
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:190,29'
              BranchSideFuncs:
                - settings_parser_set_error
      Callsites:
        - Src:             'settings-parser.c:189,13'
          Dst:             str_parse_get_bool
        - Src:             'settings-parser.c:190,3'
          Dst:             settings_parser_set_error
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:80,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:80,2'
          Dst:             i_panic
    - functionName:    set_config_binary
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 985
      functionLinenumberEnd: 987
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - value
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_config_binary
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 980
      functionLinenumberEnd: 981
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_section_unescape
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 931
      functionLinenumberEnd: 975
      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:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:933,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:934,10'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:936,35'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_append_c.3841
                - str_c
                - strchr
                - str_append_data.3840
                - str_append.3842
                - str_c
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
        - Branch String:   'settings-parser.c:938,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:939,11'
              BranchSideFuncs:
                - strchr
                - str_append_data.3840
                - str_append_c.3841
                - str_c
                - str_append.3842
                - str_c
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:973,2'
              BranchSideFuncs:
                - str_append_c.3841
                - str_c
        - Branch String:   'settings-parser.c:939,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:941,4'
              BranchSideFuncs:
                - str_append_c.3841
                - strchr
                - str_append_data.3840
                - str_append_c.3841
                - str_c
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append.3842
                - str_c
            - BranchSide:      'settings-parser.c:944,4'
              BranchSideFuncs:
                - str_append_c.3841
                - strchr
                - str_append_data.3840
                - str_append_c.3841
                - str_c
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append.3842
                - str_c
            - BranchSide:      'settings-parser.c:947,4'
              BranchSideFuncs:
                - str_append_c.3841
                - strchr
                - str_append_data.3840
                - str_append_c.3841
                - str_c
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append.3842
                - str_c
            - BranchSide:      'settings-parser.c:950,4'
              BranchSideFuncs:
                - str_append_c.3841
                - strchr
                - str_append_data.3840
                - str_append_c.3841
                - str_c
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append.3842
                - str_c
            - BranchSide:      'settings-parser.c:953,4'
              BranchSideFuncs:
                - str_append_c.3841
                - strchr
                - str_append_data.3840
                - str_append_c.3841
                - str_c
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append.3842
                - str_c
            - BranchSide:      'settings-parser.c:957,4'
              BranchSideFuncs:
                - strchr
                - str_append_data.3840
                - str_append_c.3841
                - str_c
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append.3842
                - str_c
            - BranchSide:      'settings-parser.c:960,4'
              BranchSideFuncs:
                - str_append_c.3841
                - str_append_c.3841
                - strchr
                - str_append_data.3840
                - str_append_c.3841
                - str_c
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append.3842
                - str_c
        - Branch String:   'settings-parser.c:966,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:967,15'
              BranchSideFuncs:
                - str_append.3842
                - str_c
            - BranchSide:      'settings-parser.c:970,19'
              BranchSideFuncs:
                - str_append_data.3840
                - str_append_c.3841
                - str_c
                - strchr
                - str_append.3842
                - str_c
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
                - str_append_c.3841
      Callsites:
        - Src:             'settings-parser.c:932,18'
          Dst:             strchr
        - Src:             'settings-parser.c:936,28'
          Dst:             strlen
        - Src:             'settings-parser.c:936,18'
          Dst:             t_str_new
        - Src:             'settings-parser.c:937,2'
          Dst:             str_append_data
        - Src:             'settings-parser.c:941,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:944,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:947,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:950,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:953,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:960,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:961,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:965,7'
          Dst:             strchr
        - Src:             'settings-parser.c:967,4'
          Dst:             str_append
        - Src:             'settings-parser.c:968,11'
          Dst:             str_c
        - Src:             'settings-parser.c:970,3'
          Dst:             str_append_data
        - Src:             'settings-parser.c:973,2'
          Dst:             str_append_c
        - Src:             'settings-parser.c:974,9'
          Dst:             str_c
    - 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:    9
      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:    settings_section_escape
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 887
      functionLinenumberEnd: 928
      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:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:893,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:894,7'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:897,6'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
        - Branch String:   'settings-parser.c:894,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:894,7'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:895,4'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
        - Branch String:   'settings-parser.c:894,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:894,7'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:895,4'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
        - Branch String:   'settings-parser.c:894,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:894,7'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:895,4'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
        - Branch String:   'settings-parser.c:894,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:894,7'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:895,4'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
        - Branch String:   'settings-parser.c:894,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:895,4'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:896,2'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
        - Branch String:   'settings-parser.c:897,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:898,7'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:903,18'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3840
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
        - Branch String:   'settings-parser.c:898,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:899,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:900,10'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:905,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:906,11'
              BranchSideFuncs:
                - str_append.3842
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:927,15'
              BranchSideFuncs:
                - str_c
        - Branch String:   'settings-parser.c:906,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:908,15'
              BranchSideFuncs:
                - str_append.3842
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:911,15'
              BranchSideFuncs:
                - str_append.3842
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:914,15'
              BranchSideFuncs:
                - str_append.3842
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:917,15'
              BranchSideFuncs:
                - str_append.3842
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:920,15'
              BranchSideFuncs:
                - str_append.3842
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append_c.3841
            - BranchSide:      'settings-parser.c:923,4'
              BranchSideFuncs:
                - str_append_c.3841
                - str_c
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
                - str_append.3842
      Callsites:
        - Src:             'settings-parser.c:903,22'
          Dst:             strlen
        - Src:             'settings-parser.c:903,8'
          Dst:             t_str_new
        - Src:             'settings-parser.c:904,2'
          Dst:             str_append_data
        - Src:             'settings-parser.c:908,4'
          Dst:             str_append
        - Src:             'settings-parser.c:911,4'
          Dst:             str_append
        - Src:             'settings-parser.c:914,4'
          Dst:             str_append
        - Src:             'settings-parser.c:917,4'
          Dst:             str_append
        - Src:             'settings-parser.c:920,4'
          Dst:             str_append
        - Src:             'settings-parser.c:923,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:927,9'
          Dst:             str_c
    - functionName:    settings_changes_dup
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 814
      functionLinenumberEnd: 848
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
        - change_set
        - pool
      BBCount:         31
      ICount:          167
      EdgeCount:       33
      CyclomaticComplexity: 4
      functionsReached:
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:819,25'
          Branch Sides:
            - BranchSide:      'settings-parser.c:819,28'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:820,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:819,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:820,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:822,22'
              BranchSideFuncs:
                - p_malloc.3851
        - Branch String:   'settings-parser.c:823,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:824,9'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:847,9'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:827,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:840,44'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:844,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:844,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:846,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:822,13'
          Dst:             p_malloc
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:109,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:110,3'
          Dst:             i_panic
    - functionName:    settings_dup_full
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 787
      functionLinenumberEnd: 809
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - info
        - set
        - pool
        - keep_values
      BBCount:         14
      ICount:          133
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - p_malloc
        - setting_copy
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:792,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:793,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:797,22'
              BranchSideFuncs:
                - p_malloc.3851
                - i_panic
                - setting_copy
        - Branch String:   'settings-parser.c:798,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:799,9'
              BranchSideFuncs:
                - setting_copy
                - i_panic
            - BranchSide:      'settings-parser.c:805,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'settings-parser.c:805,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:805,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:806,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:797,13'
          Dst:             p_malloc
        - Src:             'settings-parser.c:802,3'
          Dst:             setting_copy
        - Src:             'settings-parser.c:805,2'
          Dst:             i_panic
    - functionName:    settings_parser_dup
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - old_ctx
        - new_pool
      BBCount:         3
      ICount:          112
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_strdup
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
        - pool_ref
        - settings_changes_dup
        - settings_dup_full
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:862,2'
          Dst:             pool_ref
        - Src:             'settings-parser.c:863,16'
          Dst:             pool_alloconly_create
        - Src:             'settings-parser.c:865,12'
          Dst:             malloc_multiply_check
        - Src:             'settings-parser.c:865,12'
          Dst:             p_malloc
        - Src:             'settings-parser.c:872,19'
          Dst:             i_strdup
        - Src:             'settings-parser.c:876,3'
          Dst:             settings_dup_full
        - Src:             'settings-parser.c:880,3'
          Dst:             settings_changes_dup
    - functionName:    pool_ref
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - 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:    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:    settings_var_skip
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 669
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
        - set
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_var_expand_info
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:667,8'
          Dst:             settings_var_expand_info
    - functionName:    settings_var_expand_info
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
        - set
        - pool
        - table
        - func_table
        - func_context
        - str
        - error_r
      BBCount:         54
      ICount:          322
      EdgeCount:       62
      CyclomaticComplexity: 10
      functionsReached:
        - i_panic
        - p_strdup
        - str_c
        - str_truncate
        - t_strdup_printf
        - var_expand_with_funcs
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:573,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:574,11'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:620,6'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:575,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:589,4'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:591,23'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:618,2'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings-parser.c:593,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:594,5'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:596,8'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings-parser.c:596,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:597,5'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:600,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
        - Branch String:   'settings-parser.c:597,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:597,5'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings-parser.c:597,5'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings-parser.c:597,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:597,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:599,6'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings-parser.c:600,15'
          Branch Sides:
            - BranchSide:      'settings-parser.c:601,18'
              BranchSideFuncs:
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - i_panic
                - i_panic
                - t_strdup_printf
            - BranchSide:      'settings-parser.c:612,5'
              BranchSideFuncs:
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
                - i_panic
        - Branch String:   'settings-parser.c:605,9'
          Branch Sides:
            - BranchSide:      'settings-parser.c:606,18'
              BranchSideFuncs:
                - t_strdup_printf
                - str_c
                - p_strdup
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - i_panic
            - BranchSide:      'settings-parser.c:610,21'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings-parser.c:612,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:612,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:613,6'
              BranchSideFuncs:
                - i_panic
                - str_truncate.3828
                - var_expand_with_funcs
                - str_c
                - p_strdup
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings-parser.c:620,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:621,10'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:623,6'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:623,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:624,8'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:628,9'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:624,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:625,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:626,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:597,5'
          Dst:             i_panic
        - Src:             'settings-parser.c:601,5'
          Dst:             str_truncate
        - Src:             'settings-parser.c:602,11'
          Dst:             var_expand_with_funcs
        - Src:             'settings-parser.c:607,17'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:610,27'
          Dst:             str_c
        - Src:             'settings-parser.c:610,12'
          Dst:             p_strdup
        - Src:             'settings-parser.c:612,5'
          Dst:             i_panic
    - functionName:    settings_parse_var_skip
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 661
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_var_skip
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:660,2'
          Dst:             settings_var_skip
    - functionName:    settings_var_expand_with_funcs
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
        - set
        - pool
        - table
        - func_table
        - func_context
        - error_r
      BBCount:         12
      ICount:          87
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - settings_var_expand_info
        - t_pop_pass_str
        - t_push
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:654,4'
          Branch Sides:
            - BranchSide:      'settings-parser.c:654,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'settings-parser.c:654,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings-parser.c:654,4'
          Branch Sides:
            - BranchSide:      'settings-parser.c:654,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:654,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:648,2'
          Dst:             t_push
        - Src:             'settings-parser.c:649,19'
          Dst:             t_str_new
        - Src:             'settings-parser.c:651,9'
          Dst:             settings_var_expand_info
        - Src:             'settings-parser.c:654,4'
          Dst:             t_pop_pass_str
        - Src:             'settings-parser.c:654,4'
          Dst:             i_panic
    - functionName:    settings_var_expand
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 637
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
        - set
        - pool
        - table
        - error_r
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_var_expand_with_funcs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:636,9'
          Dst:             settings_var_expand_with_funcs
    - functionName:    settings_parse_set_expanded
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 556
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ctx
        - is_expanded
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_check
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 551
      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:550,9'
          Dst:             settings_check
    - functionName:    settings_check
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 527
      functionLinenumberEnd: 545
      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:530,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:531,3'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - t_push
                - t_pop_pass_str
                - i_panic
                - i_panic
            - BranchSide:      'settings-parser.c:537,6'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings-parser.c:533,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:533,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_push
                - t_pop_pass_str
                - i_panic
                - i_panic
            - BranchSide:      'settings-parser.c:533,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_push
                - t_pop_pass_str
                - i_panic
                - i_panic
        - Branch String:   'settings-parser.c:533,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:533,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:533,5'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings-parser.c:534,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:535,4'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'settings-parser.c:536,2'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings-parser.c:537,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:538,3'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'settings-parser.c:544,2'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:540,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:540,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'settings-parser.c:540,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings-parser.c:540,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:540,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:540,5'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:541,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:542,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:543,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:531,3'
          Dst:             t_push
        - Src:             'settings-parser.c:533,5'
          Dst:             t_pop_pass_str
        - Src:             'settings-parser.c:533,5'
          Dst:             i_panic
        - Src:             'settings-parser.c:538,3'
          Dst:             t_push
        - Src:             'settings-parser.c:540,5'
          Dst:             t_pop_pass_str
        - Src:             'settings-parser.c:540,5'
          Dst:             i_panic
    - functionName:    settings_parse_get_change_counter
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - settings_find_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings-parser.c:516,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:517,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:518,6'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:518,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:519,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:521,6'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:516,7'
          Dst:             settings_find_key
    - functionName:    settings_find_key
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - allow_filter_name
        - def_r
      BBCount:         19
      ICount:          119
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - setting_define_find
        - strrchr
        - t_strdup_until
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings-parser.c:415,18'
          Branch Sides:
            - BranchSide:      'settings-parser.c:415,22'
              BranchSideFuncs:
                - strrchr
                - t_strdup_until
                - setting_define_find
            - BranchSide:      'settings-parser.c:422,16'
              BranchSideFuncs:
                - strrchr
                - t_strdup_until
                - setting_define_find
        - Branch String:   'settings-parser.c:415,51'
          Branch Sides:
            - BranchSide:      'settings-parser.c:416,8'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:417,12'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:415,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:417,12'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:422,16'
              BranchSideFuncs:
                - strrchr
                - t_strdup_until
                - setting_define_find
        - Branch String:   'settings-parser.c:423,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:424,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:426,30'
              BranchSideFuncs:
                - t_strdup_until
                - setting_define_find
        - Branch String:   'settings-parser.c:428,18'
          Branch Sides:
            - BranchSide:      'settings-parser.c:428,21'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:432,2'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:428,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:429,12'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:432,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:414,8'
          Dst:             setting_define_find
        - Src:             'settings-parser.c:422,8'
          Dst:             strrchr
        - Src:             'settings-parser.c:426,15'
          Dst:             t_strdup_until
        - Src:             'settings-parser.c:427,8'
          Dst:             setting_define_find
    - functionName:    settings_parse_set_change_counter
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 504
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ctx
        - change_counter
      BBCount:         11
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings-parser.c:505,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:505,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:506,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'settings-parser.c:506,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:506,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:506,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:505,2'
          Dst:             i_panic
        - Src:             'settings-parser.c:506,2'
          Dst:             i_panic
    - functionName:    settings_parse_get_value
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - type_r
      BBCount:         17
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - settings_find_key
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings-parser.c:486,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:487,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'settings-parser.c:489,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'settings-parser.c:489,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:490,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'settings-parser.c:498,12'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:490,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:490,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:491,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'settings-parser.c:495,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:495,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:496,10'
              BranchSideFuncs:
                - i_panic
                - i_panic
      Callsites:
        - Src:             'settings-parser.c:486,7'
          Dst:             settings_find_key
        - Src:             'settings-parser.c:490,3'
          Dst:             i_panic
        - Src:             'settings-parser.c:495,3'
          Dst:             i_panic
    - functionName:    settings_parse_keyidx_value_nodup
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      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:476,9'
          Dst:             settings_parse
    - functionName:    settings_parse
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 404
      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:         68
      ICount:          453
      EdgeCount:       81
      CyclomaticComplexity: 15
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - get_bool
        - get_enum
        - get_in_port_zero
        - get_octal
        - get_uint
        - i_panic
        - i_unreached
        - p_free_internal
        - p_strconcat
        - p_strdup
        - settings_parse_strlist
        - settings_parser_set_error
        - settings_section_unescape
        - str_array_length
        - str_parse_get_interval
        - str_parse_get_interval_msecs
        - str_parse_get_size
        - t_strdup_printf
        - t_strsplit
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings-parser.c:307,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:308,3'
              BranchSideFuncs:
                - i_unreached
                - t_strdup_printf
                - settings_parser_set_error
                - t_strsplit
                - str_array_length
                - array_is_created_i.3818
                - array_create_i.3822
                - settings_section_unescape
                - p_strdup
                - array_append_i.3825
                - settings_parse_strlist
                - get_enum
                - i_panic
                - p_strconcat
                - p_strdup
                - get_in_port_zero
                - str_parse_get_size
                - settings_parser_set_error
                - str_parse_get_interval_msecs
                - settings_parser_set_error
                - str_parse_get_interval
                - settings_parser_set_error
                - get_octal
                - get_uint
                - get_bool
                - i_panic
            - BranchSide:      'settings-parser.c:312,15'
              BranchSideFuncs:
                - i_unreached
                - t_strdup_printf
                - settings_parser_set_error
                - t_strsplit
                - str_array_length
                - array_is_created_i.3818
                - array_create_i.3822
                - settings_section_unescape
                - p_strdup
                - array_append_i.3825
                - settings_parse_strlist
                - get_enum
                - i_panic
                - p_strconcat
                - p_strdup
                - get_in_port_zero
                - str_parse_get_size
                - settings_parser_set_error
                - str_parse_get_interval_msecs
                - settings_parser_set_error
                - str_parse_get_interval
                - settings_parser_set_error
                - get_octal
                - get_uint
                - get_bool
        - Branch String:   'settings-parser.c:308,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:308,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:309,6'
              BranchSideFuncs:
                - i_unreached
                - t_strdup_printf
                - settings_parser_set_error
                - t_strsplit
                - str_array_length
                - array_is_created_i.3818
                - array_create_i.3822
                - settings_section_unescape
                - p_strdup
                - array_append_i.3825
                - settings_parse_strlist
                - get_enum
                - i_panic
                - p_strconcat
                - p_strdup
                - get_in_port_zero
                - str_parse_get_size
                - settings_parser_set_error
                - str_parse_get_interval_msecs
                - settings_parser_set_error
                - str_parse_get_interval
                - settings_parser_set_error
                - get_octal
                - get_uint
                - get_bool
                - i_panic
        - Branch String:   'settings-parser.c:312,15'
          Branch Sides:
            - BranchSide:      'settings-parser.c:312,13'
              BranchSideFuncs:
                - i_unreached
                - t_strdup_printf
                - settings_parser_set_error
                - t_strsplit
                - str_array_length
                - array_is_created_i.3818
                - array_create_i.3822
                - settings_section_unescape
                - p_strdup
                - array_append_i.3825
                - settings_parse_strlist
                - get_enum
                - i_panic
                - p_strconcat
                - p_strdup
                - get_in_port_zero
                - str_parse_get_size
                - settings_parser_set_error
                - str_parse_get_interval_msecs
                - settings_parser_set_error
                - str_parse_get_interval
                - settings_parser_set_error
                - get_octal
                - get_uint
                - get_bool
            - BranchSide:      'settings-parser.c:313,3'
              BranchSideFuncs:
                - i_unreached
                - t_strdup_printf
                - settings_parser_set_error
                - t_strsplit
                - str_array_length
                - array_is_created_i.3818
                - array_create_i.3822
                - settings_section_unescape
                - p_strdup
                - array_append_i.3825
                - settings_parse_strlist
                - get_enum
                - i_panic
                - p_strconcat
                - p_strdup
                - get_in_port_zero
                - str_parse_get_size
                - settings_parser_set_error
                - str_parse_get_interval_msecs
                - settings_parser_set_error
                - str_parse_get_interval
                - settings_parser_set_error
                - get_octal
                - get_uint
                - get_bool
        - Branch String:   'settings-parser.c:316,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:318,16'
              BranchSideFuncs:
                - get_bool
            - BranchSide:      'settings-parser.c:322,16'
              BranchSideFuncs:
                - get_uint
            - BranchSide:      'settings-parser.c:326,17'
              BranchSideFuncs:
                - get_octal
            - BranchSide:      'settings-parser.c:330,30'
              BranchSideFuncs:
                - str_parse_get_interval
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:336,36'
              BranchSideFuncs:
                - str_parse_get_interval_msecs
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:342,26'
              BranchSideFuncs:
                - str_parse_get_size
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:348,24'
              BranchSideFuncs:
                - get_in_port_zero
            - BranchSide:      'settings-parser.c:352,7'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:357,33'
              BranchSideFuncs:
                - p_strconcat
            - BranchSide:      'settings-parser.c:365,3'
              BranchSideFuncs:
                - get_enum
                - i_panic
            - BranchSide:      'settings-parser.c:372,26'
              BranchSideFuncs:
                - settings_parse_strlist
            - BranchSide:      'settings-parser.c:378,35'
              BranchSideFuncs:
                - t_strsplit
                - str_array_length
                - array_is_created_i.3818
                - array_create_i.3822
                - settings_section_unescape
                - p_strdup
                - array_append_i.3825
            - BranchSide:      'settings-parser.c:391,29'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:395,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'settings-parser.c:398,6'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:318,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:319,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:320,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:322,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:323,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:324,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:326,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:327,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:328,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:330,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:331,30'
              BranchSideFuncs:
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:334,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:336,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:337,30'
              BranchSideFuncs:
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:340,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:342,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:343,30'
              BranchSideFuncs:
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:346,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:348,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:349,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:350,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:352,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:353,21'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:354,27'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:365,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:365,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:366,10'
              BranchSideFuncs:
                - get_enum
        - Branch String:   'settings-parser.c:367,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:369,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:370,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:381,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:382,4'
              BranchSideFuncs:
                - settings_section_unescape
                - p_strdup
                - array_append_i.3825
            - BranchSide:      'settings-parser.c:383,10'
              BranchSideFuncs:
                - settings_section_unescape
                - p_strdup
                - array_append_i.3825
        - Branch String:   'settings-parser.c:383,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:384,33'
              BranchSideFuncs:
                - settings_section_unescape
                - p_strdup
                - array_append_i.3825
            - BranchSide:      'settings-parser.c:388,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:398,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:399,26'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:403,2'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:400,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:401,19'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:402,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:305,2'
          Dst:             p_free_internal
        - Src:             'settings-parser.c:308,3'
          Dst:             i_panic
        - Src:             'settings-parser.c:318,7'
          Dst:             get_bool
        - Src:             'settings-parser.c:322,7'
          Dst:             get_uint
        - Src:             'settings-parser.c:326,7'
          Dst:             get_octal
        - Src:             'settings-parser.c:330,7'
          Dst:             str_parse_get_interval
        - Src:             'settings-parser.c:331,4'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:336,7'
          Dst:             str_parse_get_interval_msecs
        - Src:             'settings-parser.c:337,4'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:342,7'
          Dst:             str_parse_get_size
        - Src:             'settings-parser.c:343,4'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:348,7'
          Dst:             get_in_port_zero
        - Src:             'settings-parser.c:353,12'
          Dst:             p_strdup
        - Src:             'settings-parser.c:357,21'
          Dst:             p_strconcat
        - Src:             'settings-parser.c:365,3'
          Dst:             i_panic
        - Src:             'settings-parser.c:367,7'
          Dst:             get_enum
        - Src:             'settings-parser.c:372,3'
          Dst:             settings_parse_strlist
        - Src:             'settings-parser.c:379,29'
          Dst:             t_strsplit
        - Src:             'settings-parser.c:380,27'
          Dst:             str_array_length
        - Src:             'settings-parser.c:381,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:382,4'
          Dst:             array_create_i
        - Src:             'settings-parser.c:385,5'
          Dst:             settings_section_unescape
        - Src:             'settings-parser.c:384,24'
          Dst:             p_strdup
        - Src:             'settings-parser.c:386,4'
          Dst:             array_append_i
        - Src:             'settings-parser.c:391,34'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:391,3'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:395,3'
          Dst:             i_unreached
    - functionName:    settings_parse_keyvalue_nodup
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 469
      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:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:469,9'
          Dst:             settings_parse_keyvalue_real
    - functionName:    settings_parse_keyvalue_real
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 450
      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:441,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:442,29'
              BranchSideFuncs:
                - settings_parse
            - BranchSide:      'settings-parser.c:447,21'
              BranchSideFuncs:
                - settings_parse
        - Branch String:   'settings-parser.c:447,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:448,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:449,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:441,7'
          Dst:             settings_find_key
        - Src:             'settings-parser.c:443,4'
          Dst:             t_strconcat
        - Src:             'settings-parser.c:442,3'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:447,6'
          Dst:             settings_parse
    - functionName:    settings_parse_keyidx_value
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      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:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:462,9'
          Dst:             settings_parse
    - functionName:    settings_parse_keyvalue
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 455
      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:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:455,9'
          Dst:             settings_parse_keyvalue_real
    - functionName:    settings_parser_get_error
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_get_changes
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_get_set
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 152
      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:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    settings_parser_unref
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 148
      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:    3
      BranchProfiles:
        - Branch String:   'settings-parser.c:138,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:139,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:140,3'
              BranchSideFuncs:
                - p_free_internal.3830
                - pool_unref.3895
                - pool_unref.3895
                - i_panic
        - Branch String:   'settings-parser.c:142,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:142,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:143,8'
              BranchSideFuncs:
                - p_free_internal.3830
                - pool_unref.3895
                - pool_unref.3895
        - Branch String:   'settings-parser.c:143,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:144,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:145,2'
              BranchSideFuncs:
                - p_free_internal.3830
                - pool_unref.3895
                - pool_unref.3895
      Callsites:
        - Src:             'settings-parser.c:142,2'
          Dst:             i_panic
        - Src:             'settings-parser.c:145,2'
          Dst:             p_free_internal
        - Src:             'settings-parser.c:146,2'
          Dst:             pool_unref
        - Src:             'settings-parser.c:147,2'
          Dst:             pool_unref
    - functionName:    settings_parser_ref
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 132
      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:130,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:130,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:130,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:130,2'
          Dst:             i_panic
    - functionName:    setting_parser_fill_defaults_strings
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         12
      ICount:          87
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - settings_parse_keyvalue_nodup
        - settings_parser_get_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:83,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:84,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:86,20'
              BranchSideFuncs:
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - i_panic
        - Branch String:   'settings-parser.c:86,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:86,2'
              BranchSideFuncs:
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - i_panic
            - BranchSide:      'settings-parser.c:87,21'
              BranchSideFuncs:
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - i_panic
        - Branch String:   'settings-parser.c:89,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:91,5'
              BranchSideFuncs:
                - settings_parser_get_error
                - i_panic
            - BranchSide:      'settings-parser.c:93,2'
              BranchSideFuncs:
                - settings_parse_keyvalue_nodup
                - settings_parser_get_error
                - i_panic
      Callsites:
        - Src:             'settings-parser.c:89,7'
          Dst:             settings_parse_keyvalue_nodup
        - Src:             'settings-parser.c:91,17'
          Dst:             settings_parser_get_error
        - Src:             'settings-parser.c:90,4'
          Dst:             i_panic
    - functionName:    setting_parser_copy_defaults
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - info
      BBCount:         20
      ICount:          136
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - p_strconcat
        - p_strdup_until
        - strchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:48,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:49,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:51,2'
              BranchSideFuncs:
                - i_memcpy.3834
                - p_strconcat
                - strchr
                - p_strdup_until
        - Branch String:   'settings-parser.c:52,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:52,2'
              BranchSideFuncs:
                - p_strconcat
                - strchr
                - p_strdup_until
            - BranchSide:      'settings-parser.c:53,11'
              BranchSideFuncs:
                - p_strconcat
                - strchr
                - p_strdup_until
        - Branch String:   'settings-parser.c:53,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:57,11'
              BranchSideFuncs:
                - strchr
                - p_strconcat
                - p_strdup_until
            - BranchSide:      'settings-parser.c:65,11'
              BranchSideFuncs:
                - strchr
                - p_strdup_until
                - p_strconcat
            - BranchSide:      'settings-parser.c:74,4'
              BranchSideFuncs:
                - p_strconcat
                - strchr
                - p_strdup_until
        - Branch String:   'settings-parser.c:59,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:60,28'
              BranchSideFuncs:
                - p_strdup_until
                - p_strconcat
                - strchr
            - BranchSide:      'settings-parser.c:61,4'
              BranchSideFuncs:
                - p_strconcat
                - strchr
                - p_strdup_until
        - Branch String:   'settings-parser.c:66,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:67,25'
              BranchSideFuncs:
                - p_strconcat
                - strchr
                - p_strdup_until
            - BranchSide:      'settings-parser.c:71,4'
              BranchSideFuncs:
                - p_strconcat
                - strchr
                - p_strdup_until
      Callsites:
        - Src:             'settings-parser.c:51,2'
          Dst:             i_memcpy
        - Src:             'settings-parser.c:58,8'
          Dst:             strchr
        - Src:             'settings-parser.c:60,13'
          Dst:             p_strdup_until
        - Src:             'settings-parser.c:67,13'
          Dst:             p_strconcat
    - functionName:    settings_parser_init
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - set_pool
        - root
        - flags
      BBCount:         9
      ICount:          107
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
        - pool_ref
        - setting_parser_copy_defaults
        - setting_parser_fill_defaults_strings
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:112,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:112,6'
              BranchSideFuncs:
                - p_malloc.3851
                - setting_parser_copy_defaults
                - setting_parser_fill_defaults_strings
                - pool_ref.3854
                - p_malloc.3851
            - BranchSide:      'settings-parser.c:114,13'
              BranchSideFuncs:
                - p_malloc.3851
                - setting_parser_copy_defaults
                - setting_parser_fill_defaults_strings
                - pool_ref.3854
                - p_malloc.3851
        - Branch String:   'settings-parser.c:115,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:116,4'
              BranchSideFuncs:
                - p_malloc.3851
                - setting_parser_copy_defaults
                - setting_parser_fill_defaults_strings
                - pool_ref.3854
            - BranchSide:      'settings-parser.c:120,32'
              BranchSideFuncs:
                - setting_parser_copy_defaults
                - setting_parser_fill_defaults_strings
                - pool_ref.3854
      Callsites:
        - Src:             'settings-parser.c:103,16'
          Dst:             pool_alloconly_create
        - Src:             'settings-parser.c:105,8'
          Dst:             malloc_multiply_check
        - Src:             'settings-parser.c:105,8'
          Dst:             p_malloc
        - Src:             'settings-parser.c:114,4'
          Dst:             p_malloc
        - Src:             'settings-parser.c:118,5'
          Dst:             p_malloc
        - Src:             'settings-parser.c:120,3'
          Dst:             setting_parser_copy_defaults
        - Src:             'settings-parser.c:121,3'
          Dst:             setting_parser_fill_defaults_strings
        - Src:             'settings-parser.c:124,2'
          Dst:             pool_ref
    - 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:    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_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:    3
      BranchProfiles:
        - Branch String:   'array.c:159,2'
          Branch Sides:
            - BranchSide:      'array.c:160,7'
              BranchSideFuncs:
                - array_count_i.3967
            - 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.3967
      Callsites:
        - Src:             'array.c:159,22'
          Dst:             array_count_i
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - 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:    1
      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:    4
      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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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.3972
                - i_memcpy.3972
                - i_memcpy.3972
            - 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.3977
                - array_count_i.3967
                - array_count_i.3967
                - i_panic
                - array_is_created_i.3977
            - BranchSide:      'array.c:92,30'
              BranchSideFuncs:
                - array_is_created_i.3977
        - Branch String:   'array.c:91,6'
          Branch Sides:
            - BranchSide:      'array.c:92,30'
              BranchSideFuncs:
                - array_is_created_i.3977
            - BranchSide:      'array.c:94,26'
              BranchSideFuncs:
                - array_is_created_i.3977
                - array_count_i.3967
                - array_count_i.3967
                - 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.3967
                - array_count_i.3967
                - i_panic
            - BranchSide:      'array.c:97,25'
              BranchSideFuncs:
                - array_count_i.3967
                - array_count_i.3967
                - 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: 172
      functionLinenumberEnd: 173
      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.3977
                - array_count_i.3967
                - array_count_i.3967
                - i_panic
                - array_is_created_i.3977
            - BranchSide:      'array.c:64,30'
              BranchSideFuncs:
                - array_is_created_i.3977
        - Branch String:   'array.c:63,6'
          Branch Sides:
            - BranchSide:      'array.c:64,30'
              BranchSideFuncs:
                - array_is_created_i.3977
            - BranchSide:      'array.c:66,26'
              BranchSideFuncs:
                - array_is_created_i.3977
                - array_count_i.3967
                - array_count_i.3967
                - 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.3967
                - array_count_i.3967
                - i_panic
            - BranchSide:      'array.c:69,25'
              BranchSideFuncs:
                - array_count_i.3967
                - array_count_i.3967
                - 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.3977
                - buffer_cmp
                - array_is_created_i.3977
            - BranchSide:      'array.c:49,30'
              BranchSideFuncs:
                - array_is_created_i.3977
        - Branch String:   'array.c:48,6'
          Branch Sides:
            - BranchSide:      'array.c:49,30'
              BranchSideFuncs:
                - array_is_created_i.3977
            - BranchSide:      'array.c:51,26'
              BranchSideFuncs:
                - array_is_created_i.3977
                - 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:    2
      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:    0
      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:    3
      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:    3
      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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
            - BranchSide:      'base64.c:489,3'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:499,3'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
        - Branch String:   'base64.c:492,7'
          Branch Sides:
            - BranchSide:      'base64.c:493,4'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
            - BranchSide:      'base64.c:497,3'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
        - Branch String:   'base64.c:502,7'
          Branch Sides:
            - BranchSide:      'base64.c:503,4'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
            - BranchSide:      'base64.c:506,3'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
        - Branch String:   'base64.c:513,6'
          Branch Sides:
            - BranchSide:      'base64.c:514,13'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
            - BranchSide:      'base64.c:515,6'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
        - Branch String:   'base64.c:515,35'
          Branch Sides:
            - BranchSide:      'base64.c:515,38'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
            - BranchSide:      'base64.c:521,16'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
        - Branch String:   'base64.c:515,6'
          Branch Sides:
            - BranchSide:      'base64.c:518,11'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
            - BranchSide:      'base64.c:521,16'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
        - Branch String:   'base64.c:518,11'
          Branch Sides:
            - BranchSide:      'base64.c:524,6'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
            - BranchSide:      'base64.c:524,6'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_memcpy.4047
        - Branch String:   'base64.c:530,6'
          Branch Sides:
            - BranchSide:      'base64.c:531,16'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
            - BranchSide:      'base64.c:533,35'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
        - Branch String:   'base64.c:535,6'
          Branch Sides:
            - BranchSide:      'base64.c:536,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
            - BranchSide:      'base64.c:541,6'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
        - Branch String:   'base64.c:541,6'
          Branch Sides:
            - BranchSide:      'base64.c:542,16'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
            - BranchSide:      'base64.c:543,6'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
        - Branch String:   'base64.c:543,6'
          Branch Sides:
            - BranchSide:      'base64.c:544,3'
              BranchSideFuncs:
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_panic
            - BranchSide:      'base64.c:548,2'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_panic
        - Branch String:   'base64.c:548,19'
          Branch Sides:
            - BranchSide:      'base64.c:548,22'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_panic
            - BranchSide:      'base64.c:548,2'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_panic
        - Branch String:   'base64.c:548,2'
          Branch Sides:
            - BranchSide:      'base64.c:549,3'
              BranchSideFuncs:
                - i_memcpy.4047
                - 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.4047
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:558,3'
              BranchSideFuncs:
                - i_memcpy.4047
                - 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.4047
                - 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.4047
                - i_panic
                - i_panic
        - Branch String:   'base64.c:563,11'
          Branch Sides:
            - BranchSide:      'base64.c:563,9'
              BranchSideFuncs:
                - i_memcpy.4047
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:563,9'
              BranchSideFuncs:
                - i_memcpy.4047
                - i_panic
                - i_panic
        - Branch String:   'base64.c:564,11'
          Branch Sides:
            - BranchSide:      'base64.c:564,9'
              BranchSideFuncs:
                - i_memcpy.4047
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:564,9'
              BranchSideFuncs:
                - i_memcpy.4047
                - 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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - 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.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
        - Branch String:   'base64.c:238,6'
          Branch Sides:
            - BranchSide:      'base64.c:239,14'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
            - BranchSide:      'base64.c:241,37'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - 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.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
        - Branch String:   'base64.c:247,6'
          Branch Sides:
            - BranchSide:      'base64.c:248,3'
              BranchSideFuncs:
                - i_memcpy.4047
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:252,13'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4047
        - Branch String:   'base64.c:257,6'
          Branch Sides:
            - BranchSide:      'base64.c:258,4'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:261,2'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - 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.4047
                - i_memcpy.4047
                - 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.4047
                - i_memcpy.4047
                - 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.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:270,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:282,12'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - 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.4047
                - i_memcpy.4047
                - 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.4047
                - i_memcpy.4047
                - 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.4047
                - i_memcpy.4047
                - 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.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:310,2'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
        - Branch String:   'base64.c:310,2'
          Branch Sides:
            - BranchSide:      'base64.c:312,12'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:322,10'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
        - Branch String:   'base64.c:322,2'
          Branch Sides:
            - BranchSide:      'base64.c:324,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:328,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:335,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:345,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
                - i_memcpy.4047
                - 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.4047
                - i_memcpy.4047
                - 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.4047
                - i_memcpy.4047
        - Branch String:   'base64.c:361,6'
          Branch Sides:
            - BranchSide:      'base64.c:362,3'
              BranchSideFuncs:
                - i_memcpy.4047
                - i_panic
            - BranchSide:      'base64.c:366,13'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4047
        - 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:    0
      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: 154
      functionLinenumberEnd: 155
      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:    20
      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: 117
      functionLinenumberEnd: 126
      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: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:120,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:122,6'
              BranchSideFuncs: []
        - Branch String:   './mempool.h:122,6'
          Branch Sides:
            - BranchSide:      './mempool.h:123,10'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:125,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,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.4161
                - i_panic
            - BranchSide:      'buffer.c:476,24'
              BranchSideFuncs: []
        - Branch String:   'buffer.c:476,53'
          Branch Sides:
            - BranchSide:      'buffer.c:476,56'
              BranchSideFuncs:
                - p_realloc.4161
                - i_panic
            - BranchSide:      'buffer.c:476,53'
              BranchSideFuncs: []
        - Branch String:   'buffer.c:476,6'
          Branch Sides:
            - BranchSide:      'buffer.c:476,6'
              BranchSideFuncs:
                - p_realloc.4161
                - i_panic
            - BranchSide:      'buffer.c:479,19'
              BranchSideFuncs:
                - p_realloc.4161
                - 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: 116
      functionLinenumberEnd: 118
      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:117,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:    18
      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:    6
      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.4152
                - 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.4152
                - i_panic
            - BranchSide:      'buffer.c:74,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4152
                - 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.4152
                - i_panic
            - BranchSide:      'buffer.c:74,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4152
                - 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.4152
                - i_panic
            - BranchSide:      'buffer.c:65,16'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4152
                - 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.4152
                - i_panic
            - BranchSide:      'buffer.c:65,10'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4152
                - 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.4152
                - i_panic
            - BranchSide:      'buffer.c:65,10'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4152
                - 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.4152
                - 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.4152
                - 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.4152
                - 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.4161
                - p_malloc.4182
                - i_panic
                - i_panic
            - BranchSide:      'buffer.c:35,2'
              BranchSideFuncs:
                - p_realloc.4161
                - p_malloc.4182
                - 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.4161
                - p_malloc.4182
                - i_panic
        - Branch String:   'buffer.c:37,6'
          Branch Sides:
            - BranchSide:      'buffer.c:38,3'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:40,2'
              BranchSideFuncs:
                - p_realloc.4161
                - p_malloc.4182
                - 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.4161
                - p_malloc.4182
        - Branch String:   'buffer.c:42,6'
          Branch Sides:
            - BranchSide:      'buffer.c:43,28'
              BranchSideFuncs:
                - p_malloc.4182
            - BranchSide:      'buffer.c:45,29'
              BranchSideFuncs:
                - p_realloc.4161
      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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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:    7
      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:    11
      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:    40
      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:    74
      BranchProfiles:
        - Branch String:   'buffer.c:237,6'
          Branch Sides:
            - BranchSide:      'buffer.c:237,6'
              BranchSideFuncs:
                - buffer_check_append_limits
            - BranchSide:      'buffer.c:238,10'
              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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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.4206
                - p_free_internal.4206
        - Branch String:   'buffer.c:197,6'
          Branch Sides:
            - BranchSide:      'buffer.c:198,3'
              BranchSideFuncs:
                - p_free_internal.4206
                - p_free_internal.4206
            - BranchSide:      'buffer.c:199,6'
              BranchSideFuncs:
                - p_free_internal.4206
        - Branch String:   'buffer.c:199,6'
          Branch Sides:
            - BranchSide:      'buffer.c:199,6'
              BranchSideFuncs:
                - p_free_internal.4206
            - BranchSide:      'buffer.c:200,3'
              BranchSideFuncs:
                - p_free_internal.4206
      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:    27
      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:    7
      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.4341
                - str_append_c.4343
                - str_c
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_append.4341
                - str_append_c.4343
                - str_append.4341
            - BranchSide:      'connection.c:390,14'
              BranchSideFuncs:
                - str_append.4341
                - str_append_c.4343
                - str_c
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_append.4341
                - str_append_c.4343
                - str_append.4341
        - Branch String:   'connection.c:389,35'
          Branch Sides:
            - BranchSide:      'connection.c:389,38'
              BranchSideFuncs:
                - str_append_c.4343
                - str_c
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_append.4341
                - str_append_c.4343
                - str_append.4341
                - str_append.4341
            - BranchSide:      'connection.c:391,6'
              BranchSideFuncs:
                - str_append_c.4343
                - str_c
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_append.4341
                - str_append_c.4343
                - str_append.4341
        - Branch String:   'connection.c:388,6'
          Branch Sides:
            - BranchSide:      'connection.c:390,14'
              BranchSideFuncs:
                - str_append.4341
                - str_append_c.4343
                - str_c
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_append.4341
                - str_append_c.4343
                - str_append.4341
            - BranchSide:      'connection.c:391,6'
              BranchSideFuncs:
                - str_append_c.4343
                - str_c
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_append.4341
                - str_append_c.4343
                - str_append.4341
        - Branch String:   'connection.c:391,6'
          Branch Sides:
            - BranchSide:      'connection.c:392,3'
              BranchSideFuncs:
                - str_append_c.4343
                - str_append.4341
                - str_append_c.4343
                - str_c
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
            - BranchSide:      'connection.c:394,13'
              BranchSideFuncs:
                - str_append_c.4343
                - str_c
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_append.4341
        - Branch String:   'connection.c:394,13'
          Branch Sides:
            - BranchSide:      'connection.c:395,3'
              BranchSideFuncs:
                - str_append_c.4343
                - str_append.4341
                - str_append_c.4343
                - str_c
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
            - BranchSide:      'connection.c:397,13'
              BranchSideFuncs:
                - str_append_c.4343
                - str_c
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_printfa
        - Branch String:   'connection.c:400,6'
          Branch Sides:
            - BranchSide:      'connection.c:400,6'
              BranchSideFuncs:
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_c
                - str_append_c.4343
            - BranchSide:      'connection.c:401,15'
              BranchSideFuncs:
                - str_len.4345
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_c
                - str_append_c.4343
        - Branch String:   'connection.c:401,7'
          Branch Sides:
            - BranchSide:      'connection.c:402,4'
              BranchSideFuncs:
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - str_c
            - BranchSide:      'connection.c:404,4'
              BranchSideFuncs:
                - str_append_c.4343
                - str_printfa
                - str_append_c.4343
                - 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_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:    4
      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
        - 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:    6
      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: 1087
      functionLinenumberEnd: 1102
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         36
      ICount:          184
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - strstr
      functionUses:    2
      BranchProfiles:
        - Branch String:   'connection.c:1089,6'
          Branch Sides:
            - BranchSide:      'connection.c:1090,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1091,13'
              BranchSideFuncs:
                - strstr
        - Branch String:   'connection.c:1091,6'
          Branch Sides:
            - BranchSide:      'connection.c:1092,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1093,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1093,2'
          Branch Sides:
            - BranchSide:      'connection.c:1094,9'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1101,9'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1094,17'
          Branch Sides:
            - BranchSide:      'connection.c:1094,21'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1095,9'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1094,30'
          Branch Sides:
            - BranchSide:      'connection.c:1095,9'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1100,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1095,17'
          Branch Sides:
            - BranchSide:      'connection.c:1095,21'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1096,9'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1095,30'
          Branch Sides:
            - BranchSide:      'connection.c:1096,9'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1100,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1096,17'
          Branch Sides:
            - BranchSide:      'connection.c:1096,21'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1097,8'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1096,30'
          Branch Sides:
            - BranchSide:      'connection.c:1097,8'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1100,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1097,17'
          Branch Sides:
            - BranchSide:      'connection.c:1097,21'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1100,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1097,30'
          Branch Sides:
            - BranchSide:      'connection.c:1098,8'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1100,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1098,17'
          Branch Sides:
            - BranchSide:      'connection.c:1098,21'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1100,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1094,7'
          Branch Sides:
            - BranchSide:      'connection.c:1099,4'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1100,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:1091,6'
          Dst:             strstr
    - functionName:    connection_list_deinit
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1072
      functionLinenumberEnd: 1084
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _list
      BBCount:         12
      ICount:          67
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - connection_closed
        - i_panic
        - p_free_internal
      functionUses:    3
      BranchProfiles:
        - Branch String:   'connection.c:1078,2'
          Branch Sides:
            - BranchSide:      'connection.c:1079,10'
              BranchSideFuncs:
                - connection_closed
                - p_free_internal.4364
                - i_panic
            - BranchSide:      'connection.c:1083,2'
              BranchSideFuncs:
                - p_free_internal.4364
        - Branch String:   'connection.c:1081,3'
          Branch Sides:
            - BranchSide:      'connection.c:1078,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:1081,3'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'connection.c:1080,3'
          Dst:             connection_closed
        - Src:             'connection.c:1081,3'
          Dst:             i_panic
        - Src:             'connection.c:1083,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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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:    3
      BranchProfiles:
        - Branch String:   'connection.c:1057,2'
          Branch Sides:
            - BranchSide:      'connection.c:1057,2'
              BranchSideFuncs:
                - malloc_multiply_check.4365
                - p_malloc.4367
                - i_panic
                - i_panic
            - BranchSide:      'connection.c:1057,2'
              BranchSideFuncs:
                - malloc_multiply_check.4365
                - p_malloc.4367
                - 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.4365
                - p_malloc.4367
                - i_panic
        - Branch String:   'connection.c:1059,2'
          Branch Sides:
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4365
                - p_malloc.4367
                - i_panic
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4365
                - p_malloc.4367
                - i_panic
        - Branch String:   'connection.c:1059,2'
          Branch Sides:
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4365
                - p_malloc.4367
                - i_panic
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4365
                - p_malloc.4367
                - i_panic
        - Branch String:   'connection.c:1059,2'
          Branch Sides:
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4365
                - p_malloc.4367
                - i_panic
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4365
                - p_malloc.4367
                - 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.4365
                - p_malloc.4367
      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:    4
      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:    2
      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:988,13'
              BranchSideFuncs:
                - timeval_diff_msecs.4391
                - t_strdup_printf
            - BranchSide:      'connection.c:992,13'
              BranchSideFuncs:
                - timeval_diff_msecs.4391
                - t_strdup_printf
                - timeval_diff_msecs.4391
                - t_strdup_printf
        - Branch String:   'connection.c:992,13'
          Branch Sides:
            - BranchSide:      'connection.c:993,13'
              BranchSideFuncs:
                - timeval_diff_msecs.4391
                - t_strdup_printf
            - BranchSide:      'connection.c:999,13'
              BranchSideFuncs:
                - timeval_diff_msecs.4391
                - 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:    3
      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.4364
                - p_free_internal.4364
                - p_free_internal.4364
                - event_unref
        - Branch String:   'connection.c:906,2'
          Branch Sides:
            - BranchSide:      'connection.c:906,2'
              BranchSideFuncs:
                - connection_disconnect
                - p_free_internal.4364
                - p_free_internal.4364
                - p_free_internal.4364
                - event_unref
            - BranchSide:      'connection.c:906,2'
              BranchSideFuncs:
                - connection_disconnect
                - p_free_internal.4364
                - p_free_internal.4364
                - p_free_internal.4364
                - event_unref
        - Branch String:   'connection.c:906,2'
          Branch Sides:
            - BranchSide:      'connection.c:906,2'
              BranchSideFuncs:
                - connection_disconnect
                - p_free_internal.4364
                - p_free_internal.4364
                - p_free_internal.4364
                - event_unref
            - BranchSide:      'connection.c:908,24'
              BranchSideFuncs:
                - connection_disconnect
                - p_free_internal.4364
                - p_free_internal.4364
                - p_free_internal.4364
                - 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
        - 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:    3
      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:964,16'
              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:    2
      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
        - 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
        - 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
        - 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:
        - 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.4364
                - 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.4364
                - 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.4364
                - 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.4364
                - 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.4364
                - 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.4364
                - 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.4364
                - 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.4364
                - 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.4364
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
            - BranchSide:      'connection.c:330,2'
              BranchSideFuncs:
                - p_free_internal.4364
                - 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.4364
                - 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.4364
                - i_strdup
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'connection.c:336,2'
              BranchSideFuncs:
                - p_free_internal.4364
                - 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.4364
                - i_strdup
                - e_debug
            - BranchSide:      'connection.c:336,2'
              BranchSideFuncs:
                - p_free_internal.4364
                - i_strdup
        - Branch String:   'connection.c:333,3'
          Branch Sides:
            - BranchSide:      'connection.c:333,3'
              BranchSideFuncs:
                - e_debug
                - p_free_internal.4364
                - i_strdup
            - BranchSide:      'connection.c:333,3'
              BranchSideFuncs:
                - event_send_abort
                - p_free_internal.4364
                - 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.4345
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4345
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_append.4341
            - BranchSide:      'connection.c:343,4'
              BranchSideFuncs:
                - t_str_new
                - str_len.4345
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4345
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_append.4341
        - Branch String:   'connection.c:343,32'
          Branch Sides:
            - BranchSide:      'connection.c:342,39'
              BranchSideFuncs:
                - t_str_new
                - str_len.4345
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4345
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_append.4341
            - BranchSide:      'connection.c:343,35'
              BranchSideFuncs:
                - t_str_new
                - str_len.4345
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4345
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_append.4341
        - Branch String:   'connection.c:347,6'
          Branch Sides:
            - BranchSide:      'connection.c:348,14'
              BranchSideFuncs:
                - str_append.4341
                - str_len.4345
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4345
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_append.4341
            - BranchSide:      'connection.c:349,6'
              BranchSideFuncs:
                - str_len.4345
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4345
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_append.4341
        - Branch String:   'connection.c:349,6'
          Branch Sides:
            - BranchSide:      'connection.c:350,15'
              BranchSideFuncs:
                - str_len.4345
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_len.4345
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
                - str_append.4341
            - BranchSide:      'connection.c:358,14'
              BranchSideFuncs:
                - str_len.4345
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
        - Branch String:   'connection.c:350,7'
          Branch Sides:
            - BranchSide:      'connection.c:351,15'
              BranchSideFuncs:
                - str_append.4341
                - str_len.4345
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
            - BranchSide:      'connection.c:353,15'
              BranchSideFuncs:
                - str_append.4341
                - str_append.4341
                - str_append.4341
                - str_len.4345
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
        - Branch String:   'connection.c:358,6'
          Branch Sides:
            - BranchSide:      'connection.c:359,7'
              BranchSideFuncs:
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
            - BranchSide:      'connection.c:369,6'
              BranchSideFuncs:
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
        - Branch String:   'connection.c:359,24'
          Branch Sides:
            - BranchSide:      'connection.c:360,8'
              BranchSideFuncs:
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
                - str_printfa
            - BranchSide:      'connection.c:362,12'
              BranchSideFuncs:
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
        - Branch String:   'connection.c:360,36'
          Branch Sides:
            - BranchSide:      'connection.c:360,39'
              BranchSideFuncs:
                - str_printfa
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
            - BranchSide:      'connection.c:361,16'
              BranchSideFuncs:
                - str_printfa
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
        - Branch String:   'connection.c:359,7'
          Branch Sides:
            - BranchSide:      'connection.c:361,16'
              BranchSideFuncs:
                - str_printfa
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
            - BranchSide:      'connection.c:362,12'
              BranchSideFuncs:
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
        - Branch String:   'connection.c:362,28'
          Branch Sides:
            - BranchSide:      'connection.c:362,31'
              BranchSideFuncs:
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
                - str_printfa
            - BranchSide:      'connection.c:364,12'
              BranchSideFuncs:
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
        - Branch String:   'connection.c:362,12'
          Branch Sides:
            - BranchSide:      'connection.c:363,16'
              BranchSideFuncs:
                - str_printfa
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
            - BranchSide:      'connection.c:364,12'
              BranchSideFuncs:
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_len.4345
                - str_insert.4347
                - str_printfa
        - Branch String:   'connection.c:369,18'
          Branch Sides:
            - BranchSide:      'connection.c:369,29'
              BranchSideFuncs:
                - str_len.4345
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
                - str_insert.4347
            - BranchSide:      'connection.c:371,6'
              BranchSideFuncs:
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
        - Branch String:   'connection.c:369,6'
          Branch Sides:
            - BranchSide:      'connection.c:370,14'
              BranchSideFuncs:
                - str_insert.4347
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
            - BranchSide:      'connection.c:371,6'
              BranchSideFuncs:
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_len.4345
                - str_printfa
                - str_append_c.4343
        - Branch String:   'connection.c:371,6'
          Branch Sides:
            - BranchSide:      'connection.c:372,15'
              BranchSideFuncs:
                - str_len.4345
                - str_printfa
                - p_free_internal.4364
                - str_c
                - i_strdup
                - str_append_c.4343
            - BranchSide:      'connection.c:377,2'
              BranchSideFuncs:
                - p_free_internal.4364
                - str_c
                - i_strdup
        - Branch String:   'connection.c:372,7'
          Branch Sides:
            - BranchSide:      'connection.c:373,4'
              BranchSideFuncs:
                - str_append_c.4343
                - str_printfa
                - p_free_internal.4364
                - str_c
                - i_strdup
            - BranchSide:      'connection.c:374,15'
              BranchSideFuncs:
                - str_printfa
                - p_free_internal.4364
                - 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.4343
                - str_append.4341
                - str_append.4341
                - 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.4341
                - 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.4364
                - 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.4364
                - 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.4364
                - 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.4364
                - 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:    2
      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
        - 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
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - i_panic
      functionUses:    2
      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:    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: 448
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - last_alloc_size
      BBCount:         18
      ICount:          122
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - backtrace_get
        - data_stack_get_alloc_size
        - data_stack_get_used_size
        - event_add_int
        - event_add_str
        - event_create
        - event_send_abort
        - event_set_name
        - event_want_level
        - str_c
        - str_printfa
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'data-stack.c:400,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:403,3'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:405,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
                - 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:405,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:406,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
                - 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:407,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
                - 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:424,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:425,3'
              BranchSideFuncs:
                - backtrace_get
                - 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:431,6'
              BranchSideFuncs:
                - backtrace_get
                - 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:431,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:432,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:434,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
        - Branch String:   'data-stack.c:445,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:445,2'
              BranchSideFuncs:
                - str_c
                - e_debug
            - BranchSide:      'data-stack.c:445,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'data-stack.c:406,21'
          Dst:             event_create
        - Src:             'data-stack.c:407,2'
          Dst:             event_set_name
        - Src:             'data-stack.c:408,47'
          Dst:             data_stack_get_alloc_size
        - Src:             'data-stack.c:408,2'
          Dst:             event_add_int
        - Src:             'data-stack.c:409,46'
          Dst:             data_stack_get_used_size
        - Src:             'data-stack.c:409,2'
          Dst:             event_add_int
        - Src:             'data-stack.c:410,2'
          Dst:             event_add_int
        - Src:             'data-stack.c:411,2'
          Dst:             event_add_int
        - Src:             'data-stack.c:418,2'
          Dst:             event_add_str
        - Src:             'data-stack.c:424,7'
          Dst:             event_want_level
        - Src:             'data-stack.c:431,6'
          Dst:             backtrace_get
        - Src:             'data-stack.c:432,3'
          Dst:             event_add_str
        - Src:             'data-stack.c:434,3'
          Dst:             event_add_str
        - Src:             'data-stack.c:436,18'
          Dst:             t_str_new
        - Src:             'data-stack.c:438,7'
          Dst:             data_stack_get_used_size
        - Src:             'data-stack.c:439,7'
          Dst:             data_stack_get_alloc_size
        - Src:             'data-stack.c:437,2'
          Dst:             str_printfa
        - Src:             'data-stack.c:445,2'
          Dst:             event_want_level
        - Src:             'data-stack.c:445,2'
          Dst:             str_c
        - Src:             'data-stack.c:445,2'
          Dst:             e_debug
        - Src:             'data-stack.c:445,2'
          Dst:             event_send_abort
    - functionName:    data_stack_get_alloc_size
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 720
      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:713,22'
          Branch Sides:
            - BranchSide:      'data-stack.c:714,9'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:714,9'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'data-stack.c:716,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:716,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:718,15'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:718,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:719,11'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:720,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:716,2'
          Dst:             i_panic
    - functionName:    data_stack_get_used_size
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 732
      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:725,22'
          Branch Sides:
            - BranchSide:      'data-stack.c:726,9'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:726,9'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'data-stack.c:728,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:728,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:730,15'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:730,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:731,11'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:732,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:728,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: 771
      functionLinenumberEnd: 779
      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:772,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:772,7'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - free
                - data_stack_free_unused
            - BranchSide:      'data-stack.c:772,7'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - free
                - data_stack_free_unused
        - Branch String:   'data-stack.c:772,29'
          Branch Sides:
            - BranchSide:      'data-stack.c:773,6'
              BranchSideFuncs:
                - free
                - data_stack_free_unused
                - i_panic
            - BranchSide:      'data-stack.c:774,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'data-stack.c:772,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:774,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:776,7'
              BranchSideFuncs:
                - free
                - data_stack_free_unused
      Callsites:
        - Src:             'data-stack.c:772,7'
          Dst:             t_pop
        - Src:             'data-stack.c:774,3'
          Dst:             i_panic
        - Src:             'data-stack.c:778,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:    70
      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: 736
      functionLinenumberEnd: 739
      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:737,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:737,7'
              BranchSideFuncs:
                - free
            - BranchSide:      'data-stack.c:737,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:281,9'
          Branch Sides:
            - BranchSide:      'data-stack.c:283,6'
              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: 765
      functionLinenumberEnd: 768
      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:766,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:766,2'
              BranchSideFuncs:
                - event_unref
            - BranchSide:      'data-stack.c:766,2'
              BranchSideFuncs:
                - event_unref
      Callsites:
        - Src:             'data-stack.c:766,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.4537
                - nearest_power
                - malloc
                - mem_block_reset
                - i_panic
                - abort
            - BranchSide:      'data-stack.c:371,42'
              BranchSideFuncs:
                - malloc_add_check.4537
                - 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.4537
                - 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: 664
      functionLinenumberEnd: 667
      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:665,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:665,6'
              BranchSideFuncs:
                - t_malloc_real
            - BranchSide:      'data-stack.c:665,6'
              BranchSideFuncs:
                - t_malloc_real
        - Branch String:   'data-stack.c:665,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:665,6'
              BranchSideFuncs:
                - t_malloc_real
            - BranchSide:      'data-stack.c:666,23'
              BranchSideFuncs:
                - t_malloc_real
      Callsites:
        - Src:             'data-stack.c:666,9'
          Dst:             t_malloc_real
    - functionName:    t_malloc_real
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 540
      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:459,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:459,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:459,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:459,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:460,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:462,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:462,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:464,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:466,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:479,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:481,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:484,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:484,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:488,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:507,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:488,28'
          Branch Sides:
            - BranchSide:      'data-stack.c:488,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:494,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:488,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:489,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:494,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:513,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:514,26'
              BranchSideFuncs:
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
            - BranchSide:      'data-stack.c:516,6'
              BranchSideFuncs:
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
        - Branch String:   'data-stack.c:516,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:516,12'
              BranchSideFuncs:
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
            - BranchSide:      'data-stack.c:516,6'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:528,4'
          Branch Sides:
            - BranchSide:      'data-stack.c:528,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:528,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:460,3'
          Dst:             i_panic
        - Src:             'data-stack.c:464,3'
          Dst:             data_stack_init
        - Src:             'data-stack.c:477,2'
          Dst:             data_stack_last_buffer_reset
        - Src:             'data-stack.c:491,4'
          Dst:             mem_block_reset
        - Src:             'data-stack.c:494,12'
          Dst:             mem_block_alloc
        - Src:             'data-stack.c:507,8'
          Dst:             data_stack_after_last_alloc
        - Src:             'data-stack.c:516,12'
          Dst:             t_push
        - Src:             'data-stack.c:521,19'
          Dst:             __errno_location
        - Src:             'data-stack.c:525,3'
          Dst:             data_stack_send_grow_event
        - Src:             'data-stack.c:527,3'
          Dst:             __errno_location
        - Src:             'data-stack.c:528,4'
          Dst:             t_pop
        - Src:             'data-stack.c:528,4'
          Dst:             i_panic
    - functionName:    data_stack_init
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 762
      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:743,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:743,6'
              BranchSideFuncs:
                - mem_block_alloc
                - t_push
            - BranchSide:      'data-stack.c:743,6'
              BranchSideFuncs:
                - mem_block_alloc
                - t_push
        - Branch String:   'data-stack.c:743,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:746,3'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:748,25'
              BranchSideFuncs:
                - mem_block_alloc
                - t_push
      Callsites:
        - Src:             'data-stack.c:755,18'
          Dst:             mem_block_alloc
        - Src:             'data-stack.c:761,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:    76
      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: 627
      functionLinenumberEnd: 634
      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:630,8'
          Dst:             t_malloc_real
    - functionName:    t_buffer_alloc
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 654
      functionLinenumberEnd: 661
      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:655,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:655,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:656,2'
              BranchSideFuncs:
                - t_malloc_real
                - i_panic
                - i_panic
        - Branch String:   'data-stack.c:656,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:656,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:657,2'
              BranchSideFuncs:
                - t_malloc_real
                - i_panic
        - Branch String:   'data-stack.c:657,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:657,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:657,2'
              BranchSideFuncs:
                - t_malloc_real
      Callsites:
        - Src:             'data-stack.c:655,2'
          Dst:             i_panic
        - Src:             'data-stack.c:656,2'
          Dst:             i_panic
        - Src:             'data-stack.c:657,2'
          Dst:             i_panic
        - Src:             'data-stack.c:660,8'
          Dst:             t_malloc_real
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    t_buffer_reget
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 651
      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:643,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:644,10'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:646,28'
              BranchSideFuncs:
                - t_buffer_get
                - i_memcpy.4569
        - Branch String:   'data-stack.c:647,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:648,3'
              BranchSideFuncs:
                - i_memcpy.4569
            - BranchSide:      'data-stack.c:650,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:646,15'
          Dst:             t_buffer_get
        - Src:             'data-stack.c:648,3'
          Dst:             i_memcpy
    - functionName:    t_get_bytes_available
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 612
      functionLinenumberEnd: 623
      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:613,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:613,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:613,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'data-stack.c:622,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:622,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:622,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:622,2'
          Dst:             i_panic
    - functionName:    t_try_realloc
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 559
      functionLinenumberEnd: 609
      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:563,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:563,6'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - data_stack_after_last_alloc
                - i_panic
            - BranchSide:      'data-stack.c:563,6'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - data_stack_after_last_alloc
                - i_panic
        - Branch String:   'data-stack.c:563,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:564,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:565,2'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - data_stack_after_last_alloc
        - Branch String:   'data-stack.c:575,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:579,20'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:608,2'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:590,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:592,27'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:606,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:564,3'
          Dst:             i_panic
        - Src:             'data-stack.c:566,2'
          Dst:             data_stack_last_buffer_reset
        - Src:             'data-stack.c:571,21'
          Dst:             data_stack_after_last_alloc
    - functionName:    t_malloc0
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 554
      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:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'data-stack.c:552,8'
          Dst:             t_malloc_real
    - functionName:    t_malloc_no0
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 545
      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:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'data-stack.c:545,9'
          Dst:             t_malloc_real
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    data_stack_frame_contains
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 670
      functionLinenumberEnd: 709
      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:677,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:678,3'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:681,21'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'data-stack.c:687,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:687,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:688,10'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'data-stack.c:689,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:689,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:693,15'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:696,42'
          Branch Sides:
            - BranchSide:      'data-stack.c:697,6'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:702,15'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:696,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:698,3'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:702,15'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:702,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:703,16'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:708,2'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:705,25'
          Branch Sides:
            - BranchSide:      'data-stack.c:705,28'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:707,2'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:705,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:706,4'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:707,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:687,2'
          Dst:             i_panic
        - Src:             'data-stack.c:689,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:    9
      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.4578
            - BranchSide:      'data-stack.c:349,28'
              BranchSideFuncs:
                - i_strdup
                - t_pop
                - t_strdup
                - p_free_internal.4578
      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:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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: 133
      functionLinenumberEnd: 136
      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: 250
      functionLinenumberEnd: 252
      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:251,13'
          Dst:             array_count_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.4624
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.4624
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      './mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:166,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:    3
      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:    12
      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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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,9'
          Branch Sides:
            - BranchSide:      'env-util.c:99,20'
              BranchSideFuncs:
                - env_get_environ_p
                - pool_alloconly_create
                - malloc_multiply_check.4641
                - p_malloc.4643
                - malloc_multiply_check.4641
                - p_malloc.4643
                - p_strdup
                - i_panic
            - BranchSide:      'env-util.c:99,20'
              BranchSideFuncs:
                - env_get_environ_p
                - pool_alloconly_create
                - malloc_multiply_check.4641
                - p_malloc.4643
                - malloc_multiply_check.4641
                - p_malloc.4643
                - 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.4641
                - p_malloc.4643
                - malloc_multiply_check.4641
                - p_malloc.4643
                - p_strdup
        - Branch String:   'env-util.c:106,2'
          Branch Sides:
            - BranchSide:      'env-util.c:106,47'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.4641
                - p_malloc.4643
                - malloc_multiply_check.4641
                - p_malloc.4643
                - p_strdup
            - BranchSide:      'env-util.c:108,9'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.4641
                - p_malloc.4643
                - malloc_multiply_check.4641
                - p_malloc.4643
                - 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.4625
                - env_put
                - t_strdup
                - t_strdup
                - array_append_i.4626
                - array_append_i.4626
            - BranchSide:      'env-util.c:83,2'
              BranchSideFuncs:
                - env_clean
                - array_get_i.4625
                - 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.4626
                - array_append_i.4626
                - env_clean
                - array_get_i.4625
                - env_put
                - getenv
            - BranchSide:      'env-util.c:78,2'
              BranchSideFuncs:
                - env_clean
                - array_get_i.4625
                - env_put
                - getenv
                - t_strdup
                - t_strdup
                - array_append_i.4626
                - array_append_i.4626
        - 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:    1
      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:    13
      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:    event_filter_query_update_category
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1139
      functionLinenumberEnd: 1171
      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:1140,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1141,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1143,10'
              BranchSideFuncs:
                - strcmp
                - event_filter_query_update_category
                - event_filter_query_update_category
        - Branch String:   'event-filter.c:1143,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1143,2'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1145,38'
              BranchSideFuncs:
                - event_filter_query_update_category
                - event_filter_query_update_category
            - BranchSide:      'event-filter.c:1154,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1154,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1154,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1154,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1154,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1154,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1156,7'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'event-filter.c:1156,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:1157,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1159,7'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'event-filter.c:1159,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:1160,8'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:1166,8'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:1160,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:1161,5'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1163,15'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'event-filter.c:1163,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:1164,26'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1165,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:1145,3'
          Dst:             event_filter_query_update_category
        - Src:             'event-filter.c:1146,3'
          Dst:             event_filter_query_update_category
        - Src:             'event-filter.c:1163,8'
          Dst:             strcmp
    - functionName:    event_match_strlist_recursive
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 667
      functionLinenumberEnd: 685
      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:671,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:672,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:674,40'
              BranchSideFuncs:
                - event_find_field_nonrecursive
                - event_match_strlist_recursive
                - cmp_str
                - i_memcpy.4790
                - i_panic
        - Branch String:   'event-filter.c:675,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:676,3'
              BranchSideFuncs:
                - event_match_strlist_recursive
                - cmp_str
                - i_memcpy.4790
                - i_panic
            - BranchSide:      'event-filter.c:683,39'
              BranchSideFuncs:
                - event_match_strlist_recursive
        - Branch String:   'event-filter.c:676,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:676,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:677,3'
              BranchSideFuncs:
                - event_match_strlist_recursive
                - cmp_str
                - i_memcpy.4790
        - Branch String:   'event-filter.c:677,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:677,3'
              BranchSideFuncs:
                - i_memcpy.4790
                - event_match_strlist_recursive
                - cmp_str
            - BranchSide:      'event-filter.c:677,3'
              BranchSideFuncs:
                - event_match_strlist_recursive
                - cmp_str
                - i_memcpy.4790
        - Branch String:   'event-filter.c:677,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:678,5'
              BranchSideFuncs:
                - cmp_str
                - event_match_strlist_recursive
                - i_memcpy.4790
            - BranchSide:      'event-filter.c:682,2'
              BranchSideFuncs:
                - event_match_strlist_recursive
        - Branch String:   'event-filter.c:679,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:680,5'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:681,3'
              BranchSideFuncs:
                - event_match_strlist_recursive
                - cmp_str
                - i_memcpy.4790
      Callsites:
        - Src:             'event-filter.c:674,10'
          Dst:             event_find_field_nonrecursive
        - Src:             'event-filter.c:676,3'
          Dst:             i_panic
        - Src:             'event-filter.c:677,3'
          Dst:             i_memcpy
        - Src:             'event-filter.c:679,8'
          Dst:             cmp_str
        - Src:             'event-filter.c:683,9'
          Dst:             event_match_strlist_recursive
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    cmp_str
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 642
      functionLinenumberEnd: 654
      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:643,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:644,8'
              BranchSideFuncs:
                - wildcard_match_escaped_icase
                - wildcard_match_escaped
            - BranchSide:      'event-filter.c:649,8'
              BranchSideFuncs:
                - strcasecmp
                - strcmp
        - Branch String:   'event-filter.c:644,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:645,34'
              BranchSideFuncs:
                - wildcard_match_escaped
            - BranchSide:      'event-filter.c:647,40'
              BranchSideFuncs:
                - wildcard_match_escaped_icase
        - Branch String:   'event-filter.c:649,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:650,18'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:652,22'
              BranchSideFuncs:
                - strcasecmp
      Callsites:
        - Src:             'event-filter.c:645,11'
          Dst:             wildcard_match_escaped
        - Src:             'event-filter.c:647,11'
          Dst:             wildcard_match_escaped_icase
        - Src:             'event-filter.c:650,11'
          Dst:             strcmp
        - Src:             'event-filter.c:652,11'
          Dst:             strcasecmp
    - functionName:    event_match_strlist
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 690
      functionLinenumberEnd: 707
      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:694,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:696,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:697,36'
              BranchSideFuncs:
                - event_get_global
                - event_match_strlist_recursive
        - Branch String:   'event-filter.c:697,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:700,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:701,6'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:701,30'
          Branch Sides:
            - BranchSide:      'event-filter.c:701,34'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:705,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:701,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:703,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:705,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:691,29'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:694,6'
          Dst:             event_match_strlist_recursive
        - Src:             'event-filter.c:697,36'
          Dst:             event_get_global
        - Src:             'event-filter.c:697,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:    9
      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: 712
      functionLinenumberEnd: 730
      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:713,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:715,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:717,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:719,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:721,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:723,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:727,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:727,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:727,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:729,2'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'event-filter.c:727,3'
          Dst:             i_unreached
        - Src:             'event-filter.c:729,2'
          Dst:             i_unreached
    - functionName:    cmp_value
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 660
      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:
        - wanted_field_value_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter.c:660,24'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:660,9'
          Dst:             cmp_str
    - functionName:    event_category_match
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 587
      functionLinenumberEnd: 593
      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:588,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:589,7'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:592,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:589,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:590,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:591,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_has_category_nonrecursive
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 608
      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:601,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:602,3'
              BranchSideFuncs:
                - event_category_match
                - i_memcpy.4790
            - BranchSide:      'event-filter.c:607,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:602,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:602,3'
              BranchSideFuncs:
                - i_memcpy.4790
                - event_category_match
            - BranchSide:      'event-filter.c:602,3'
              BranchSideFuncs:
                - event_category_match
                - i_memcpy.4790
        - Branch String:   'event-filter.c:602,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:603,29'
              BranchSideFuncs:
                - event_category_match
                - i_memcpy.4790
            - BranchSide:      'event-filter.c:606,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:603,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:604,5'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:605,3'
              BranchSideFuncs:
                - event_category_match
                - i_memcpy.4790
      Callsites:
        - Src:             'event-filter.c:601,6'
          Dst:             array_is_created_i
        - Src:             'event-filter.c:602,3'
          Dst:             i_memcpy
        - Src:             'event-filter.c:603,8'
          Dst:             event_category_match
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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: 736
      functionLinenumberEnd: 941
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - event
        - node
        - use_strcmp
        - source_filename
        - source_linenum
      BBCount:         122
      ICount:          811
      EdgeCount:       153
      CyclomaticComplexity: 33
      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:742,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:743,13'
              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
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
            - BranchSide:      'event-filter.c:752,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
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
        - Branch String:   'event-filter.c:754,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:756,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:759,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
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
        - Branch String:   'event-filter.c:756,65'
          Branch Sides:
            - BranchSide:      'event-filter.c:756,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:757,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:760,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:761,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
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
            - BranchSide:      'event-filter.c:762,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
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
        - Branch String:   'event-filter.c:762,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:763,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
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
            - BranchSide:      'event-filter.c:765,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
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
        - Branch String:   'event-filter.c:765,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:768,7'
              BranchSideFuncs:
                - t_push
                - cmp_value
                - t_pop
                - i_panic
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:794,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:860,8'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:872,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:920,7'
              BranchSideFuncs:
                - t_push
                - event_match_strlist
                - t_pop
                - i_panic
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:940,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'event-filter.c:768,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:770,9'
              BranchSideFuncs:
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:784,7'
              BranchSideFuncs:
                - t_push
                - cmp_value
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:770,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:771,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:782,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:778,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:778,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:779,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:784,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:786,11'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:789,3'
              BranchSideFuncs:
                - t_push
                - cmp_value
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:786,66'
          Branch Sides:
            - BranchSide:      'event-filter.c:786,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:787,5'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:791,5'
          Branch Sides:
            - BranchSide:      'event-filter.c:791,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:791,5'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:794,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:795,9'
              BranchSideFuncs:
                - wanted_field_value_str
                - i_warning
            - BranchSide:      'event-filter.c:811,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:795,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:796,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:810,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:806,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:806,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:807,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:811,14'
          Branch Sides:
            - BranchSide:      'event-filter.c:814,5'
              BranchSideFuncs:
                - event_filter_handle_numeric_operation
            - BranchSide:      'event-filter.c:815,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:815,51'
          Branch Sides:
            - BranchSide:      'event-filter.c:816,8'
              BranchSideFuncs:
                - wanted_field_value_str
                - i_warning
            - BranchSide:      'event-filter.c:817,9'
              BranchSideFuncs:
                - wanted_field_value_str
                - i_warning
        - Branch String:   'event-filter.c:815,14'
          Branch Sides:
            - BranchSide:      'event-filter.c:817,9'
              BranchSideFuncs:
                - wanted_field_value_str
                - i_warning
            - BranchSide:      'event-filter.c:830,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:817,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:818,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:829,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:825,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:825,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:826,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:830,14'
          Branch Sides:
            - BranchSide:      'event-filter.c:833,9'
              BranchSideFuncs:
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:851,15'
              BranchSideFuncs:
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:833,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:834,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:848,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:844,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:844,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:845,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:855,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:855,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:855,6'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:860,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:861,27'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:869,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:865,30'
          Branch Sides:
            - BranchSide:      'event-filter.c:865,45'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:866,11'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:872,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:874,9'
              BranchSideFuncs:
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:888,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:874,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:875,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:886,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:882,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:882,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:883,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:888,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:889,30'
              BranchSideFuncs:
                - net_is_in_network
            - BranchSide:      'event-filter.c:893,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:893,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:898,9'
              BranchSideFuncs:
                - wanted_field_value_str
                - i_warning
            - BranchSide:      'event-filter.c:912,3'
              BranchSideFuncs:
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:898,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:899,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:910,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:906,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:906,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:907,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:915,5'
          Branch Sides:
            - BranchSide:      'event-filter.c:915,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:915,5'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:920,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:921,9'
              BranchSideFuncs:
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:935,3'
              BranchSideFuncs:
                - t_push
                - event_match_strlist
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:921,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:922,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:933,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:929,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:929,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:930,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:937,5'
          Branch Sides:
            - BranchSide:      'event-filter.c:937,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:937,5'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:742,6'
          Dst:             strcmp
        - Src:             'event-filter.c:747,3'
          Dst:             event_get_last_duration
        - Src:             'event-filter.c:752,11'
          Dst:             event_find_field_recursive
        - Src:             'event-filter.c:777,8'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:773,5'
          Dst:             i_warning
        - Src:             'event-filter.c:789,3'
          Dst:             t_push
        - Src:             'event-filter.c:790,10'
          Dst:             cmp_value
        - Src:             'event-filter.c:791,5'
          Dst:             t_pop
        - Src:             'event-filter.c:791,5'
          Dst:             i_panic
        - Src:             'event-filter.c:805,8'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:798,5'
          Dst:             i_warning
        - Src:             'event-filter.c:813,11'
          Dst:             event_filter_handle_numeric_operation
        - Src:             'event-filter.c:824,8'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:820,5'
          Dst:             i_warning
        - Src:             'event-filter.c:842,8'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:843,8'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:836,5'
          Dst:             i_warning
        - Src:             'event-filter.c:851,4'
          Dst:             i_snprintf
        - Src:             'event-filter.c:852,4'
          Dst:             t_push
        - Src:             'event-filter.c:854,6'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:853,11'
          Dst:             wildcard_match_escaped_icase
        - Src:             'event-filter.c:855,6'
          Dst:             t_pop
        - Src:             'event-filter.c:855,6'
          Dst:             i_panic
        - Src:             'event-filter.c:862,8'
          Dst:             i_warning
        - Src:             'event-filter.c:881,8'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:877,5'
          Dst:             i_warning
        - Src:             'event-filter.c:889,11'
          Dst:             net_is_in_network
        - Src:             'event-filter.c:905,8'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:901,5'
          Dst:             i_warning
        - Src:             'event-filter.c:912,3'
          Dst:             t_push
        - Src:             'event-filter.c:913,39'
          Dst:             net_ip2addr
        - Src:             'event-filter.c:914,11'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:913,10'
          Dst:             wildcard_match_escaped_icase
        - Src:             'event-filter.c:915,5'
          Dst:             t_pop
        - Src:             'event-filter.c:915,5'
          Dst:             i_panic
        - Src:             'event-filter.c:928,8'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:923,5'
          Dst:             i_warning
        - Src:             'event-filter.c:935,3'
          Dst:             t_push
        - Src:             'event-filter.c:936,10'
          Dst:             event_match_strlist
        - Src:             'event-filter.c:937,5'
          Dst:             t_pop
        - Src:             'event-filter.c:937,5'
          Dst:             i_panic
        - Src:             'event-filter.c:940,2'
          Dst:             i_unreached
    - functionName:    event_filter_export_query_expr_op
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 475
      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:457,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:461,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:461,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:461,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:463,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:465,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:467,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:469,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:471,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:474,2'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'event-filter.c:461,3'
          Dst:             i_unreached
        - Src:             'event-filter.c:474,2'
          Dst:             i_unreached
    - functionName:    event_has_category
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 638
      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:617,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:618,11'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:621,6'
              BranchSideFuncs:
                - event_get_global
                - event_has_category_nonrecursive
                - event_get_parent
                - event_has_category_nonrecursive
                - event_get_parent
        - Branch String:   'event-filter.c:621,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:622,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:624,2'
              BranchSideFuncs:
                - event_get_global
                - event_has_category_nonrecursive
                - event_get_parent
                - event_has_category_nonrecursive
                - event_get_parent
        - Branch String:   'event-filter.c:624,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:625,39'
              BranchSideFuncs:
                - event_has_category_nonrecursive
                - event_get_parent
                - event_get_global
                - event_has_category_nonrecursive
                - event_get_parent
            - BranchSide:      'event-filter.c:631,10'
              BranchSideFuncs:
                - event_get_global
                - event_has_category_nonrecursive
                - event_get_parent
        - Branch String:   'event-filter.c:625,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:626,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:628,28'
              BranchSideFuncs:
                - event_get_parent
                - event_get_global
                - event_has_category_nonrecursive
                - event_get_parent
                - event_has_category_nonrecursive
        - Branch String:   'event-filter.c:632,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:633,39'
              BranchSideFuncs:
                - event_has_category_nonrecursive
                - event_get_parent
            - BranchSide:      'event-filter.c:637,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:633,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:634,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:635,28'
              BranchSideFuncs:
                - event_get_parent
                - event_has_category_nonrecursive
      Callsites:
        - Src:             'event-filter.c:625,7'
          Dst:             event_has_category_nonrecursive
        - Src:             'event-filter.c:628,11'
          Dst:             event_get_parent
        - Src:             'event-filter.c:631,10'
          Dst:             event_get_global
        - Src:             'event-filter.c:633,7'
          Dst:             event_has_category_nonrecursive
        - Src:             'event-filter.c:635,11'
          Dst:             event_get_parent
    - functionName:    event_filter_append_escaped
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 452
      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:446,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:447,22'
              BranchSideFuncs:
                - str_append.4820
            - BranchSide:      'event-filter.c:450,14'
              BranchSideFuncs:
                - str_append.4820
      Callsites:
        - Src:             'event-filter.c:447,33'
          Dst:             strlen
        - Src:             'event-filter.c:447,3'
          Dst:             str_append_escaped
        - Src:             'event-filter.c:450,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: 481
      functionLinenumberEnd: 549
      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:482,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:482,2'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:484,3'
              BranchSideFuncs:
                - str_append_c.4821
                - i_unreached
                - str_append.4820
                - event_filter_export_query_expr
                - str_append_c.4821
                - event_filter_export_query_expr
                - str_append.4820
                - event_filter_export_query_expr
                - event_filter_export_query_expr
                - str_append.4820
                - event_filter_export_query_expr
            - BranchSide:      'event-filter.c:511,14'
              BranchSideFuncs:
                - str_append.4820
                - event_filter_export_query_expr_op
                - str_append.4820
                - str_append_c.4821
                - event_filter_append_escaped
                - str_append_c.4821
            - BranchSide:      'event-filter.c:511,14'
              BranchSideFuncs:
                - str_append.4820
                - event_filter_export_query_expr_op
                - str_append.4820
                - str_append_c.4821
                - event_filter_append_escaped
                - str_append_c.4821
            - BranchSide:      'event-filter.c:519,14'
              BranchSideFuncs:
                - str_append.4820
                - event_filter_export_query_expr_op
                - str_append.4820
                - str_append_c.4821
                - event_filter_append_escaped
                - str_append_c.4821
            - BranchSide:      'event-filter.c:526,14'
              BranchSideFuncs:
                - str_append.4820
                - event_filter_export_query_expr_op
                - str_append.4820
                - event_filter_category_from_log_type
                - str_append.4820
                - str_append_c.4821
                - event_filter_append_escaped
                - str_append_c.4821
            - BranchSide:      'event-filter.c:538,3'
              BranchSideFuncs:
                - str_append_c.4821
                - event_filter_append_escaped
                - str_append_c.4821
                - event_filter_export_query_expr_op
                - str_append.4820
                - str_append_c.4821
                - wanted_field_value_str
                - event_filter_append_escaped
                - str_append_c.4821
            - BranchSide:      'event-filter.c:538,3'
              BranchSideFuncs:
                - str_append_c.4821
                - event_filter_append_escaped
                - str_append_c.4821
                - event_filter_export_query_expr_op
                - str_append.4820
                - str_append_c.4821
                - wanted_field_value_str
                - event_filter_append_escaped
                - str_append_c.4821
            - BranchSide:      'event-filter.c:538,3'
              BranchSideFuncs:
                - str_append_c.4821
                - event_filter_append_escaped
                - str_append_c.4821
                - event_filter_export_query_expr_op
                - str_append.4820
                - str_append_c.4821
                - wanted_field_value_str
                - event_filter_append_escaped
                - str_append_c.4821
        - Branch String:   'event-filter.c:485,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:487,35'
              BranchSideFuncs:
                - event_filter_export_query_expr
                - str_append.4820
                - event_filter_export_query_expr
                - str_append_c.4821
            - BranchSide:      'event-filter.c:492,35'
              BranchSideFuncs:
                - event_filter_export_query_expr
                - str_append.4820
                - event_filter_export_query_expr
                - str_append_c.4821
            - BranchSide:      'event-filter.c:497,15'
              BranchSideFuncs:
                - str_append.4820
                - event_filter_export_query_expr
                - str_append_c.4821
            - BranchSide:      'event-filter.c:505,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:505,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:505,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:505,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:505,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:507,3'
              BranchSideFuncs:
                - str_append_c.4821
        - Branch String:   'event-filter.c:528,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:529,4'
              BranchSideFuncs:
                - str_append_c.4821
                - event_filter_append_escaped
                - str_append_c.4821
            - BranchSide:      'event-filter.c:533,15'
              BranchSideFuncs:
                - event_filter_category_from_log_type
                - str_append.4820
      Callsites:
        - Src:             'event-filter.c:484,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:487,4'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:488,4'
          Dst:             str_append
        - Src:             'event-filter.c:489,4'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:492,4'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:493,4'
          Dst:             str_append
        - Src:             'event-filter.c:494,4'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:497,4'
          Dst:             str_append
        - Src:             'event-filter.c:498,4'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:505,4'
          Dst:             i_unreached
        - Src:             'event-filter.c:507,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:511,3'
          Dst:             str_append
        - Src:             'event-filter.c:512,20'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:512,3'
          Dst:             str_append
        - Src:             'event-filter.c:513,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:514,3'
          Dst:             event_filter_append_escaped
        - Src:             'event-filter.c:516,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:519,3'
          Dst:             str_append
        - Src:             'event-filter.c:520,20'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:520,3'
          Dst:             str_append
        - Src:             'event-filter.c:521,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:522,3'
          Dst:             event_filter_append_escaped
        - Src:             'event-filter.c:523,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:526,3'
          Dst:             str_append
        - Src:             'event-filter.c:527,20'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:527,3'
          Dst:             str_append
        - Src:             'event-filter.c:529,4'
          Dst:             str_append_c
        - Src:             'event-filter.c:530,4'
          Dst:             event_filter_append_escaped
        - Src:             'event-filter.c:531,4'
          Dst:             str_append_c
        - Src:             'event-filter.c:533,21'
          Dst:             event_filter_category_from_log_type
        - Src:             'event-filter.c:533,4'
          Dst:             str_append
        - Src:             'event-filter.c:538,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:539,3'
          Dst:             event_filter_append_escaped
        - Src:             'event-filter.c:540,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:541,20'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:541,3'
          Dst:             str_append
        - Src:             'event-filter.c:542,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:544,4'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:543,3'
          Dst:             event_filter_append_escaped
        - Src:             'event-filter.c:546,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: 321
      functionLinenumberEnd: 328
      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:324,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:325,33'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:328,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'event-filter.c:325,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:326,37'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:327,2'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'event-filter.c:328,2'
          Dst:             i_unreached
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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:    clone_expr
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 391
      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_is_created_i
        - clone_expr
        - i_memcpy
        - malloc_multiply_check
        - p_malloc
        - p_strdup
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-filter.c:336,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:337,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:339,8'
              BranchSideFuncs:
                - malloc_multiply_check.4836
                - p_malloc.4837
                - p_strdup
                - clone_expr
                - clone_expr
                - p_strdup
                - array_is_created_i.4797
                - array_count_i.4835
                - array_create_i.4839
                - p_strdup
                - array_append_i.4834
                - i_memcpy.4790
                - p_strdup
        - Branch String:   'event-filter.c:342,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:344,33'
              BranchSideFuncs:
                - clone_expr
                - clone_expr
            - BranchSide:      'event-filter.c:348,28'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'event-filter.c:353,29'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.4797
                - array_count_i.4835
                - array_create_i.4839
                - p_strdup
                - array_append_i.4834
                - i_memcpy.4790
                - p_strdup
        - Branch String:   'event-filter.c:356,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:358,36'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'event-filter.c:361,30'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:364,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:367,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:371,8'
              BranchSideFuncs:
                - array_is_created_i.4797
                - array_count_i.4835
                - array_create_i.4839
                - p_strdup
                - array_append_i.4834
                - i_memcpy.4790
            - BranchSide:      'event-filter.c:382,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:371,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:373,5'
              BranchSideFuncs:
                - array_count_i.4835
                - array_create_i.4839
                - p_strdup
                - array_append_i.4834
                - i_memcpy.4790
            - BranchSide:      'event-filter.c:380,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:375,5'
          Branch Sides:
            - BranchSide:      'event-filter.c:375,5'
              BranchSideFuncs:
                - i_memcpy.4790
                - p_strdup
                - array_append_i.4834
            - BranchSide:      'event-filter.c:375,5'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.4834
                - i_memcpy.4790
        - Branch String:   'event-filter.c:375,5'
          Branch Sides:
            - BranchSide:      'event-filter.c:376,21'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.4834
                - i_memcpy.4790
            - BranchSide:      'event-filter.c:379,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:339,8'
          Dst:             malloc_multiply_check
        - Src:             'event-filter.c:339,8'
          Dst:             p_malloc
        - Src:             'event-filter.c:344,22'
          Dst:             clone_expr
        - Src:             'event-filter.c:345,22'
          Dst:             clone_expr
        - Src:             'event-filter.c:349,24'
          Dst:             p_strdup
        - Src:             'event-filter.c:353,20'
          Dst:             p_strdup
        - Src:             'event-filter.c:358,27'
          Dst:             p_strdup
        - Src:             'event-filter.c:371,8'
          Dst:             array_is_created_i
        - Src:             'event-filter.c:373,5'
          Dst:             array_count_i
        - Src:             'event-filter.c:373,5'
          Dst:             array_create_i
        - Src:             'event-filter.c:375,5'
          Dst:             i_memcpy
        - Src:             'event-filter.c:376,12'
          Dst:             p_strdup
        - Src:             'event-filter.c:377,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.4840
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.4840
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      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/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 336
      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:334,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.4836
                - p_malloc.4837
                - i_panic
            - BranchSide:      'event-filter.c:154,2'
              BranchSideFuncs:
                - malloc_multiply_check.4836
                - p_malloc.4837
                - 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.4836
                - p_malloc.4837
        - 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.4836
                - p_malloc.4837
      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.4843
            - BranchSide:      'event-filter.c:141,10'
              BranchSideFuncs:
                - array_append_space_i.4843
        - 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.4843
      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: 1193
      functionLinenumberEnd: 1195
      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:1194,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1194,2'
              BranchSideFuncs:
                - event_category_unregister_callback
            - BranchSide:      'event-filter.c:1194,2'
              BranchSideFuncs:
                - event_category_unregister_callback
      Callsites:
        - Src:             'event-filter.c:1194,2'
          Dst:             event_category_unregister_callback
        - Src:             'event-filter.c:1194,2'
          Dst:             event_filter_category_registered
    - functionName:    event_filter_category_registered
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1174
      functionLinenumberEnd: 1185
      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:1179,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1180,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_filter_query_update_category
            - BranchSide:      'event-filter.c:1185,1'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:1180,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:1181,39'
              BranchSideFuncs:
                - event_filter_query_update_category
                - buffer_get_modifiable_data
            - BranchSide:      'event-filter.c:1184,2'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_filter_query_update_category
      Callsites:
        - Src:             'event-filter.c:1180,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'event-filter.c:1181,4'
          Dst:             event_filter_query_update_category
    - functionName:    event_filter_init
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1188
      functionLinenumberEnd: 1190
      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:1189,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1189,2'
              BranchSideFuncs:
                - event_category_register_callback
            - BranchSide:      'event-filter.c:1189,2'
              BranchSideFuncs:
                - event_category_register_callback
      Callsites:
        - Src:             'event-filter.c:1189,2'
          Dst:             event_category_register_callback
        - Src:             'event-filter.c:1189,2'
          Dst:             event_filter_category_registered
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_filter_match_iter_deinit
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1127
      functionLinenumberEnd: 1132
      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:1131,2'
          Dst:             p_free_internal
    - functionName:    event_filter_match_iter_next
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1106
      functionLinenumberEnd: 1124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - iter
      BBCount:         12
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_get_i
        - event_filter_query_match
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter.c:1111,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1113,5'
              BranchSideFuncs:
                - event_filter_query_match
            - BranchSide:      'event-filter.c:1123,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:1116,30'
          Branch Sides:
            - BranchSide:      'event-filter.c:1111,2'
              BranchSideFuncs:
                - event_filter_query_match
            - BranchSide:      'event-filter.c:1117,32'
              BranchSideFuncs:
                - event_filter_query_match
        - Branch String:   'event-filter.c:1116,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:1111,2'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1121,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:1110,12'
          Dst:             array_get_i
        - Src:             'event-filter.c:1117,7'
          Dst:             event_filter_query_match
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      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:251,13'
          Dst:             array_count_i
    - functionName:    event_filter_query_match
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1030
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - query
        - event
        - source_filename
        - source_linenum
        - ctx
      BBCount:         7
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_query_match_eval
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:1033,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1033,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:1033,2'
              BranchSideFuncs:
                - event_filter_query_match_eval
      Callsites:
        - Src:             'event-filter.c:1033,2'
          Dst:             i_panic
        - Src:             'event-filter.c:1036,9'
          Dst:             event_filter_query_match_eval
    - functionName:    event_filter_query_match_eval
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 993
      functionLinenumberEnd: 1023
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - node
        - event
        - source_filename
        - source_linenum
        - log_type
      BBCount:         20
      ICount:          142
      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:994,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1000,39'
              BranchSideFuncs:
                - event_filter_query_match_cmp
            - BranchSide:      'event-filter.c:1000,39'
              BranchSideFuncs:
                - event_filter_query_match_cmp
            - BranchSide:      'event-filter.c:1000,39'
              BranchSideFuncs:
                - event_filter_query_match_cmp
            - BranchSide:      'event-filter.c:1000,39'
              BranchSideFuncs:
                - event_filter_query_match_cmp
            - BranchSide:      'event-filter.c:1000,39'
              BranchSideFuncs:
                - event_filter_query_match_cmp
            - BranchSide:      'event-filter.c:1003,40'
              BranchSideFuncs:
                - event_filter_query_match_eval
                - event_filter_query_match_eval
            - BranchSide:      'event-filter.c:1010,40'
              BranchSideFuncs:
                - event_filter_query_match_eval
                - event_filter_query_match_eval
            - BranchSide:      'event-filter.c:1017,41'
              BranchSideFuncs:
                - event_filter_query_match_eval
            - BranchSide:      'event-filter.c:1022,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'event-filter.c:1005,22'
          Branch Sides:
            - BranchSide:      'event-filter.c:1003,3'
              BranchSideFuncs:
                - event_filter_query_match_eval
            - BranchSide:      'event-filter.c:1006,40'
              BranchSideFuncs:
                - event_filter_query_match_eval
        - Branch String:   'event-filter.c:1012,22'
          Branch Sides:
            - BranchSide:      'event-filter.c:1010,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1013,40'
              BranchSideFuncs:
                - event_filter_query_match_eval
      Callsites:
        - Src:             'event-filter.c:1000,10'
          Dst:             event_filter_query_match_cmp
        - Src:             'event-filter.c:1003,10'
          Dst:             event_filter_query_match_eval
        - Src:             'event-filter.c:1006,10'
          Dst:             event_filter_query_match_eval
        - Src:             'event-filter.c:1010,10'
          Dst:             event_filter_query_match_eval
        - Src:             'event-filter.c:1013,10'
          Dst:             event_filter_query_match_eval
        - Src:             'event-filter.c:1017,11'
          Dst:             event_filter_query_match_eval
        - Src:             'event-filter.c:1022,2'
          Dst:             i_unreached
    - functionName:    event_filter_query_match_cmp
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 986
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - node
        - event
        - source_filename
        - source_linenum
        - log_type
      BBCount:         42
      ICount:          260
      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:949,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:949,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:949,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:949,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:949,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:949,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:949,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:949,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:949,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:949,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:949,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:949,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:949,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:949,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:955,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:955,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:957,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:959,12'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:962,12'
              BranchSideFuncs:
                - wildcard_match_escaped
            - BranchSide:      'event-filter.c:967,15'
              BranchSideFuncs:
                - strchr
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
                - strcmp
            - BranchSide:      'event-filter.c:977,30'
              BranchSideFuncs:
                - event_has_category
            - BranchSide:      'event-filter.c:979,29'
              BranchSideFuncs:
                - event_match_field
            - BranchSide:      'event-filter.c:982,29'
              BranchSideFuncs:
                - event_match_field
            - BranchSide:      'event-filter.c:982,29'
              BranchSideFuncs:
                - event_match_field
            - BranchSide:      'event-filter.c:985,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'event-filter.c:959,41'
          Branch Sides:
            - BranchSide:      'event-filter.c:959,4'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:960,18'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'event-filter.c:962,41'
          Branch Sides:
            - BranchSide:      'event-filter.c:962,4'
              BranchSideFuncs:
                - wildcard_match_escaped
            - BranchSide:      'event-filter.c:963,28'
              BranchSideFuncs:
                - wildcard_match_escaped
        - Branch String:   'event-filter.c:967,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:968,18'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:969,9'
              BranchSideFuncs:
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:973,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:973,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:973,6'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:949,2'
          Dst:             i_panic
        - Src:             'event-filter.c:957,4'
          Dst:             i_unreached
        - Src:             'event-filter.c:960,11'
          Dst:             strcmp
        - Src:             'event-filter.c:963,5'
          Dst:             wildcard_match_escaped
        - Src:             'event-filter.c:967,8'
          Dst:             strchr
        - Src:             'event-filter.c:968,11'
          Dst:             strcmp
        - Src:             'event-filter.c:969,9'
          Dst:             t_push
        - Src:             'event-filter.c:971,6'
          Dst:             t_strdup_printf
        - Src:             'event-filter.c:972,11'
          Dst:             strcmp
        - Src:             'event-filter.c:973,6'
          Dst:             t_pop
        - Src:             'event-filter.c:973,6'
          Dst:             i_panic
        - Src:             'event-filter.c:977,11'
          Dst:             event_has_category
        - Src:             'event-filter.c:979,11'
          Dst:             event_match_field
        - Src:             'event-filter.c:982,11'
          Dst:             event_match_field
        - Src:             'event-filter.c:985,2'
          Dst:             i_unreached
    - functionName:    event_filter_match_iter_init
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1091
      functionLinenumberEnd: 1102
      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:1094,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1094,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:1096,9'
              BranchSideFuncs:
                - malloc_multiply_check.4836
                - p_malloc.4837
                - event_filter_match_fastpath
        - Branch String:   'event-filter.c:1100,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1100,6'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1101,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:1094,2'
          Dst:             i_panic
        - Src:             'event-filter.c:1096,9'
          Dst:             malloc_multiply_check
        - Src:             'event-filter.c:1096,9'
          Dst:             p_malloc
        - Src:             'event-filter.c:1100,7'
          Dst:             event_filter_match_fastpath
    - functionName:    event_filter_match_fastpath
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1042
      functionLinenumberEnd: 1050
      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:1043,33'
          Branch Sides:
            - BranchSide:      'event-filter.c:1043,36'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1049,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:1043,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1047,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1049,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_filter_match_source
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1065
      functionLinenumberEnd: 1079
      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:          104
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - event_filter_match_fastpath
        - event_filter_query_match
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   'event-filter.c:1068,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1068,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:1070,35'
              BranchSideFuncs:
                - event_filter_match_fastpath
                - event_filter_query_match
        - Branch String:   'event-filter.c:1070,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1071,3'
              BranchSideFuncs:
                - event_filter_query_match
            - BranchSide:      'event-filter.c:1073,2'
              BranchSideFuncs:
                - event_filter_query_match
        - Branch String:   'event-filter.c:1073,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1074,32'
              BranchSideFuncs:
                - event_filter_query_match
            - BranchSide:      'event-filter.c:1078,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:1074,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:1076,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1077,2'
              BranchSideFuncs:
                - event_filter_query_match
      Callsites:
        - Src:             'event-filter.c:1068,2'
          Dst:             i_panic
        - Src:             'event-filter.c:1070,7'
          Dst:             event_filter_match_fastpath
        - Src:             'event-filter.c:1074,7'
          Dst:             event_filter_query_match
    - functionName:    event_filter_match
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1054
      functionLinenumberEnd: 1059
      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:    4
      BranchProfiles:
        - Branch String:   'event-filter.c:1055,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1056,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1057,35'
              BranchSideFuncs:
                - event_filter_match_source
      Callsites:
        - Src:             'event-filter.c:1057,9'
          Dst:             event_filter_match_source
    - functionName:    event_filter_get_expr_for_testing
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 581
      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:581,9'
          Branch Sides:
            - BranchSide:      'event-filter.c:581,9'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:581,34'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:579,12'
          Dst:             array_get_i
    - functionName:    event_filter_export_query
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 554
      functionLinenumberEnd: 558
      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:555,2'
          Dst:             str_append_c
        - Src:             'event-filter.c:556,2'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:557,2'
          Dst:             str_append_c
    - functionName:    event_filter_export
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 561
      functionLinenumberEnd: 571
      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:565,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:566,8'
              BranchSideFuncs:
                - str_append.4820
                - event_filter_export_query
            - BranchSide:      'event-filter.c:571,1'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:566,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:567,15'
              BranchSideFuncs:
                - event_filter_export_query
                - str_append.4820
            - BranchSide:      'event-filter.c:568,9'
              BranchSideFuncs:
                - event_filter_export_query
                - str_append.4820
      Callsites:
        - Src:             'event-filter.c:567,4'
          Dst:             str_append
        - Src:             'event-filter.c:569,3'
          Dst:             event_filter_export_query
    - functionName:    event_filter_merge_with_context
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - src
        - new_context
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_merge_with_context_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter.c:440,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: 397
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - dest
        - src
        - new_context
        - with_context
      BBCount:         19
      ICount:          139
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - add_node
        - clone_expr
        - event_filter_get_or_alloc_internal_query
        - filter_node_requires_event_name
        - i_panic
        - t_pop
        - t_push
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:400,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:400,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:412,1'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:401,19'
          Branch Sides:
            - BranchSide:      'event-filter.c:401,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:401,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:409,55'
          Branch Sides:
            - BranchSide:      'event-filter.c:409,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:410,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:411,4'
          Branch Sides:
            - BranchSide:      'event-filter.c:411,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:411,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:400,42'
          Dst:             t_push
        - Src:             'event-filter.c:404,9'
          Dst:             event_filter_get_or_alloc_internal_query
        - Src:             'event-filter.c:407,5'
          Dst:             clone_expr
        - Src:             'event-filter.c:406,3'
          Dst:             add_node
        - Src:             'event-filter.c:410,4'
          Dst:             filter_node_requires_event_name
        - Src:             'event-filter.c:411,4'
          Dst:             t_pop
        - Src:             'event-filter.c:411,4'
          Dst:             i_panic
    - functionName:    event_filter_merge
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - src
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_merge_with_context_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter.c:433,2'
          Dst:             event_filter_merge_with_context_internal
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 244
      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:242,2'
          Dst:             buffer_delete
    - functionName:    event_filter_remove_queries_with_context
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 428
      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:420,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:421,7'
              BranchSideFuncs:
                - array_delete_i.4857
            - BranchSide:      'event-filter.c:427,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:421,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:422,10'
              BranchSideFuncs:
                - array_delete_i.4857
            - BranchSide:      'event-filter.c:426,2'
              BranchSideFuncs:
                - array_delete_i.4857
      Callsites:
        - Src:             'event-filter.c:423,4'
          Dst:             array_delete_i
    - functionName:    event_filter_category_to_log_type
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 317
      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:310,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:311,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:316,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:311,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:312,44'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:315,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'event-filter.c:311,7'
          Dst:             strcmp
    - 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:    3
      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:    2
      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:    3
      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: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      './mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:166,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:    15
      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.4869
                - 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.4869
        - 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.4869
        - 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.4869
        - Branch String:   'event-filter.c:95,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:95,3'
              BranchSideFuncs:
                - pool_unref.4869
            - BranchSide:      'event-filter.c:95,3'
              BranchSideFuncs:
                - pool_unref.4869
        - Branch String:   'event-filter.c:95,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:95,3'
              BranchSideFuncs:
                - pool_unref.4869
            - BranchSide:      'event-filter.c:98,15'
              BranchSideFuncs:
                - pool_unref.4869
      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:    4
      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:    2
      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:    5
      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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    event_filter_parser_input_proc
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.l'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 142
      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:132,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:133,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.l:135,2'
              BranchSideFuncs:
                - i_memcpy.4970
                - i_panic
        - Branch String:   'event-filter-lexer.l:135,2'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:135,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter-lexer.l:137,14'
              BranchSideFuncs:
                - i_memcpy.4970
        - Branch String:   'event-filter-lexer.l:137,14'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:137,12'
              BranchSideFuncs:
                - i_memcpy.4970
            - BranchSide:      'event-filter-lexer.l:137,12'
              BranchSideFuncs:
                - i_memcpy.4970
      Callsites:
        - Src:             'event-filter-lexer.l:130,10'
          Dst:             event_filter_parser_get_extra
        - Src:             'event-filter-lexer.l:135,2'
          Dst:             i_panic
        - Src:             'event-filter-lexer.l:138,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:    event_filter_parser_realloc
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.l'
      linkageType:     externalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ptr
        - bytes
        - yyscanner
      BBCount:         5
      ICount:          39
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_fatal_status
        - realloc
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-filter-lexer.l:112,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:114,11'
              BranchSideFuncs:
                - i_fatal_status
            - BranchSide:      'event-filter-lexer.l:115,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter-lexer.l:111,15'
          Dst:             realloc
        - Src:             'event-filter-lexer.l:113,3'
          Dst:             i_fatal_status
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - 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
                - 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
                - 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
                - event_filter_parser_free
            - BranchSide:      'event-filter-lexer.c:2203,9'
              BranchSideFuncs:
                - event_filter_parser_free
                - event_filter_parser_free
                - yy_init_globals
                - 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
                - 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
                - 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: 119
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ptr
        - yyscanner
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   'event-filter-lexer.l:120,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:121,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.l:122,7'
              BranchSideFuncs:
                - free
      Callsites:       []
    - 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
                - __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
      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: 106
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - bytes
        - yyscanner
      BBCount:         5
      ICount:          35
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - calloc
        - i_fatal_status
      functionUses:    7
      BranchProfiles:
        - Branch String:   'event-filter-lexer.l:103,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:105,11'
              BranchSideFuncs:
                - i_fatal_status
            - BranchSide:      'event-filter-lexer.l:106,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter-lexer.l:102,14'
          Dst:             calloc
        - Src:             'event-filter-lexer.l:104,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:    3
      BranchProfiles:  []
      Callsites:       []
    - 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
                - __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
      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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:998,4'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1004,38'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1002,21'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1008,11'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - i_fatal
            - BranchSide:      'event-filter-lexer.l:54,26'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'event-filter-lexer.l:59,14'
              BranchSideFuncs:
                - str_append.4996
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.l:60,14'
              BranchSideFuncs:
                - str_append.4996
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.l:61,14'
              BranchSideFuncs:
                - str_append.4996
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.l:62,14'
              BranchSideFuncs:
                - str_append.4996
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1022,13'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
            - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-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
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
            - BranchSide:      'event-filter-lexer.c:1170,8'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
        - Branch String:   'event-filter-lexer.c:1170,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1174,22'
              BranchSideFuncs:
                - yy_get_previous_state
                - yy_try_NUL_trans
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1207,37'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
                - yy_get_previous_state
        - Branch String:   'event-filter-lexer.c:1191,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1194,15'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1201,13'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1240,6'
              BranchSideFuncs:
                - yy_get_previous_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1250,6'
              BranchSideFuncs:
                - yy_get_previous_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - t_strdup
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - str_append.4996
                - 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:    fwrite
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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
            - BranchSide:      'event-filter-parser.c:1072,7'
              BranchSideFuncs:
                - strlen
                - yystpcpy
        - Branch String:   'event-filter-parser.c:1045,9'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1049,13'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - BranchSide:      'event-filter-parser.c:1049,13'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - BranchSide:      'event-filter-parser.c:1052,18'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - BranchSide:      'event-filter-parser.c:1059,17'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - 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
            - BranchSide:      'event-filter-parser.c:1055,15'
              BranchSideFuncs:
                - strlen
                - yystpcpy
        - Branch String:   'event-filter-parser.c:1059,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1060,29'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - BranchSide:      'event-filter-parser.c:1061,16'
              BranchSideFuncs:
                - strlen
                - yystpcpy
        - 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
            - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1165,11'
              BranchSideFuncs:
                - strlen
                - yytnamerr
        - Branch String:   'event-filter-parser.c:1131,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1136,26'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1163,5'
              BranchSideFuncs:
                - strlen
                - yytnamerr
        - Branch String:   'event-filter-parser.c:1136,26'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1136,37'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1136,15'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
        - Branch String:   'event-filter-parser.c:1139,24'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1139,49'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1139,15'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
        - Branch String:   'event-filter-parser.c:1142,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1143,25'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1162,9'
              BranchSideFuncs:
                - strlen
                - yytnamerr
        - Branch String:   'event-filter-parser.c:1143,43'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1143,46'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1144,21'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
        - Branch String:   'event-filter-parser.c:1143,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1144,21'
              BranchSideFuncs:
                - yytnamerr
                - strlen
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1146,21'
              BranchSideFuncs:
                - yytnamerr
                - strlen
                - yytnamerr
        - Branch String:   'event-filter-parser.c:1146,21'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1148,29'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1152,44'
              BranchSideFuncs:
                - yytnamerr
                - strlen
                - yytnamerr
        - Branch String:   'event-filter-parser.c:1156,41'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1156,44'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
            - 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
                - yytnamerr
            - 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
            - BranchSide:      'event-filter-parser.c:1172,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1173,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1174,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1175,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1176,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1177,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
        - Branch String:   'event-filter-parser.c:1185,27'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1185,30'
              BranchSideFuncs:
                - yytnamerr
            - 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
            - 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
        - 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
            - 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
            - BranchSide:      'event-filter-parser.c:1214,11'
              BranchSideFuncs:
                - yytnamerr
        - Branch String:   'event-filter-parser.c:1207,45'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1207,48'
              BranchSideFuncs:
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1214,11'
              BranchSideFuncs:
                - yytnamerr
        - Branch String:   'event-filter-parser.c:1207,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1209,29'
              BranchSideFuncs:
                - yytnamerr
            - BranchSide:      'event-filter-parser.c:1214,11'
              BranchSideFuncs:
                - yytnamerr
      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
        - 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.5023
                - p_malloc.5025
                - 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.5023
                - p_malloc.5025
                - 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.5023
                - p_malloc.5025
                - 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.5023
                - p_malloc.5025
                - 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.5023
                - p_malloc.5025
                - 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.5023
                - p_malloc.5025
                - 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.5023
                - p_malloc.5025
                - 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.5023
                - p_malloc.5025
                - 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.5023
                - p_malloc.5025
                - 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
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - free
            - BranchSide:      'event-filter-parser.c:1402,7'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1370,19'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - free
            - BranchSide:      'event-filter-parser.c:1375,29'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - free
            - BranchSide:      'event-filter-parser.c:1381,9'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
            - BranchSide:      'event-filter-parser.c:1389,15'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1399,5'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1405,3'
              BranchSideFuncs:
                - free
                - free
                - yydestruct
                - yydestruct
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'event-filter-parser.c:1423,7'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'event-filter-parser.c:1444,5'
              BranchSideFuncs:
                - event_filter_parser_lex
                - free
                - free
                - yydestruct
                - yydestruct
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'event-filter-parser.c:1444,5'
              BranchSideFuncs:
                - event_filter_parser_lex
                - free
                - free
                - yydestruct
                - yydestruct
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'event-filter-parser.c:1445,17'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - 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
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'event-filter-parser.c:1478,3'
              BranchSideFuncs:
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - 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
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'event-filter-parser.c:1674,43'
              BranchSideFuncs:
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - 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
                - malloc
                - yysyntax_error
                - free
        - Branch String:   'event-filter-parser.c:1674,43'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1674,43'
              BranchSideFuncs:
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - 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
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'event-filter-parser.c:1674,13'
              BranchSideFuncs:
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - 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
                - malloc
                - yysyntax_error
                - free
        - Branch String:   'event-filter-parser.c:1674,43'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1674,13'
              BranchSideFuncs:
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - 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
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'event-filter-parser.c:1674,13'
              BranchSideFuncs:
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - 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
                - malloc
                - yysyntax_error
                - free
        - Branch String:   'event-filter-parser.c:1677,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1679,7'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - free
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1718,7'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - free
                - yydestruct
        - Branch String:   'event-filter-parser.c:1689,13'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1690,20'
              BranchSideFuncs:
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1691,18'
              BranchSideFuncs:
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct
                - yysyntax_error
            - BranchSide:      'event-filter-parser.c:1695,21'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct
                - yysyntax_error
        - Branch String:   'event-filter-parser.c:1696,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1698,25'
              BranchSideFuncs:
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - malloc
                - free
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1704,41'
              BranchSideFuncs:
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - malloc
                - free
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct
        - 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
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1714,5'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - free
                - yydestruct
        - Branch String:   'event-filter-parser.c:1718,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1723,11'
              BranchSideFuncs:
                - yydestruct
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1739,3'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1732,23'
              BranchSideFuncs:
                - yydestruct
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1728,9'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1781,11'
              BranchSideFuncs:
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1778,9'
              BranchSideFuncs:
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1778,9'
              BranchSideFuncs:
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1778,9'
              BranchSideFuncs:
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
                - yydestruct
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1777,13'
              BranchSideFuncs:
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1786,26'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error
                - event_filter_parser_error
                - yydestruct
                - event_filter_parser_error
                - malloc
                - yysyntax_error
                - 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
                - free
                - free
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1845,3'
              BranchSideFuncs:
                - free
                - free
                - yydestruct
        - Branch String:   'event-filter-parser.c:1839,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1839,17'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1839,15'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
        - Branch String:   'event-filter-parser.c:1839,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1839,15'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
            - BranchSide:      'event-filter-parser.c:1839,15'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
        - Branch String:   'event-filter-parser.c:1847,3'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1850,28'
              BranchSideFuncs:
                - yydestruct
                - 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
                - str_vprintfa
                - str_append.5139
                - str_append.5139
        - Branch String:   'event-log.c:146,38'
          Branch Sides:
            - BranchSide:      'event-log.c:146,42'
              BranchSideFuncs:
                - str_append.5139
                - str_append_str
                - str_vprintfa
                - str_append.5139
            - BranchSide:      'event-log.c:148,17'
              BranchSideFuncs:
                - str_append_str
                - str_vprintfa
                - str_append.5139
        - Branch String:   'event-log.c:146,6'
          Branch Sides:
            - BranchSide:      'event-log.c:147,14'
              BranchSideFuncs:
                - str_append_str
                - str_vprintfa
                - str_append.5139
            - BranchSide:      'event-log.c:148,17'
              BranchSideFuncs:
                - str_append_str
                - str_vprintfa
                - str_append.5139
        - Branch String:   'event-log.c:150,6'
          Branch Sides:
            - BranchSide:      'event-log.c:152,14'
              BranchSideFuncs:
                - str_append.5139
            - BranchSide:      'event-log.c:154,11'
              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.5138
                - str_insert.5138
                - strlen
                - event_get_log_message_str_out
                - str_c
                - str_len.5137
                - str_append.5139
                - str_truncate.5136
                - t_strdup
                - str_vprintfa
                - str_insert.5138
            - BranchSide:      'event-log.c:190,6'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
                - str_insert.5138
                - strlen
                - event_get_log_message_str_out
                - str_c
                - str_len.5137
                - str_append.5139
                - str_truncate.5136
                - t_strdup
                - str_vprintfa
        - Branch String:   'event-log.c:181,7'
          Branch Sides:
            - BranchSide:      'event-log.c:182,15'
              BranchSideFuncs:
                - str_insert.5138
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
                - str_insert.5138
                - strlen
                - event_get_log_message_str_out
                - str_c
                - str_len.5137
                - str_append.5139
                - str_truncate.5136
                - t_strdup
                - str_vprintfa
            - BranchSide:      'event-log.c:186,2'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
                - str_insert.5138
                - strlen
                - event_get_log_message_str_out
                - str_c
                - str_len.5137
                - str_append.5139
                - str_truncate.5136
                - t_strdup
                - str_vprintfa
        - Branch String:   'event-log.c:190,6'
          Branch Sides:
            - BranchSide:      'event-log.c:195,34'
              BranchSideFuncs:
                - str_c
                - str_len.5137
                - str_append.5139
                - str_truncate.5136
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
                - str_insert.5138
                - 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.5138
                - str_insert.5138
                - 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.5136
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
                - str_insert.5138
                - strlen
                - event_get_log_message_str_out
                - t_strdup
            - BranchSide:      'event-log.c:199,22'
              BranchSideFuncs:
                - str_len.5137
                - str_append.5139
                - str_truncate.5136
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
                - str_insert.5138
                - 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.5136
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
                - str_insert.5138
                - strlen
                - event_get_log_message_str_out
                - t_strdup
            - BranchSide:      'event-log.c:202,15'
              BranchSideFuncs:
                - str_append.5139
                - str_truncate.5136
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
                - str_insert.5138
                - 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.5136
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
                - str_insert.5138
                - strlen
                - event_get_log_message_str_out
            - BranchSide:      'event-log.c:219,16'
              BranchSideFuncs:
                - str_truncate.5136
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
                - str_insert.5138
                - 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.5138
                - str_insert.5138
                - 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.5138
                - str_insert.5138
                - 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.5138
                - str_insert.5138
            - BranchSide:      'event-log.c:233,6'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
                - str_insert.5138
        - 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.5138
                - str_insert.5138
            - 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.5138
                - str_insert.5138
        - 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.5138
                - str_insert.5138
            - BranchSide:      'event-log.c:241,6'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
        - Branch String:   'event-log.c:234,33'
          Branch Sides:
            - BranchSide:      'event-log.c:234,36'
              BranchSideFuncs:
                - str_insert.5138
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
            - BranchSide:      'event-log.c:235,15'
              BranchSideFuncs:
                - str_insert.5138
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
        - Branch String:   'event-log.c:234,7'
          Branch Sides:
            - BranchSide:      'event-log.c:235,15'
              BranchSideFuncs:
                - str_insert.5138
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
            - BranchSide:      'event-log.c:237,14'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5138
        - Branch String:   'event-log.c:241,6'
          Branch Sides:
            - BranchSide:      'event-log.c:242,33'
              BranchSideFuncs:
                - event_get_log_message_str_out
                - str_insert.5138
            - 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.5138
            - 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.5138
            - 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: 472
      functionLinenumberEnd: 473
      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: 477
      functionLinenumberEnd: 480
      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:478,2'
          Branch Sides:
            - BranchSide:      'event-log.c:478,2'
              BranchSideFuncs:
                - event_filter_unref
            - BranchSide:      'event-log.c:478,2'
              BranchSideFuncs:
                - event_filter_unref
      Callsites:
        - Src:             'event-log.c:478,2'
          Dst:             event_filter_unref
    - functionName:    event_set_global_core_log_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 464
      functionLinenumberEnd: 469
      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:465,2'
          Dst:             event_unset_global_core_log_filter
        - Src:             'event-log.c:467,2'
          Dst:             event_filter_ref
    - functionName:    event_get_global_debug_send_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 454
      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: 458
      functionLinenumberEnd: 461
      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:459,2'
          Branch Sides:
            - BranchSide:      'event-log.c:459,2'
              BranchSideFuncs:
                - event_filter_unref
            - BranchSide:      'event-log.c:459,2'
              BranchSideFuncs:
                - event_filter_unref
      Callsites:
        - Src:             'event-log.c:459,2'
          Dst:             event_filter_unref
    - functionName:    event_set_global_debug_send_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 450
      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:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'event-log.c:446,2'
          Dst:             event_unset_global_debug_send_filter
        - Src:             'event-log.c:448,2'
          Dst:             event_filter_ref
    - functionName:    event_get_global_debug_log_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 435
      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: 439
      functionLinenumberEnd: 442
      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:440,2'
          Branch Sides:
            - BranchSide:      'event-log.c:440,2'
              BranchSideFuncs:
                - event_filter_unref
            - BranchSide:      'event-log.c:440,2'
              BranchSideFuncs:
                - event_filter_unref
      Callsites:
        - Src:             'event-log.c:440,2'
          Dst:             event_filter_unref
    - functionName:    event_set_global_debug_log_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 426
      functionLinenumberEnd: 431
      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:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'event-log.c:427,2'
          Dst:             event_unset_global_debug_log_filter
        - Src:             'event-log.c:429,2'
          Dst:             event_filter_ref
    - functionName:    event_unset_forced_debug
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 419
      functionLinenumberEnd: 422
      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:421,2'
          Dst:             event_recalculate_debug_level
    - functionName:    event_recalculate_debug_level
      functionSourceFile: '/src/dovecot/src/lib/./lib-event-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 113
      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: 411
      functionLinenumberEnd: 415
      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:412,6'
          Branch Sides:
            - BranchSide:      'event-log.c:412,6'
              BranchSideFuncs:
                - event_recalculate_debug_level
            - BranchSide:      'event-log.c:413,3'
              BranchSideFuncs:
                - event_recalculate_debug_level
      Callsites:
        - Src:             'event-log.c:414,2'
          Dst:             event_recalculate_debug_level
    - functionName:    event_logv_params
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 384
      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:342,2'
          Branch Sides:
            - BranchSide:      'event-log.c:342,2'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5139
                - str_c
                - event_vsend
                - event_send
                - event_filter_match_source
                - i_panic
            - BranchSide:      'event-log.c:342,2'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5139
                - str_c
                - event_vsend
                - event_send
                - event_filter_match_source
                - i_panic
        - Branch String:   'event-log.c:342,2'
          Branch Sides:
            - BranchSide:      'event-log.c:342,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-log.c:344,6'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5139
                - str_c
                - event_vsend
                - event_send
                - event_filter_match_source
        - Branch String:   'event-log.c:344,37'
          Branch Sides:
            - BranchSide:      'event-log.c:345,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.5139
                - str_c
                - event_vsend
                - event_send
            - BranchSide:      'event-log.c:350,2'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5139
                - str_c
                - event_vsend
                - event_send
        - Branch String:   'event-log.c:344,6'
          Branch Sides:
            - BranchSide:      'event-log.c:348,21'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5139
                - str_c
                - event_vsend
                - event_send
            - BranchSide:      'event-log.c:350,2'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5139
                - str_c
                - event_vsend
                - event_send
        - Branch String:   'event-log.c:353,6'
          Branch Sides:
            - BranchSide:      'event-log.c:355,7'
              BranchSideFuncs:
                - str_vprintfa
                - str_c
                - event_send
                - abort
                - str_append.5139
                - str_c
                - event_vsend
                - event_send
            - BranchSide:      'event-log.c:364,13'
              BranchSideFuncs:
                - str_vprintfa
                - str_c
                - event_send
                - abort
                - str_append.5139
                - str_c
                - event_vsend
                - event_send
        - Branch String:   'event-log.c:355,36'
          Branch Sides:
            - BranchSide:      'event-log.c:355,47'
              BranchSideFuncs:
                - str_vprintfa
                - event_vsend
                - abort
            - BranchSide:      'event-log.c:362,8'
              BranchSideFuncs:
                - event_vsend
                - abort
        - Branch String:   'event-log.c:355,7'
          Branch Sides:
            - BranchSide:      'event-log.c:356,12'
              BranchSideFuncs:
                - event_vsend
                - abort
            - BranchSide:      'event-log.c:362,8'
              BranchSideFuncs:
                - event_vsend
                - abort
        - Branch String:   'event-log.c:362,7'
          Branch Sides:
            - BranchSide:      'event-log.c:363,16'
              BranchSideFuncs:
                - abort
            - BranchSide:      'event-log.c:364,2'
              BranchSideFuncs:
                - abort
        - Branch String:   'event-log.c:364,13'
          Branch Sides:
            - BranchSide:      'event-log.c:366,2'
              BranchSideFuncs:
                - abort
            - BranchSide:      'event-log.c:366,20'
              BranchSideFuncs:
                - str_vprintfa
                - str_c
                - event_send
                - abort
                - str_append.5139
                - str_c
                - event_vsend
                - event_send
        - Branch String:   'event-log.c:366,13'
          Branch Sides:
            - BranchSide:      'event-log.c:368,33'
              BranchSideFuncs:
                - str_c
                - event_vsend
                - abort
                - event_send
            - BranchSide:      'event-log.c:376,14'
              BranchSideFuncs:
                - str_vprintfa
                - str_c
                - event_send
                - abort
                - str_append.5139
        - Branch String:   'event-log.c:370,7'
          Branch Sides:
            - BranchSide:      'event-log.c:371,15'
              BranchSideFuncs:
                - event_send
                - abort
            - BranchSide:      'event-log.c:373,16'
              BranchSideFuncs:
                - event_vsend
                - abort
        - Branch String:   'event-log.c:376,7'
          Branch Sides:
            - BranchSide:      'event-log.c:377,22'
              BranchSideFuncs:
                - str_append.5139
                - str_c
                - event_send
                - abort
            - BranchSide:      'event-log.c:379,24'
              BranchSideFuncs:
                - str_vprintfa
                - str_c
                - event_send
                - abort
        - Branch String:   'event-log.c:382,6'
          Branch Sides:
            - BranchSide:      'event-log.c:383,3'
              BranchSideFuncs:
                - abort
            - BranchSide:      'event-log.c:384,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:342,2'
          Dst:             i_panic
        - Src:             'event-log.c:345,6'
          Dst:             event_filter_match_source
        - Src:             'event-log.c:352,22'
          Dst:             t_str_new
        - Src:             'event-log.c:353,7'
          Dst:             event_get_log_message
        - Src:             'event-log.c:359,4'
          Dst:             str_vprintfa
        - Src:             'event-log.c:363,4'
          Dst:             event_vsend
        - Src:             'event-log.c:368,20'
          Dst:             str_c
        - Src:             'event-log.c:371,4'
          Dst:             event_send
        - Src:             'event-log.c:373,4'
          Dst:             event_vsend
        - Src:             'event-log.c:377,4'
          Dst:             str_append
        - Src:             'event-log.c:379,4'
          Dst:             str_vprintfa
        - Src:             'event-log.c:380,33'
          Dst:             str_c
        - Src:             'event-log.c:380,3'
          Dst:             event_send
        - Src:             'event-log.c:383,3'
          Dst:             abort
    - functionName:    event_want_log_level
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - event
        - level
        - source_filename
        - source_linenum
      BBCount:         23
      ICount:          150
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - event_filter_match_source
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-log.c:277,6'
          Branch Sides:
            - BranchSide:      'event-log.c:279,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:282,6'
              BranchSideFuncs:
                - event_filter_match_source
                - event_filter_match_source
        - Branch String:   'event-log.c:282,6'
          Branch Sides:
            - BranchSide:      'event-log.c:287,10'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:290,3'
              BranchSideFuncs:
                - event_filter_match_source
                - event_filter_match_source
        - Branch String:   'event-log.c:292,6'
          Branch Sides:
            - BranchSide:      'event-log.c:294,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:295,13'
              BranchSideFuncs:
                - event_filter_match_source
                - event_filter_match_source
        - Branch String:   'event-log.c:295,45'
          Branch Sides:
            - BranchSide:      'event-log.c:296,32'
              BranchSideFuncs:
                - event_filter_match_source
                - event_filter_match_source
            - BranchSide:      'event-log.c:300,13'
              BranchSideFuncs:
                - event_filter_match_source
        - Branch String:   'event-log.c:295,13'
          Branch Sides:
            - BranchSide:      'event-log.c:299,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:300,13'
              BranchSideFuncs:
                - event_filter_match_source
        - Branch String:   'event-log.c:300,44'
          Branch Sides:
            - BranchSide:      'event-log.c:301,32'
              BranchSideFuncs:
                - event_filter_match_source
            - BranchSide:      'event-log.c:306,3'
              BranchSideFuncs: []
        - Branch String:   'event-log.c:300,13'
          Branch Sides:
            - BranchSide:      'event-log.c:304,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:306,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:296,6'
          Dst:             event_filter_match_source
        - Src:             'event-log.c:301,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: 388
      functionLinenumberEnd: 408
      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:393,6'
          Branch Sides:
            - BranchSide:      'event-log.c:393,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:394,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:391,18'
          Dst:             __errno_location
        - Src:             'event-log.c:394,3'
          Dst:             event_set_source
        - Src:             'event-log.c:398,8'
          Dst:             event_want_log_level
        - Src:             'event-log.c:402,2'
          Dst:             event_ref
        - Src:             'event-log.c:403,2'
          Dst:             event_logv_params
        - Src:             'event-log.c:404,2'
          Dst:             event_set_source
        - Src:             'event-log.c:406,2'
          Dst:             event_unref
        - Src:             'event-log.c:407,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:    4
      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: 315
      functionLinenumberEnd: 329
      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:316,6'
          Branch Sides:
            - BranchSide:      'event-log.c:317,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:320,6'
              BranchSideFuncs:
                - event_filter_match_source
        - Branch String:   'event-log.c:320,6'
          Branch Sides:
            - BranchSide:      'event-log.c:321,26'
              BranchSideFuncs:
                - event_filter_match_source
            - BranchSide:      'event-log.c:328,2'
              BranchSideFuncs: []
        - Branch String:   'event-log.c:323,7'
          Branch Sides:
            - BranchSide:      'event-log.c:326,4'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:327,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:316,6'
          Dst:             event_want_log_level
        - Src:             'event-log.c:323,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:    2
      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:    57
      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: 770
      functionLinenumberEnd: 816
      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:789,6'
          Branch Sides:
            - BranchSide:      'failures.c:790,18'
              BranchSideFuncs:
                - str_len.5291
                - str_truncate.5290
                - str_c
                - strchr
                - str_append_data.5293
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_append_max
                - str_append_c.5294
            - BranchSide:      'failures.c:793,16'
              BranchSideFuncs:
                - str_len.5291
                - str_truncate.5290
                - str_c
                - strchr
                - str_append_data.5293
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_append_max
                - str_append_c.5294
        - Branch String:   'failures.c:790,18'
          Branch Sides:
            - BranchSide:      'failures.c:790,16'
              BranchSideFuncs:
                - str_len.5291
                - str_truncate.5290
                - str_c
                - strchr
                - str_append_data.5293
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_append_max
                - str_append_c.5294
            - BranchSide:      'failures.c:790,16'
              BranchSideFuncs:
                - str_len.5291
                - str_truncate.5290
                - str_c
                - strchr
                - str_append_data.5293
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_append_max
                - str_append_c.5294
        - Branch String:   'failures.c:796,2'
          Branch Sides:
            - BranchSide:      'failures.c:797,16'
              BranchSideFuncs:
                - str_truncate.5290
                - str_c
                - strchr
                - str_append_data.5293
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_len.5291
                - str_append_max
                - str_append_c.5294
            - BranchSide:      'failures.c:815,2'
              BranchSideFuncs: []
        - Branch String:   'failures.c:801,18'
          Branch Sides:
            - BranchSide:      'failures.c:801,30'
              BranchSideFuncs:
                - str_append_max
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_len.5291
                - str_truncate.5290
                - str_c
                - strchr
                - str_append_data.5293
            - BranchSide:      'failures.c:802,19'
              BranchSideFuncs:
                - str_append_max
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_len.5291
                - str_truncate.5290
                - str_c
                - strchr
                - str_append_data.5293
        - Branch String:   'failures.c:801,7'
          Branch Sides:
            - BranchSide:      'failures.c:802,19'
              BranchSideFuncs:
                - str_append_max
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_len.5291
                - str_truncate.5290
                - str_c
                - strchr
                - str_append_data.5293
            - BranchSide:      'failures.c:807,15'
              BranchSideFuncs:
                - str_append_data.5293
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_len.5291
                - str_truncate.5290
                - str_c
                - strchr
                - str_append_max
                - str_append_c.5294
        - Branch String:   'failures.c:810,7'
          Branch Sides:
            - BranchSide:      'failures.c:812,4'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:813,10'
              BranchSideFuncs:
                - str_len.5291
                - str_truncate.5290
                - str_c
                - strchr
                - str_append_data.5293
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_append_max
                - str_append_c.5294
      Callsites:
        - Src:             'failures.c:787,8'
          Dst:             t_str_new
        - Src:             'failures.c:788,23'
          Dst:             str_data
        - Src:             'failures.c:788,2'
          Dst:             str_append_data
        - Src:             'failures.c:796,15'
          Dst:             str_len
        - Src:             'failures.c:797,3'
          Dst:             str_truncate
        - Src:             'failures.c:798,22'
          Dst:             str_c
        - Src:             'failures.c:799,20'
          Dst:             strchr
        - Src:             'failures.c:802,4'
          Dst:             str_append_max
        - Src:             'failures.c:803,4'
          Dst:             str_append_c
        - Src:             'failures.c:808,4'
          Dst:             str_append_data
        - Src:             'failures.c:811,6'
          Dst:             str_data
        - Src:             'failures.c:811,21'
          Dst:             str_len
        - Src:             'failures.c:810,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: 372
      functionLinenumberEnd: 441
      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:379,17'
          Branch Sides:
            - BranchSide:      'failures.c:379,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:380,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:379,2'
          Branch Sides:
            - BranchSide:      'failures.c:381,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:439,6'
              BranchSideFuncs:
                - process_title_set
        - Branch String:   'failures.c:381,7'
          Branch Sides:
            - BranchSide:      'failures.c:383,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:387,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:387,7'
          Branch Sides:
            - BranchSide:      'failures.c:389,4'
              BranchSideFuncs:
                - __errno_location
                - process_title_set
            - BranchSide:      'failures.c:393,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:393,3'
          Branch Sides:
            - BranchSide:      'failures.c:405,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:421,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:434,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:405,8'
          Branch Sides:
            - BranchSide:      'failures.c:408,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:417,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:410,9'
          Branch Sides:
            - BranchSide:      'failures.c:411,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:414,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:421,8'
          Branch Sides:
            - BranchSide:      'failures.c:423,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:423,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:423,15'
          Branch Sides:
            - BranchSide:      'failures.c:426,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:429,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:439,6'
          Branch Sides:
            - BranchSide:      'failures.c:439,6'
              BranchSideFuncs:
                - process_title_set
            - BranchSide:      'failures.c:440,21'
              BranchSideFuncs:
                - process_title_set
      Callsites:
        - Src:             'failures.c:380,16'
          Dst:             write
        - Src:             'failures.c:389,4'
          Dst:             __errno_location
        - Src:             'failures.c:393,11'
          Dst:             __errno_location
        - Src:             'failures.c:409,26'
          Dst:             process_title_get
        - Src:             'failures.c:409,17'
          Dst:             t_strdup
        - Src:             'failures.c:413,14'
          Dst:             t_strdup_printf
        - Src:             'failures.c:415,5'
          Dst:             process_title_set
        - Src:             'failures.c:417,4'
          Dst:             fd_wait_writable
        - Src:             'failures.c:440,3'
          Dst:             process_title_set
    - functionName:    fd_wait_writable
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - fd
      BBCount:         8
      ICount:          45
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - poll
      functionUses:    1
      BranchProfiles:
        - Branch String:   'failures.c:364,28'
          Branch Sides:
            - BranchSide:      'failures.c:364,31'
              BranchSideFuncs:
                - __errno_location
                - abort
            - BranchSide:      'failures.c:364,28'
              BranchSideFuncs: []
        - Branch String:   'failures.c:364,6'
          Branch Sides:
            - BranchSide:      'failures.c:364,6'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:367,3'
              BranchSideFuncs:
                - abort
      Callsites:
        - Src:             'failures.c:364,6'
          Dst:             poll
        - Src:             'failures.c:364,31'
          Dst:             __errno_location
        - Src:             'failures.c:367,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: 727
      functionLinenumberEnd: 733
      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:730,8'
          Dst:             t_strdup_printf
        - Src:             'failures.c:733,8'
          Dst:             strlen
        - Src:             'failures.c:732,9'
          Dst:             log_fd_write
    - functionName:    internal_write
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 229
      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:198,6'
          Branch Sides:
            - BranchSide:      'failures.c:199,12'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_len.5291
                - str_vprintfa
                - str_len.5291
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5301
                - str_printfa
            - BranchSide:      'failures.c:202,14'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_len.5291
                - str_vprintfa
                - str_len.5291
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5301
                - str_printfa
                - i_failure_send_option_forced
        - Branch String:   'failures.c:200,7'
          Branch Sides:
            - BranchSide:      'failures.c:201,13'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_len.5291
                - str_vprintfa
                - str_len.5291
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5301
                - str_printfa
            - BranchSide:      'failures.c:202,2'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_len.5291
                - str_vprintfa
                - str_len.5291
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5301
                - str_printfa
        - Branch String:   'failures.c:203,7'
          Branch Sides:
            - BranchSide:      'failures.c:207,4'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:209,19'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_len.5291
                - str_vprintfa
                - str_len.5291
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5301
                - str_printfa
        - Branch String:   'failures.c:214,6'
          Branch Sides:
            - BranchSide:      'failures.c:215,15'
              BranchSideFuncs:
                - str_printfa
                - str_len.5291
                - str_vprintfa
                - str_len.5291
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5301
            - BranchSide:      'failures.c:216,6'
              BranchSideFuncs:
                - str_len.5291
                - str_vprintfa
                - str_len.5291
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5301
        - Branch String:   'failures.c:216,6'
          Branch Sides:
            - BranchSide:      'failures.c:217,14'
              BranchSideFuncs:
                - log_prefix_sanitize
                - str_append.5301
                - str_len.5291
                - str_vprintfa
                - str_len.5291
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
            - BranchSide:      'failures.c:218,30'
              BranchSideFuncs:
                - str_len.5291
                - str_vprintfa
                - str_len.5291
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
        - Branch String:   'failures.c:222,34'
          Branch Sides:
            - BranchSide:      'failures.c:222,50'
              BranchSideFuncs:
                - str_c
                - strchr
                - internal_send_split
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
            - BranchSide:      'failures.c:228,29'
              BranchSideFuncs:
                - internal_send_split
        - Branch String:   'failures.c:222,6'
          Branch Sides:
            - BranchSide:      'failures.c:224,3'
              BranchSideFuncs:
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
            - BranchSide:      'failures.c:228,29'
              BranchSideFuncs:
                - internal_send_split
      Callsites:
        - Src:             'failures.c:203,7'
          Dst:             i_failure_send_option_forced
        - Src:             'failures.c:212,9'
          Dst:             t_str_new
        - Src:             'failures.c:213,2'
          Dst:             str_printfa
        - Src:             'failures.c:215,3'
          Dst:             str_printfa
        - Src:             'failures.c:217,20'
          Dst:             log_prefix_sanitize
        - Src:             'failures.c:217,3'
          Dst:             str_append
        - Src:             'failures.c:218,22'
          Dst:             str_len
        - Src:             'failures.c:220,2'
          Dst:             str_vprintfa
        - Src:             'failures.c:222,6'
          Dst:             str_len
        - Src:             'failures.c:222,44'
          Dst:             str_c
        - Src:             'failures.c:222,37'
          Dst:             strchr
        - Src:             'failures.c:224,3'
          Dst:             str_append_c
        - Src:             'failures.c:226,9'
          Dst:             str_data
        - Src:             'failures.c:226,25'
          Dst:             str_len
        - Src:             'failures.c:225,10'
          Dst:             log_fd_write
        - Src:             'failures.c:228,9'
          Dst:             internal_send_split
    - functionName:    log_prefix_sanitize
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:76,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: 137
      functionLinenumberEnd: 183
      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:139,6'
          Branch Sides:
            - BranchSide:      'failures.c:140,7'
              BranchSideFuncs:
                - str_len.5291
                - str_vprintfa
                - i_unreached
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - i_panic
                - str_append.5301
                - log_prefix_sanitize
                - str_append.5301
            - BranchSide:      'failures.c:145,18'
              BranchSideFuncs:
                - log_prefix_add
                - str_len.5291
                - str_vprintfa
                - i_unreached
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - i_panic
        - Branch String:   'failures.c:140,7'
          Branch Sides:
            - BranchSide:      'failures.c:141,15'
              BranchSideFuncs:
                - log_prefix_sanitize
                - str_append.5301
                - str_len.5291
                - str_vprintfa
                - i_unreached
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - i_panic
            - BranchSide:      'failures.c:142,12'
              BranchSideFuncs:
                - str_len.5291
                - str_vprintfa
                - i_unreached
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - i_panic
                - str_append.5301
        - Branch String:   'failures.c:151,2'
          Branch Sides:
            - BranchSide:      'failures.c:153,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - i_panic
            - BranchSide:      'failures.c:156,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - i_panic
            - BranchSide:      'failures.c:159,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - i_panic
            - BranchSide:      'failures.c:162,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - i_panic
            - BranchSide:      'failures.c:166,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - i_panic
            - BranchSide:      'failures.c:166,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - i_panic
            - BranchSide:      'failures.c:170,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'failures.c:170,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'failures.c:173,2'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - i_panic
        - Branch String:   'failures.c:173,2'
          Branch Sides:
            - BranchSide:      'failures.c:174,21'
              BranchSideFuncs:
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - i_panic
            - BranchSide:      'failures.c:182,9'
              BranchSideFuncs:
                - str_c
                - syslog
        - Branch String:   'failures.c:178,3'
          Branch Sides:
            - BranchSide:      'failures.c:178,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'failures.c:179,14'
              BranchSideFuncs:
                - str_delete
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - i_panic
      Callsites:
        - Src:             'failures.c:138,19'
          Dst:             t_str_new
        - Src:             'failures.c:141,21'
          Dst:             log_prefix_sanitize
        - Src:             'failures.c:141,4'
          Dst:             str_append
        - Src:             'failures.c:143,4'
          Dst:             str_append
        - Src:             'failures.c:145,3'
          Dst:             log_prefix_add
        - Src:             'failures.c:147,22'
          Dst:             str_len
        - Src:             'failures.c:148,2'
          Dst:             str_vprintfa
        - Src:             'failures.c:170,3'
          Dst:             i_unreached
        - Src:             'failures.c:173,21'
          Dst:             str_c_modifiable
        - Src:             'failures.c:173,14'
          Dst:             strchr
        - Src:             'failures.c:174,25'
          Dst:             str_c_modifiable
        - Src:             'failures.c:176,23'
          Dst:             str_c
        - Src:             'failures.c:176,3'
          Dst:             syslog
        - Src:             'failures.c:178,3'
          Dst:             i_panic
        - Src:             'failures.c:179,3'
          Dst:             str_delete
        - Src:             'failures.c:182,22'
          Dst:             str_c
        - Src:             'failures.c:182,2'
          Dst:             syslog
    - functionName:    log_prefix_add
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 353
      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:338,6'
          Branch Sides:
            - BranchSide:      'failures.c:340,7'
              BranchSideFuncs:
                - str_append.5301
                - str_append.5301
            - BranchSide:      'failures.c:343,13'
              BranchSideFuncs:
                - log_prefix_sanitize
                - strlen
                - str_append_data.5293
                - str_append.5301
                - str_append.5301
                - i_panic
                - log_prefix_sanitize
                - str_append.5301
                - str_append.5301
        - Branch String:   'failures.c:340,7'
          Branch Sides:
            - BranchSide:      'failures.c:341,15'
              BranchSideFuncs:
                - str_append.5301
                - str_append.5301
            - BranchSide:      'failures.c:342,14'
              BranchSideFuncs:
                - str_append.5301
        - Branch String:   'failures.c:343,13'
          Branch Sides:
            - BranchSide:      'failures.c:344,14'
              BranchSideFuncs:
                - log_prefix_sanitize
                - str_append.5301
                - str_append.5301
            - BranchSide:      'failures.c:347,44'
              BranchSideFuncs:
                - log_prefix_sanitize
                - strlen
                - str_append_data.5293
                - str_append.5301
                - str_append.5301
                - i_panic
        - Branch String:   'failures.c:348,3'
          Branch Sides:
            - BranchSide:      'failures.c:348,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'failures.c:349,19'
              BranchSideFuncs:
                - str_append_data.5293
                - str_append.5301
                - str_append.5301
      Callsites:
        - Src:             'failures.c:341,4'
          Dst:             str_append
        - Src:             'failures.c:342,3'
          Dst:             str_append
        - Src:             'failures.c:344,19'
          Dst:             log_prefix_sanitize
        - Src:             'failures.c:344,3'
          Dst:             str_append
        - Src:             'failures.c:345,3'
          Dst:             str_append
        - Src:             'failures.c:347,24'
          Dst:             log_prefix_sanitize
        - Src:             'failures.c:348,3'
          Dst:             strlen
        - Src:             'failures.c:348,3'
          Dst:             i_panic
        - Src:             'failures.c:349,3'
          Dst:             str_append_data
        - Src:             'failures.c:350,3'
          Dst:             str_append
        - Src:             'failures.c:351,3'
          Dst:             str_append
    - functionName:    i_unreached
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 1012
      functionLinenumberEnd: 1014
      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:    67
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:1014,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: 515
      functionLinenumberEnd: 525
      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:    1140
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:520,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: 475
      functionLinenumberEnd: 480
      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:480,2'
          Dst:             fatal_handler_real
    - functionName:    fatal_handler_real
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 472
      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:469,44'
          Branch Sides:
            - BranchSide:      'failures.c:470,6'
              BranchSideFuncs:
                - default_fatal_finish
            - BranchSide:      'failures.c:472,23'
              BranchSideFuncs:
                - default_fatal_finish
        - Branch String:   'failures.c:469,6'
          Branch Sides:
            - BranchSide:      'failures.c:471,28'
              BranchSideFuncs:
                - default_fatal_finish
            - BranchSide:      'failures.c:472,23'
              BranchSideFuncs:
                - default_fatal_finish
      Callsites:
        - Src:             'failures.c:469,6'
          Dst:             common_handler
        - Src:             'failures.c:472,2'
          Dst:             default_fatal_finish
    - functionName:    common_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 276
      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:260,6'
          Branch Sides:
            - BranchSide:      'failures.c:263,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:265,10'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'failures.c:269,4'
          Branch Sides:
            - BranchSide:      'failures.c:269,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'failures.c:269,4'
              BranchSideFuncs: []
        - Branch String:   'failures.c:271,14'
          Branch Sides:
            - BranchSide:      'failures.c:271,17'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:274,10'
              BranchSideFuncs: []
        - Branch String:   'failures.c:271,6'
          Branch Sides:
            - BranchSide:      'failures.c:272,7'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:274,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'failures.c:267,2'
          Dst:             t_push
        - Src:             'failures.c:269,4'
          Dst:             t_pop
        - Src:             'failures.c:269,4'
          Dst:             i_panic
    - functionName:    default_fatal_finish
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 462
      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:451,30'
          Branch Sides:
            - BranchSide:      'failures.c:451,33'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
                - backtrace_get
                - i_error
            - BranchSide:      'failures.c:452,6'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
                - backtrace_get
                - i_error
        - Branch String:   'failures.c:451,59'
          Branch Sides:
            - BranchSide:      'failures.c:452,6'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
                - backtrace_get
                - i_error
            - BranchSide:      'failures.c:456,10'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
        - Branch String:   'failures.c:451,6'
          Branch Sides:
            - BranchSide:      'failures.c:453,7'
              BranchSideFuncs:
                - backtrace_get
                - getenv
                - failure_exit
                - getenv
                - abort
                - i_error
            - BranchSide:      'failures.c:456,10'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
        - Branch String:   'failures.c:453,7'
          Branch Sides:
            - BranchSide:      'failures.c:454,33'
              BranchSideFuncs:
                - i_error
                - getenv
                - failure_exit
                - getenv
                - abort
            - BranchSide:      'failures.c:455,2'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
        - Branch String:   'failures.c:458,29'
          Branch Sides:
            - BranchSide:      'failures.c:458,32'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:460,3'
              BranchSideFuncs:
                - abort
        - Branch String:   'failures.c:458,61'
          Branch Sides:
            - BranchSide:      'failures.c:459,7'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:460,3'
              BranchSideFuncs:
                - abort
        - Branch String:   'failures.c:459,32'
          Branch Sides:
            - BranchSide:      'failures.c:459,35'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - abort
            - BranchSide:      'failures.c:462,16'
              BranchSideFuncs:
                - failure_exit
        - Branch String:   'failures.c:458,6'
          Branch Sides:
            - BranchSide:      'failures.c:460,3'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:462,16'
              BranchSideFuncs:
                - failure_exit
      Callsites:
        - Src:             'failures.c:453,7'
          Dst:             backtrace_get
        - Src:             'failures.c:454,4'
          Dst:             i_error
        - Src:             'failures.c:458,32'
          Dst:             getenv
        - Src:             'failures.c:459,35'
          Dst:             getenv
        - Src:             'failures.c:460,3'
          Dst:             abort
        - Src:             'failures.c:462,3'
          Dst:             failure_exit
    - functionName:    i_error
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
      functionUses:    100
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:564,18'
          Dst:             __errno_location
        - Src:             'failures.c:571,2'
          Dst:             __errno_location
    - functionName:    failure_exit
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 313
      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:309,36'
          Branch Sides:
            - BranchSide:      'failures.c:309,40'
              BranchSideFuncs:
                - lib_exit
            - BranchSide:      'failures.c:313,11'
              BranchSideFuncs:
                - lib_exit
        - Branch String:   'failures.c:309,6'
          Branch Sides:
            - BranchSide:      'failures.c:310,12'
              BranchSideFuncs:
                - lib_exit
            - BranchSide:      'failures.c:313,11'
              BranchSideFuncs:
                - lib_exit
      Callsites:
        - Src:             'failures.c:313,2'
          Dst:             lib_exit
    - functionName:    default_error_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 489
      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:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:488,2'
          Dst:             error_handler_real
    - functionName:    error_handler_real
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 285
      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:281,6'
          Branch Sides:
            - BranchSide:      'failures.c:282,19'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:283,6'
              BranchSideFuncs:
                - abort
        - Branch String:   'failures.c:283,34'
          Branch Sides:
            - BranchSide:      'failures.c:283,37'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:283,34'
              BranchSideFuncs: []
        - Branch String:   'failures.c:283,6'
          Branch Sides:
            - BranchSide:      'failures.c:283,6'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:284,3'
              BranchSideFuncs:
                - abort
      Callsites:
        - Src:             'failures.c:281,6'
          Dst:             common_handler
        - Src:             'failures.c:284,3'
          Dst:             abort
    - functionName:    default_write
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 115
      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:92,2'
          Branch Sides:
            - BranchSide:      'failures.c:94,8'
              BranchSideFuncs:
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_c
                - str_data.5292
                - log_fd_write
                - str_delete
            - BranchSide:      'failures.c:97,8'
              BranchSideFuncs:
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_c
                - str_data.5292
                - log_fd_write
                - str_delete
            - BranchSide:      'failures.c:100,8'
              BranchSideFuncs:
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_c
                - str_data.5292
                - log_fd_write
                - str_delete
        - Branch String:   'failures.c:105,2'
          Branch Sides:
            - BranchSide:      'failures.c:106,21'
              BranchSideFuncs:
                - str_c
                - str_data.5292
                - log_fd_write
                - str_delete
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
            - BranchSide:      'failures.c:113,2'
              BranchSideFuncs:
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
        - Branch String:   'failures.c:107,7'
          Branch Sides:
            - BranchSide:      'failures.c:108,4'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:110,14'
              BranchSideFuncs:
                - str_delete
                - str_c
                - strchr
                - str_append_c.5294
                - str_data.5292
                - str_len.5291
                - log_fd_write
                - str_c
                - str_data.5292
                - log_fd_write
      Callsites:
        - Src:             'failures.c:83,19'
          Dst:             t_str_new
        - Src:             'failures.c:84,2'
          Dst:             log_timestamp_add
        - Src:             'failures.c:85,2'
          Dst:             log_prefix_add
        - Src:             'failures.c:86,22'
          Dst:             str_len
        - Src:             'failures.c:89,21'
          Dst:             printf_format_fix
        - Src:             'failures.c:89,2'
          Dst:             str_vprintfa
        - Src:             'failures.c:105,21'
          Dst:             str_c
        - Src:             'failures.c:105,14'
          Dst:             strchr
        - Src:             'failures.c:106,25'
          Dst:             str_c
        - Src:             'failures.c:107,24'
          Dst:             str_data
        - Src:             'failures.c:107,7'
          Dst:             log_fd_write
        - Src:             'failures.c:110,3'
          Dst:             str_delete
        - Src:             'failures.c:113,2'
          Dst:             str_append_c
        - Src:             'failures.c:114,26'
          Dst:             str_data
        - Src:             'failures.c:114,42'
          Dst:             str_len
        - Src:             'failures.c:114,9'
          Dst:             log_fd_write
    - functionName:    default_on_handler_failure
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 130
      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:120,2'
          Branch Sides:
            - BranchSide:      'failures.c:122,12'
              BranchSideFuncs:
                - i_fatal_status
            - BranchSide:      'failures.c:128,11'
              BranchSideFuncs:
                - i_fatal_status
            - BranchSide:      'failures.c:130,3'
              BranchSideFuncs:
                - failure_exit
      Callsites:
        - Src:             'failures.c:127,3'
          Dst:             i_fatal_status
        - Src:             'failures.c:130,3'
          Dst:             failure_exit
    - functionName:    i_fatal_status
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 557
      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:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:551,2'
          Dst:             lib_set_clean_exit
    - functionName:    log_timestamp_add
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 334
      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:322,6'
          Branch Sides:
            - BranchSide:      'failures.c:322,6'
              BranchSideFuncs:
                - get_log_stamp_format
                - strftime
                - str_append.5301
                - i_gettimeofday
                - localtime
            - BranchSide:      'failures.c:323,7'
              BranchSideFuncs:
                - get_log_stamp_format
                - strftime
                - str_append.5301
                - i_gettimeofday
                - localtime
        - Branch String:   'failures.c:323,7'
          Branch Sides:
            - BranchSide:      'failures.c:324,4'
              BranchSideFuncs:
                - i_gettimeofday
                - localtime
                - get_log_stamp_format
                - strftime
                - str_append.5301
            - BranchSide:      'failures.c:327,18'
              BranchSideFuncs:
                - get_log_stamp_format
                - strftime
                - str_append.5301
        - Branch String:   'failures.c:330,7'
          Branch Sides:
            - BranchSide:      'failures.c:332,15'
              BranchSideFuncs:
                - str_append.5301
            - BranchSide:      'failures.c:333,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'failures.c:324,4'
          Dst:             i_gettimeofday
        - Src:             'failures.c:325,9'
          Dst:             localtime
        - Src:             'failures.c:331,9'
          Dst:             get_log_stamp_format
        - Src:             'failures.c:330,7'
          Dst:             strftime
        - Src:             'failures.c:332,4'
          Dst:             str_append
    - functionName:    get_log_stamp_format
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 303
      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:299,6'
          Branch Sides:
            - BranchSide:      'failures.c:300,10'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:301,37'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'failures.c:301,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: 984
      functionLinenumberEnd: 1009
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         27
      ICount:          109
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - i_close_fd_path
        - log_fd_can_close
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'failures.c:985,6'
          Branch Sides:
            - BranchSide:      'failures.c:985,6'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
            - BranchSide:      'failures.c:985,6'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
        - Branch String:   'failures.c:985,34'
          Branch Sides:
            - BranchSide:      'failures.c:985,37'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
            - BranchSide:      'failures.c:986,16'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
        - Branch String:   'failures.c:985,6'
          Branch Sides:
            - BranchSide:      'failures.c:986,16'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
            - BranchSide:      'failures.c:988,6'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
        - Branch String:   'failures.c:988,6'
          Branch Sides:
            - BranchSide:      'failures.c:989,15'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
            - BranchSide:      'failures.c:991,23'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
        - Branch String:   'failures.c:991,6'
          Branch Sides:
            - BranchSide:      'failures.c:992,3'
              BranchSideFuncs:
                - i_close_fd_path
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - i_close_fd_path
                - i_close_fd_path
            - BranchSide:      'failures.c:996,23'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - 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
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - i_close_fd_path
            - BranchSide:      'failures.c:1001,23'
              BranchSideFuncs:
                - log_fd_can_close
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
                - i_close_fd_path
        - Branch String:   'failures.c:1001,6'
          Branch Sides:
            - BranchSide:      'failures.c:1002,3'
              BranchSideFuncs:
                - i_close_fd_path
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
            - BranchSide:      'failures.c:1006,2'
              BranchSideFuncs:
                - p_free_internal.5339
                - p_free_internal.5339
                - p_free_internal.5339
      Callsites:
        - Src:             'failures.c:991,6'
          Dst:             log_fd_can_close
        - Src:             'failures.c:992,3'
          Dst:             i_close_fd_path
        - 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,2'
          Dst:             p_free_internal
        - Src:             'failures.c:1007,2'
          Dst:             p_free_internal
        - Src:             'failures.c:1008,2'
          Dst:             p_free_internal
    - functionName:    log_fd_can_close
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 70
      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:70,29'
          Branch Sides:
            - BranchSide:      'failures.c:70,32'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:70,29'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_set_failure_exit_callback
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 979
      functionLinenumberEnd: 981
      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: 974
      functionLinenumberEnd: 976
      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:975,2'
          Dst:             i_failure_send_option
    - functionName:    i_failure_send_option
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 737
      functionLinenumberEnd: 740
      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:738,6'
          Branch Sides:
            - BranchSide:      'failures.c:738,6'
              BranchSideFuncs:
                - i_failure_send_option_forced
            - BranchSide:      'failures.c:739,38'
              BranchSideFuncs:
                - i_failure_send_option_forced
      Callsites:
        - Src:             'failures.c:739,9'
          Dst:             i_failure_send_option_forced
    - functionName:    i_internal_error_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 897
      functionLinenumberEnd: 901
      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:900,2'
          Dst:             error_handler_real
    - functionName:    internal_on_handler_failure
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 233
      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:233,2'
          Dst:             failure_exit
    - functionName:    i_set_failure_send_ip
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 969
      functionLinenumberEnd: 971
      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:970,30'
          Dst:             net_ip2addr
        - Src:             'failures.c:970,2'
          Dst:             i_failure_send_option
    - functionName:    i_set_failure_timestamp_format
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 953
      functionLinenumberEnd: 966
      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:    2
      BranchProfiles:
        - Branch String:   'failures.c:960,6'
          Branch Sides:
            - BranchSide:      'failures.c:961,31'
              BranchSideFuncs:
                - i_strdup
            - BranchSide:      'failures.c:963,37'
              BranchSideFuncs:
                - i_strdup_until
                - i_strdup
      Callsites:
        - Src:             'failures.c:956,2'
          Dst:             p_free_internal
        - Src:             'failures.c:957,2'
          Dst:             p_free_internal
        - Src:             'failures.c:959,6'
          Dst:             strstr
        - Src:             'failures.c:961,22'
          Dst:             i_strdup
        - Src:             'failures.c:963,22'
          Dst:             i_strdup_until
        - Src:             'failures.c:964,29'
          Dst:             i_strdup
    - functionName:    i_failure_have_stdout_logs
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 946
      functionLinenumberEnd: 949
      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:947,33'
          Branch Sides:
            - BranchSide:      'failures.c:947,33'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:948,3'
              BranchSideFuncs: []
        - Branch String:   'failures.c:948,32'
          Branch Sides:
            - BranchSide:      'failures.c:948,32'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:949,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_set_debug_file
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 937
      functionLinenumberEnd: 943
      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:    1
      BranchProfiles:
        - Branch String:   'failures.c:938,29'
          Branch Sides:
            - BranchSide:      'failures.c:938,32'
              BranchSideFuncs:
                - open_log_file
            - BranchSide:      'failures.c:939,16'
              BranchSideFuncs:
                - open_log_file
        - Branch String:   'failures.c:938,6'
          Branch Sides:
            - BranchSide:      'failures.c:938,6'
              BranchSideFuncs:
                - open_log_file
            - BranchSide:      'failures.c:939,16'
              BranchSideFuncs:
                - open_log_file
      Callsites:
        - Src:             'failures.c:941,2'
          Dst:             open_log_file
    - functionName:    open_log_file
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 697
      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:672,6'
          Branch Sides:
            - BranchSide:      'failures.c:673,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:679,6'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - open
                - fd_close_on_exec
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
        - Branch String:   'failures.c:673,7'
          Branch Sides:
            - BranchSide:      'failures.c:674,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:677,2'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - open
                - fd_close_on_exec
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
        - Branch String:   'failures.c:679,19'
          Branch Sides:
            - BranchSide:      'failures.c:679,29'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:680,4'
              BranchSideFuncs: []
        - Branch String:   'failures.c:679,6'
          Branch Sides:
            - BranchSide:      'failures.c:680,4'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:681,18'
              BranchSideFuncs:
                - strcmp
                - open
                - fd_close_on_exec
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
        - Branch String:   'failures.c:681,11'
          Branch Sides:
            - BranchSide:      'failures.c:682,4'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:684,14'
              BranchSideFuncs:
                - open
                - fd_close_on_exec
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
        - Branch String:   'failures.c:685,7'
          Branch Sides:
            - BranchSide:      'failures.c:686,5'
              BranchSideFuncs:
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
            - BranchSide:      'failures.c:695,21'
              BranchSideFuncs:
                - fd_close_on_exec
        - Branch String:   'failures.c:690,8'
          Branch Sides:
            - BranchSide:      'failures.c:691,5'
              BranchSideFuncs:
                - failure_exit
            - BranchSide:      'failures.c:693,41'
              BranchSideFuncs:
                - i_fatal_status
      Callsites:
        - Src:             'failures.c:672,6'
          Dst:             log_fd_can_close
        - Src:             'failures.c:673,7'
          Dst:             close
        - Src:             'failures.c:674,10'
          Dst:             t_strdup_printf
        - Src:             'failures.c:675,41'
          Dst:             strlen
        - Src:             'failures.c:675,10'
          Dst:             write_full
        - Src:             'failures.c:679,22'
          Dst:             strcmp
        - Src:             'failures.c:681,11'
          Dst:             strcmp
        - Src:             'failures.c:684,9'
          Dst:             open
        - Src:             'failures.c:687,10'
          Dst:             t_strdup_printf
        - Src:             'failures.c:689,41'
          Dst:             strlen
        - Src:             'failures.c:689,10'
          Dst:             write_full
        - Src:             'failures.c:691,5'
          Dst:             failure_exit
        - Src:             'failures.c:693,5'
          Dst:             i_fatal_status
        - Src:             'failures.c:695,3'
          Dst:             fd_close_on_exec
    - functionName:    i_set_info_file
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 924
      functionLinenumberEnd: 934
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_set_debug_handler
        - open_log_file
      functionUses:    1
      BranchProfiles:
        - Branch String:   'failures.c:925,6'
          Branch Sides:
            - BranchSide:      'failures.c:925,6'
              BranchSideFuncs:
                - open_log_file
                - i_set_debug_handler
            - BranchSide:      'failures.c:926,15'
              BranchSideFuncs:
                - open_log_file
                - i_set_debug_handler
      Callsites:
        - Src:             'failures.c:928,2'
          Dst:             open_log_file
        - Src:             'failures.c:933,2'
          Dst:             i_set_debug_handler
        - Src:             'failures.c:933,2'
          Dst:             default_error_handler
    - functionName:    i_set_debug_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 627
      functionLinenumberEnd: 629
      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: 919
      functionLinenumberEnd: 921
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ignore
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_failure_handler_is_internal
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 913
      functionLinenumberEnd: 915
      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:914,46'
          Branch Sides:
            - BranchSide:      'failures.c:914,46'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:915,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_internal_fatal_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 884
      functionLinenumberEnd: 889
      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:889,2'
          Dst:             fatal_handler_real
    - functionName:    i_set_failure_internal
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 904
      functionLinenumberEnd: 910
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fd_set_nonblock
        - i_set_debug_handler
        - i_set_error_handler
        - i_set_fatal_handler
        - i_set_info_handler
      functionUses:    2
      BranchProfiles:
        - Branch String:   'failures.c:905,2'
          Branch Sides:
            - BranchSide:      'failures.c:905,2'
              BranchSideFuncs:
                - fd_set_nonblock
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
            - BranchSide:      'failures.c:905,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:905,2'
          Dst:             fd_set_nonblock
        - Src:             'failures.c:906,2'
          Dst:             i_set_fatal_handler
        - Src:             'failures.c:906,2'
          Dst:             i_internal_fatal_handler
        - Src:             'failures.c:907,2'
          Dst:             i_set_error_handler
        - Src:             'failures.c:907,2'
          Dst:             i_internal_error_handler
        - Src:             'failures.c:908,2'
          Dst:             i_set_info_handler
        - Src:             'failures.c:908,2'
          Dst:             i_internal_error_handler
        - Src:             'failures.c:909,2'
          Dst:             i_set_debug_handler
        - Src:             'failures.c:909,2'
          Dst:             i_internal_error_handler
    - functionName:    i_set_fatal_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 611
      functionLinenumberEnd: 613
      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_error_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getenv
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:617,22'
          Dst:             getenv
    - functionName:    i_set_info_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 624
      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: 821
      functionLinenumberEnd: 840
      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:822,6'
          Branch Sides:
            - BranchSide:      'failures.c:823,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:825,28'
              BranchSideFuncs:
                - i_warning
                - i_warning
        - Branch String:   'failures.c:826,6'
          Branch Sides:
            - BranchSide:      'failures.c:827,3'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'failures.c:830,10'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'failures.c:832,6'
          Branch Sides:
            - BranchSide:      'failures.c:833,50'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'failures.c:836,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'failures.c:827,3'
          Dst:             i_warning
        - Src:             'failures.c:833,3'
          Dst:             i_warning
    - functionName:    i_warning
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 584
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
      functionUses:    30
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:576,18'
          Dst:             __errno_location
        - Src:             'failures.c:583,2'
          Dst:             __errno_location
    - functionName:    i_failure_parse_line
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 843
      functionLinenumberEnd: 881
      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:847,6'
          Branch Sides:
            - BranchSide:      'failures.c:850,3'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
            - BranchSide:      'failures.c:855,7'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
        - Branch String:   'failures.c:857,22'
          Branch Sides:
            - BranchSide:      'failures.c:857,26'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
            - BranchSide:      'failures.c:857,2'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
        - Branch String:   'failures.c:857,2'
          Branch Sides:
            - BranchSide:      'failures.c:858,18'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
            - BranchSide:      'failures.c:861,7'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
        - Branch String:   'failures.c:861,6'
          Branch Sides:
            - BranchSide:      'failures.c:863,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:866,6'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
        - Branch String:   'failures.c:868,6'
          Branch Sides:
            - BranchSide:      'failures.c:869,22'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
            - BranchSide:      'failures.c:880,18'
              BranchSideFuncs: []
        - Branch String:   'failures.c:869,65'
          Branch Sides:
            - BranchSide:      'failures.c:870,7'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:872,3'
              BranchSideFuncs: []
        - Branch String:   'failures.c:869,7'
          Branch Sides:
            - BranchSide:      'failures.c:872,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:873,8'
              BranchSideFuncs:
                - strlen
      Callsites:
        - Src:             'failures.c:847,7'
          Dst:             line_parse_prefix
        - Src:             'failures.c:869,7'
          Dst:             str_parse_uint
        - Src:             'failures.c:874,34'
          Dst:             strlen
    - functionName:    i_get_failure_prefix
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 765
      functionLinenumberEnd: 766
      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:766,9'
          Branch Sides:
            - BranchSide:      'failures.c:766,30'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:766,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_unset_failure_prefix
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 758
      functionLinenumberEnd: 762
      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:759,2'
          Branch Sides:
            - BranchSide:      'failures.c:759,2'
              BranchSideFuncs:
                - p_free_internal.5339
                - i_strdup
            - BranchSide:      'failures.c:759,2'
              BranchSideFuncs:
                - p_free_internal.5339
                - i_strdup
      Callsites:
        - Src:             'failures.c:759,2'
          Dst:             p_free_internal
        - Src:             'failures.c:760,15'
          Dst:             i_strdup
    - functionName:    i_set_failure_prefix
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 743
      functionLinenumberEnd: 755
      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:    7
      BranchProfiles:
        - Branch String:   'failures.c:751,4'
          Branch Sides:
            - BranchSide:      'failures.c:751,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'failures.c:751,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'failures.c:747,2'
          Dst:             p_free_internal
        - Src:             'failures.c:748,2'
          Dst:             t_push
        - Src:             'failures.c:750,4'
          Dst:             t_strdup_vprintf
        - Src:             'failures.c:749,25'
          Dst:             log_prefix_sanitize
        - Src:             'failures.c:749,16'
          Dst:             i_strdup
        - Src:             'failures.c:751,4'
          Dst:             t_pop
        - Src:             'failures.c:751,4'
          Dst:             i_panic
    - functionName:    i_set_failure_file
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 700
      functionLinenumberEnd: 724
      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
        - 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:    3
      BranchProfiles:
        - Branch String:   'failures.c:703,36'
          Branch Sides:
            - BranchSide:      'failures.c:703,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:708,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:703,6'
          Branch Sides:
            - BranchSide:      'failures.c:704,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:708,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:704,7'
          Branch Sides:
            - BranchSide:      'failures.c:705,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:706,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:708,37'
          Branch Sides:
            - BranchSide:      'failures.c:708,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:708,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:708,68'
          Branch Sides:
            - BranchSide:      'failures.c:708,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:709,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:708,6'
          Branch Sides:
            - BranchSide:      'failures.c:708,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:710,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:710,7'
          Branch Sides:
            - BranchSide:      'failures.c:711,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:712,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:701,2'
          Dst:             i_set_failure_prefix
        - Src:             'failures.c:703,6'
          Dst:             log_fd_can_close
        - Src:             'failures.c:704,7'
          Dst:             close
        - Src:             'failures.c:705,4'
          Dst:             i_error
        - Src:             'failures.c:708,6'
          Dst:             log_fd_can_close
        - Src:             'failures.c:710,7'
          Dst:             close
        - Src:             'failures.c:711,4'
          Dst:             i_error
        - Src:             'failures.c:714,2'
          Dst:             open_log_file
        - Src:             'failures.c:720,2'
          Dst:             i_set_fatal_handler
        - Src:             'failures.c:720,2'
          Dst:             default_fatal_handler
        - Src:             'failures.c:721,2'
          Dst:             i_set_error_handler
        - Src:             'failures.c:721,2'
          Dst:             default_error_handler
        - Src:             'failures.c:722,2'
          Dst:             i_set_info_handler
        - Src:             'failures.c:722,2'
          Dst:             default_error_handler
        - Src:             'failures.c:723,2'
          Dst:             i_set_debug_handler
        - Src:             'failures.c:723,2'
          Dst:             default_error_handler
    - functionName:    i_set_failure_syslog
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ident
        - options
        - facility
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_set_debug_handler
        - i_set_error_handler
        - i_set_fatal_handler
        - i_set_info_handler
        - openlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:660,2'
          Dst:             openlog
        - Src:             'failures.c:662,2'
          Dst:             i_set_fatal_handler
        - Src:             'failures.c:662,2'
          Dst:             i_syslog_fatal_handler
        - Src:             'failures.c:663,2'
          Dst:             i_set_error_handler
        - Src:             'failures.c:663,2'
          Dst:             i_syslog_error_handler
        - Src:             'failures.c:664,2'
          Dst:             i_set_info_handler
        - Src:             'failures.c:664,2'
          Dst:             i_syslog_error_handler
        - Src:             'failures.c:665,2'
          Dst:             i_set_debug_handler
        - Src:             'failures.c:665,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: 642
      functionLinenumberEnd: 647
      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:647,2'
          Dst:             fatal_handler_real
    - functionName:    i_syslog_error_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 656
      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:655,2'
          Dst:             error_handler_real
    - functionName:    syslog_on_handler_failure
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 188
      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:188,2'
          Dst:             failure_exit
    - functionName:    i_get_failure_handlers
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 640
      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: 599
      functionLinenumberEnd: 608
      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:600,18'
          Dst:             __errno_location
        - Src:             'failures.c:607,2'
          Dst:             __errno_location
    - functionName:    i_info
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 587
      functionLinenumberEnd: 596
      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:588,18'
          Dst:             __errno_location
        - Src:             'failures.c:595,2'
          Dst:             __errno_location
    - functionName:    i_log_typev
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 513
      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:503,2'
          Branch Sides:
            - BranchSide:      'failures.c:505,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:508,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:511,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_log_type
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 498
      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:496,2'
          Dst:             i_log_typev
    - functionName:    i_fatal
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 541
      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:    89
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:535,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:    24
      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:    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:    10
      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:    10
      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:    10
      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_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
      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:    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:    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:    file_write_pid
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - fd
        - path
        - nfs_flush
      BBCount:         14
      ICount:          79
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - fdatasync
        - ftruncate
        - i_error
        - strlen
        - t_strdup_printf
        - write_full
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-dotlock.c:308,43'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:309,7'
              BranchSideFuncs:
                - ftruncate
                - i_error
            - BranchSide:      'file-dotlock.c:311,17'
              BranchSideFuncs:
                - ftruncate
                - i_error
        - Branch String:   'file-dotlock.c:309,17'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:309,30'
              BranchSideFuncs:
                - fdatasync
                - ftruncate
                - i_error
            - BranchSide:      'file-dotlock.c:316,2'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:308,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:311,17'
              BranchSideFuncs:
                - ftruncate
                - i_error
            - BranchSide:      'file-dotlock.c:316,2'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:311,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:312,40'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'file-dotlock.c:315,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:307,8'
          Dst:             t_strdup_printf
        - Src:             'file-dotlock.c:308,26'
          Dst:             strlen
        - Src:             'file-dotlock.c:308,6'
          Dst:             write_full
        - Src:             'file-dotlock.c:309,20'
          Dst:             fdatasync
        - Src:             'file-dotlock.c:311,7'
          Dst:             ftruncate
        - Src:             'file-dotlock.c:312,4'
          Dst:             i_error
    - functionName:    ftruncate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update_change_info
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - st
        - change
        - last_change_r
        - now
        - check_ctime
      BBCount:         35
      ICount:          245
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - gnu_dev_major
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-dotlock.c:140,32'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:140,36'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:143,24'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:140,36'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:140,36'
              BranchSideFuncs:
                - gnu_dev_minor
                - gnu_dev_minor
            - BranchSide:      'file-dotlock.c:143,24'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:140,71'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:141,7'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:143,24'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:141,37'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:141,40'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:142,6'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:141,53'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:142,6'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:143,24'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:142,36'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:142,39'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:143,24'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:140,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:143,24'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:163,2'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:145,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:150,18'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:154,8'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:150,38'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:151,6'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:152,20'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:151,34'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:151,38'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:152,5'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:150,18'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:152,20'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:152,5'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:154,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:155,21'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:156,17'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:140,36'
          Dst:             gnu_dev_major
        - Src:             'file-dotlock.c:140,36'
          Dst:             gnu_dev_major
        - Src:             'file-dotlock.c:140,36'
          Dst:             gnu_dev_minor
        - Src:             'file-dotlock.c:140,36'
          Dst:             gnu_dev_minor
    - functionName:    dotlock_override
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - lock_info
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_rand
        - i_sleep_usecs
        - i_unlink_if_exists
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-dotlock.c:195,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:196,3'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:201,6'
              BranchSideFuncs:
                - i_rand
                - i_sleep_usecs
        - Branch String:   'file-dotlock.c:201,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:202,17'
              BranchSideFuncs:
                - i_rand
                - i_sleep_usecs
            - BranchSide:      'file-dotlock.c:203,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:195,6'
          Dst:             i_unlink_if_exists
        - Src:             'file-dotlock.c:202,17'
          Dst:             i_rand
        - Src:             'file-dotlock.c:202,3'
          Dst:             i_sleep_usecs
    - functionName:    read_local_pid
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - lock_path
      BBCount:         19
      ICount:          125
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - i_close_fd_path
        - open
        - read
        - str_to_pid
        - strchr
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-dotlock.c:103,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:104,3'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:107,13'
              BranchSideFuncs:
                - read
                - i_close_fd_path
                - strchr
                - strcmp
                - str_to_pid
        - Branch String:   'file-dotlock.c:109,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:110,3'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:113,10'
              BranchSideFuncs:
                - strchr
                - strcmp
                - str_to_pid
        - Branch String:   'file-dotlock.c:113,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:114,6'
              BranchSideFuncs:
                - strchr
                - strcmp
                - str_to_pid
            - BranchSide:      'file-dotlock.c:115,6'
              BranchSideFuncs:
                - strchr
                - strcmp
                - str_to_pid
        - Branch String:   'file-dotlock.c:119,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:120,3'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:121,7'
              BranchSideFuncs:
                - strcmp
                - str_to_pid
        - Branch String:   'file-dotlock.c:124,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:125,3'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:127,17'
              BranchSideFuncs:
                - str_to_pid
        - Branch String:   'file-dotlock.c:127,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:128,3'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:129,6'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:129,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:130,3'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:131,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:102,7'
          Dst:             open
        - Src:             'file-dotlock.c:107,8'
          Dst:             read
        - Src:             'file-dotlock.c:108,2'
          Dst:             i_close_fd_path
        - Src:             'file-dotlock.c:118,9'
          Dst:             strchr
        - Src:             'file-dotlock.c:124,6'
          Dst:             strcmp
        - Src:             'file-dotlock.c:127,6'
          Dst:             str_to_pid
    - functionName:    update_lock_info
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - now
        - lock_info
        - changed_r
      BBCount:         13
      ICount:          115
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - i_error
        - nfs_flush_attr_cache_unlocked
        - nfs_flush_file_handle_cache
        - nfs_safe_lstat
        - update_change_info
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-dotlock.c:173,32'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:173,35'
              BranchSideFuncs:
                - nfs_safe_lstat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_unlocked
            - BranchSide:      'file-dotlock.c:178,2'
              BranchSideFuncs:
                - nfs_safe_lstat
                - update_change_info
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:173,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:174,31'
              BranchSideFuncs:
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_unlocked
                - nfs_safe_lstat
                - update_change_info
                - __errno_location
                - i_error
            - BranchSide:      'file-dotlock.c:178,2'
              BranchSideFuncs:
                - nfs_safe_lstat
                - update_change_info
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:179,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:180,7'
              BranchSideFuncs:
                - __errno_location
                - i_error
            - BranchSide:      'file-dotlock.c:187,40'
              BranchSideFuncs:
                - update_change_info
        - Branch String:   'file-dotlock.c:180,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:181,36'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'file-dotlock.c:184,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:174,3'
          Dst:             nfs_flush_file_handle_cache
        - Src:             'file-dotlock.c:175,3'
          Dst:             nfs_flush_attr_cache_unlocked
        - Src:             'file-dotlock.c:179,6'
          Dst:             nfs_safe_lstat
        - Src:             'file-dotlock.c:180,7'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:181,4'
          Dst:             i_error
        - Src:             'file-dotlock.c:187,15'
          Dst:             update_change_info
    - functionName:    dotlock_wait_end
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 426
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_loop_stop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'file-dotlock.c:427,2'
          Dst:             io_loop_stop
    - functionName:    try_create_lock_hardlink
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - lock_info
        - write_pid
        - tmp_path
        - now
      BBCount:         48
      ICount:          321
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - __errno_location
        - file_write_pid
        - fstat
        - i_close_fd_path
        - i_error
        - i_panic
        - i_unlink
        - nfs_safe_link
        - safe_mkstemp
        - str_append
        - str_append_c
        - str_append_data
        - str_c
        - str_printfa
        - str_truncate
        - strrchr
        - umask
        - utime
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-dotlock.c:327,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:329,3'
              BranchSideFuncs:
                - strrchr
                - str_truncate.5498
                - str_printfa
                - umask
                - safe_mkstemp
                - umask
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - str_c
                - file_write_pid
                - i_close_fd_path
                - str_append_data.5497
                - str_append_c.5496
                - str_append.5495
                - str_append_data.5497
                - str_append_c.5496
                - i_panic
            - BranchSide:      'file-dotlock.c:370,19'
              BranchSideFuncs:
                - fstat
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - utime
                - i_error
                - i_error
        - Branch String:   'file-dotlock.c:329,3'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:329,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'file-dotlock.c:331,15'
              BranchSideFuncs:
                - strrchr
                - str_truncate.5498
                - str_printfa
                - umask
                - safe_mkstemp
                - umask
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - str_c
                - file_write_pid
                - i_close_fd_path
                - str_append_data.5497
                - str_append_c.5496
                - str_append.5495
                - str_append_data.5497
                - str_append_c.5496
        - Branch String:   'file-dotlock.c:334,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:335,9'
              BranchSideFuncs:
                - str_append.5495
                - umask
                - safe_mkstemp
                - umask
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - str_c
                - file_write_pid
                - i_close_fd_path
                - str_append_data.5497
                - str_append_c.5496
            - BranchSide:      'file-dotlock.c:343,8'
              BranchSideFuncs:
                - str_printfa
                - umask
                - safe_mkstemp
                - umask
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - str_c
                - file_write_pid
                - i_close_fd_path
                - str_append_data.5497
                - str_append_c.5496
        - Branch String:   'file-dotlock.c:335,28'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:335,31'
              BranchSideFuncs:
                - str_append.5495
                - umask
                - safe_mkstemp
                - umask
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - str_c
                - file_write_pid
                - i_close_fd_path
                - str_append_data.5497
                - str_append_c.5496
            - BranchSide:      'file-dotlock.c:341,15'
              BranchSideFuncs:
                - str_append.5495
                - umask
                - safe_mkstemp
                - umask
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - str_c
                - file_write_pid
                - i_close_fd_path
        - Branch String:   'file-dotlock.c:335,8'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:337,21'
              BranchSideFuncs:
                - str_append_data.5497
                - str_append_c.5496
                - str_append.5495
                - umask
                - safe_mkstemp
                - umask
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - str_c
                - file_write_pid
                - i_close_fd_path
            - BranchSide:      'file-dotlock.c:341,15'
              BranchSideFuncs:
                - str_append.5495
                - umask
                - safe_mkstemp
                - umask
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - str_c
                - file_write_pid
                - i_close_fd_path
        - Branch String:   'file-dotlock.c:343,8'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:345,21'
              BranchSideFuncs:
                - str_append_data.5497
                - str_append_c.5496
                - str_printfa
                - umask
                - safe_mkstemp
                - umask
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - str_c
                - file_write_pid
                - i_close_fd_path
            - BranchSide:      'file-dotlock.c:349,16'
              BranchSideFuncs:
                - str_printfa
                - umask
                - safe_mkstemp
                - umask
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - str_c
                - file_write_pid
                - i_close_fd_path
        - Branch String:   'file-dotlock.c:357,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:358,4'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:360,7'
              BranchSideFuncs:
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - str_c
                - file_write_pid
                - i_close_fd_path
        - Branch String:   'file-dotlock.c:360,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:361,23'
              BranchSideFuncs:
                - str_c
                - file_write_pid
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - i_close_fd_path
            - BranchSide:      'file-dotlock.c:369,46'
              BranchSideFuncs:
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:361,8'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:364,5'
              BranchSideFuncs:
                - i_close_fd_path
            - BranchSide:      'file-dotlock.c:367,3'
              BranchSideFuncs:
                - str_c
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:370,13'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:371,35'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'file-dotlock.c:373,16'
              BranchSideFuncs:
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
                - utime
                - i_error
        - Branch String:   'file-dotlock.c:376,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:377,36'
              BranchSideFuncs:
                - i_error
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
            - BranchSide:      'file-dotlock.c:378,2'
              BranchSideFuncs:
                - nfs_safe_link
                - i_unlink
                - __errno_location
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:380,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:382,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - i_error
            - BranchSide:      'file-dotlock.c:392,6'
              BranchSideFuncs:
                - i_unlink
        - Branch String:   'file-dotlock.c:382,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:383,4'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:385,7'
              BranchSideFuncs:
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:385,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:387,5'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'file-dotlock.c:389,3'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:392,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:394,2'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:395,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:329,3'
          Dst:             i_panic
        - Src:             'file-dotlock.c:331,7'
          Dst:             strrchr
        - Src:             'file-dotlock.c:333,3'
          Dst:             str_truncate
        - Src:             'file-dotlock.c:337,5'
          Dst:             str_append_data
        - Src:             'file-dotlock.c:339,5'
          Dst:             str_append_c
        - Src:             'file-dotlock.c:341,4'
          Dst:             str_append
        - Src:             'file-dotlock.c:345,5'
          Dst:             str_append_data
        - Src:             'file-dotlock.c:347,5'
          Dst:             str_append_c
        - Src:             'file-dotlock.c:349,4'
          Dst:             str_printfa
        - Src:             'file-dotlock.c:353,14'
          Dst:             umask
        - Src:             'file-dotlock.c:354,19'
          Dst:             safe_mkstemp
        - Src:             'file-dotlock.c:356,3'
          Dst:             umask
        - Src:             'file-dotlock.c:362,9'
          Dst:             str_c
        - Src:             'file-dotlock.c:361,8'
          Dst:             file_write_pid
        - Src:             'file-dotlock.c:364,5'
          Dst:             i_close_fd_path
        - Src:             'file-dotlock.c:369,40'
          Dst:             str_c
        - Src:             'file-dotlock.c:370,13'
          Dst:             fstat
        - Src:             'file-dotlock.c:371,3'
          Dst:             i_error
        - Src:             'file-dotlock.c:376,7'
          Dst:             utime
        - Src:             'file-dotlock.c:377,4'
          Dst:             i_error
        - Src:             'file-dotlock.c:380,6'
          Dst:             nfs_safe_link
        - Src:             'file-dotlock.c:382,7'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:385,7'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:386,4'
          Dst:             i_error
        - Src:             'file-dotlock.c:392,6'
          Dst:             i_unlink
    - functionName:    umask
      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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    try_create_lock_excl
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 400
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - lock_info
        - write_pid
      BBCount:         18
      ICount:          108
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - file_write_pid
        - i_close_fd_path
        - i_error
        - open
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-dotlock.c:404,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:405,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - i_error
            - BranchSide:      'file-dotlock.c:413,6'
              BranchSideFuncs:
                - file_write_pid
                - i_close_fd_path
        - Branch String:   'file-dotlock.c:405,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:406,4'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:408,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:408,23'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:408,26'
              BranchSideFuncs:
                - __errno_location
                - i_error
            - BranchSide:      'file-dotlock.c:410,3'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:408,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:409,35'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'file-dotlock.c:410,3'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:413,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:414,22'
              BranchSideFuncs:
                - file_write_pid
                - i_close_fd_path
            - BranchSide:      'file-dotlock.c:421,18'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:414,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:416,4'
              BranchSideFuncs:
                - i_close_fd_path
            - BranchSide:      'file-dotlock.c:419,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:403,7'
          Dst:             open
        - Src:             'file-dotlock.c:405,7'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:408,7'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:408,26'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:409,4'
          Dst:             i_error
        - Src:             'file-dotlock.c:414,7'
          Dst:             file_write_pid
        - Src:             'file-dotlock.c:416,4'
          Dst:             i_close_fd_path
    - functionName:    check_lock
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - now
        - lock_info
      BBCount:         50
      ICount:          341
      EdgeCount:       68
      CyclomaticComplexity: 20
      functionsReached:
        - __errno_location
        - dotlock_override
        - getpid
        - i_error
        - kill
        - nfs_flush_attr_cache_maybe_locked
        - nfs_flush_file_handle_cache
        - nfs_safe_stat
        - read_local_pid
        - update_change_info
        - update_lock_info
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-dotlock.c:213,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:214,10'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:215,6'
              BranchSideFuncs:
                - read_local_pid
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
                - kill
                - __errno_location
                - update_lock_info
                - dotlock_override
                - getpid
                - read_local_pid
        - Branch String:   'file-dotlock.c:215,14'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:215,18'
              BranchSideFuncs:
                - read_local_pid
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
                - kill
                - __errno_location
                - update_lock_info
                - dotlock_override
                - getpid
            - BranchSide:      'file-dotlock.c:219,7'
              BranchSideFuncs:
                - read_local_pid
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
                - kill
                - __errno_location
                - update_lock_info
                - dotlock_override
                - getpid
        - Branch String:   'file-dotlock.c:215,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:219,7'
              BranchSideFuncs:
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
                - kill
                - __errno_location
                - update_lock_info
                - dotlock_override
                - getpid
                - read_local_pid
            - BranchSide:      'file-dotlock.c:226,14'
              BranchSideFuncs:
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
                - kill
                - __errno_location
                - update_lock_info
                - dotlock_override
                - getpid
                - read_local_pid
        - Branch String:   'file-dotlock.c:219,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:220,4'
              BranchSideFuncs:
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
                - kill
                - __errno_location
                - update_lock_info
                - dotlock_override
                - getpid
            - BranchSide:      'file-dotlock.c:222,25'
              BranchSideFuncs:
                - read_local_pid
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
                - kill
                - __errno_location
                - update_lock_info
                - dotlock_override
                - getpid
        - Branch String:   'file-dotlock.c:226,13'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:228,2'
              BranchSideFuncs:
                - read_local_pid
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
                - kill
                - __errno_location
                - update_lock_info
                - dotlock_override
                - getpid
            - BranchSide:      'file-dotlock.c:229,7'
              BranchSideFuncs:
                - read_local_pid
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
                - kill
                - __errno_location
                - update_lock_info
                - dotlock_override
                - getpid
        - Branch String:   'file-dotlock.c:229,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:231,4'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:237,24'
              BranchSideFuncs:
                - read_local_pid
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
                - kill
                - __errno_location
                - update_lock_info
                - dotlock_override
                - getpid
        - Branch String:   'file-dotlock.c:241,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:243,12'
              BranchSideFuncs:
                - kill
                - __errno_location
                - update_lock_info
                - dotlock_override
                - getpid
            - BranchSide:      'file-dotlock.c:265,6'
              BranchSideFuncs:
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
        - Branch String:   'file-dotlock.c:243,25'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:243,28'
              BranchSideFuncs:
                - getpid
                - update_lock_info
                - dotlock_override
            - BranchSide:      'file-dotlock.c:244,8'
              BranchSideFuncs:
                - getpid
                - update_lock_info
                - dotlock_override
        - Branch String:   'file-dotlock.c:243,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:244,8'
              BranchSideFuncs:
                - getpid
                - update_lock_info
                - dotlock_override
            - BranchSide:      'file-dotlock.c:255,31'
              BranchSideFuncs:
                - update_lock_info
                - dotlock_override
        - Branch String:   'file-dotlock.c:244,8'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:246,5'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:251,3'
              BranchSideFuncs:
                - update_lock_info
                - dotlock_override
        - Branch String:   'file-dotlock.c:255,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:256,11'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:258,8'
              BranchSideFuncs:
                - dotlock_override
        - Branch String:   'file-dotlock.c:258,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:260,28'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:262,3'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:265,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:267,3'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:270,6'
              BranchSideFuncs:
                - dotlock_override
                - nfs_safe_stat
                - update_change_info
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
        - Branch String:   'file-dotlock.c:270,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:275,7'
              BranchSideFuncs:
                - nfs_safe_stat
                - update_change_info
                - dotlock_override
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
            - BranchSide:      'file-dotlock.c:294,6'
              BranchSideFuncs:
                - dotlock_override
        - Branch String:   'file-dotlock.c:275,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:276,32'
              BranchSideFuncs:
                - nfs_flush_file_handle_cache
                - nfs_flush_attr_cache_maybe_locked
                - nfs_safe_stat
                - update_change_info
                - dotlock_override
                - __errno_location
                - i_error
            - BranchSide:      'file-dotlock.c:279,21'
              BranchSideFuncs:
                - nfs_safe_stat
                - update_change_info
                - dotlock_override
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:279,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:280,8'
              BranchSideFuncs:
                - __errno_location
                - i_error
                - dotlock_override
            - BranchSide:      'file-dotlock.c:288,35'
              BranchSideFuncs:
                - update_change_info
                - dotlock_override
        - Branch String:   'file-dotlock.c:280,8'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:283,4'
              BranchSideFuncs:
                - dotlock_override
            - BranchSide:      'file-dotlock.c:284,36'
              BranchSideFuncs:
                - i_error
        - Branch String:   'file-dotlock.c:294,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:296,27'
              BranchSideFuncs:
                - dotlock_override
            - BranchSide:      'file-dotlock.c:299,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:213,13'
          Dst:             update_lock_info
        - Src:             'file-dotlock.c:222,10'
          Dst:             read_local_pid
        - Src:             'file-dotlock.c:237,9'
          Dst:             read_local_pid
        - Src:             'file-dotlock.c:243,7'
          Dst:             kill
        - Src:             'file-dotlock.c:243,28'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:244,15'
          Dst:             getpid
        - Src:             'file-dotlock.c:255,14'
          Dst:             update_lock_info
        - Src:             'file-dotlock.c:260,11'
          Dst:             dotlock_override
        - Src:             'file-dotlock.c:276,4'
          Dst:             nfs_flush_file_handle_cache
        - Src:             'file-dotlock.c:277,4'
          Dst:             nfs_flush_attr_cache_maybe_locked
        - Src:             'file-dotlock.c:279,7'
          Dst:             nfs_safe_stat
        - Src:             'file-dotlock.c:280,8'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:284,5'
          Dst:             i_error
        - Src:             'file-dotlock.c:288,10'
          Dst:             update_change_info
        - Src:             'file-dotlock.c:296,10'
          Dst:             dotlock_override
    - functionName:    kill
      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:    dotlock_wait
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 465
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - lock_info
      BBCount:         17
      ICount:          132
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - dotlock_wait_end
        - i_rand
        - i_sleep_usecs
        - io_add_notify
        - io_loop_create
        - io_loop_destroy
        - io_loop_run
        - io_remove
        - timeout_add
        - timeout_remove
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-dotlock.c:436,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:437,17'
              BranchSideFuncs:
                - io_loop_create
                - io_add_notify
                - io_loop_destroy
                - i_rand
                - i_sleep_usecs
                - io_loop_destroy
                - timeout_add
                - io_loop_run
                - io_remove
                - timeout_remove
                - io_loop_destroy
            - BranchSide:      'file-dotlock.c:441,11'
              BranchSideFuncs:
                - io_loop_create
                - io_add_notify
                - io_loop_destroy
                - i_rand
                - i_sleep_usecs
                - io_loop_destroy
                - timeout_add
                - io_loop_run
                - io_remove
                - timeout_remove
                - io_loop_destroy
        - Branch String:   'file-dotlock.c:442,2'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:445,3'
              BranchSideFuncs:
                - timeout_add
                - io_loop_run
                - io_remove
                - timeout_remove
                - io_loop_destroy
            - BranchSide:      'file-dotlock.c:448,3'
              BranchSideFuncs:
                - io_loop_destroy
            - BranchSide:      'file-dotlock.c:452,3'
              BranchSideFuncs:
                - io_loop_destroy
                - i_rand
                - i_sleep_usecs
            - BranchSide:      'file-dotlock.c:459,7'
              BranchSideFuncs:
                - timeout_add
                - io_loop_run
                - io_remove
                - timeout_remove
                - io_loop_destroy
        - Branch String:   'file-dotlock.c:459,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:459,7'
              BranchSideFuncs:
                - timeout_add
                - io_loop_run
                - io_remove
                - timeout_remove
                - io_loop_destroy
            - BranchSide:      'file-dotlock.c:459,7'
              BranchSideFuncs:
                - timeout_add
                - io_loop_run
                - io_remove
                - timeout_remove
                - io_loop_destroy
      Callsites:
        - Src:             'file-dotlock.c:437,3'
          Dst:             i_sleep_usecs
        - Src:             'file-dotlock.c:441,11'
          Dst:             io_loop_create
        - Src:             'file-dotlock.c:442,10'
          Dst:             io_add_notify
        - Src:             'file-dotlock.c:442,10'
          Dst:             dotlock_wait_end
        - Src:             'file-dotlock.c:448,3'
          Dst:             io_loop_destroy
        - Src:             'file-dotlock.c:452,3'
          Dst:             io_loop_destroy
        - Src:             'file-dotlock.c:454,17'
          Dst:             i_rand
        - Src:             'file-dotlock.c:454,3'
          Dst:             i_sleep_usecs
        - Src:             'file-dotlock.c:459,7'
          Dst:             timeout_add
        - Src:             'file-dotlock.c:459,7'
          Dst:             dotlock_wait_end
        - Src:             'file-dotlock.c:461,2'
          Dst:             io_loop_run
        - Src:             'file-dotlock.c:462,2'
          Dst:             io_remove
        - Src:             'file-dotlock.c:463,2'
          Dst:             timeout_remove
        - Src:             'file-dotlock.c:464,2'
          Dst:             io_loop_destroy
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    file_dotlock_touch
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     externalLinkage
      functionLinenumber: 878
      functionLinenumberEnd: 897
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - dotlock
      BBCount:         15
      ICount:          94
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - file_dotlock_get_lock_path
        - i_error
        - i_panic
        - t_pop
        - t_push
        - time
        - utime
      functionUses:    0
      BranchProfiles:
        - Branch String:   'file-dotlock.c:883,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:884,3'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:886,19'
              BranchSideFuncs:
                - t_push
                - file_dotlock_get_lock_path
                - utime
                - t_pop
                - i_panic
                - i_error
        - Branch String:   'file-dotlock.c:891,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:892,36'
              BranchSideFuncs:
                - i_error
                - t_pop
                - i_panic
            - BranchSide:      'file-dotlock.c:895,4'
              BranchSideFuncs:
                - t_pop
                - i_panic
        - Branch String:   'file-dotlock.c:895,4'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:895,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'file-dotlock.c:895,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:879,15'
          Dst:             time
        - Src:             'file-dotlock.c:889,2'
          Dst:             t_push
        - Src:             'file-dotlock.c:890,27'
          Dst:             file_dotlock_get_lock_path
        - Src:             'file-dotlock.c:891,7'
          Dst:             utime
        - Src:             'file-dotlock.c:892,4'
          Dst:             i_error
        - Src:             'file-dotlock.c:895,4'
          Dst:             t_pop
        - Src:             'file-dotlock.c:895,4'
          Dst:             i_panic
    - functionName:    file_dotlock_get_lock_path
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     externalLinkage
      functionLinenumber: 918
      functionLinenumberEnd: 924
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - dotlock
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_strconcat
      functionUses:    9
      BranchProfiles:
        - Branch String:   'file-dotlock.c:919,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:919,6'
              BranchSideFuncs:
                - i_strconcat
            - BranchSide:      'file-dotlock.c:921,16'
              BranchSideFuncs:
                - i_strconcat
      Callsites:
        - Src:             'file-dotlock.c:921,4'
          Dst:             i_strconcat
    - functionName:    file_dotlock_is_locked
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     externalLinkage
      functionLinenumber: 900
      functionLinenumberEnd: 915
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - dotlock
      BBCount:         14
      ICount:          92
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - file_dotlock_get_lock_path
        - fstat
        - gnu_dev_major
        - i_error
        - nfs_safe_lstat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-dotlock.c:905,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:906,35'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'file-dotlock.c:910,21'
              BranchSideFuncs:
                - nfs_safe_lstat
                - gnu_dev_major
                - gnu_dev_major
                - gnu_dev_minor
                - gnu_dev_minor
                - i_error
        - Branch String:   'file-dotlock.c:910,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:911,35'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'file-dotlock.c:914,12'
              BranchSideFuncs:
                - gnu_dev_major
                - gnu_dev_major
                - gnu_dev_minor
                - gnu_dev_minor
        - Branch String:   'file-dotlock.c:914,33'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:914,36'
              BranchSideFuncs:
                - gnu_dev_major
                - gnu_dev_major
                - gnu_dev_minor
                - gnu_dev_minor
            - BranchSide:      'file-dotlock.c:914,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:904,14'
          Dst:             file_dotlock_get_lock_path
        - Src:             'file-dotlock.c:905,6'
          Dst:             fstat
        - Src:             'file-dotlock.c:906,3'
          Dst:             i_error
        - Src:             'file-dotlock.c:910,6'
          Dst:             nfs_safe_lstat
        - Src:             'file-dotlock.c:911,3'
          Dst:             i_error
        - Src:             'file-dotlock.c:914,36'
          Dst:             gnu_dev_major
        - Src:             'file-dotlock.c:914,36'
          Dst:             gnu_dev_major
        - Src:             'file-dotlock.c:914,36'
          Dst:             gnu_dev_minor
        - Src:             'file-dotlock.c:914,36'
          Dst:             gnu_dev_minor
    - functionName:    file_dotlock_replace
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     externalLinkage
      functionLinenumber: 844
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - dotlock_p
        - flags
      BBCount:         17
      ICount:          120
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - dotlock_replaced_warning
        - file_dotlock_free
        - file_dotlock_get_lock_path
        - file_dotlock_is_locked
        - i_error
        - rename
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-dotlock.c:852,14'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:852,14'
              BranchSideFuncs:
                - dotlock_replaced_warning
                - __errno_location
                - file_dotlock_free
                - file_dotlock_get_lock_path
                - rename
                - file_dotlock_free
                - i_error
                - __errno_location
                - file_dotlock_free
                - dotlock_replaced_warning
            - BranchSide:      'file-dotlock.c:853,26'
              BranchSideFuncs:
                - file_dotlock_is_locked
                - dotlock_replaced_warning
                - __errno_location
                - file_dotlock_free
                - file_dotlock_get_lock_path
                - rename
                - file_dotlock_free
                - i_error
                - __errno_location
                - file_dotlock_free
                - dotlock_replaced_warning
        - Branch String:   'file-dotlock.c:855,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:856,3'
              BranchSideFuncs:
                - dotlock_replaced_warning
                - __errno_location
                - file_dotlock_free
                - file_dotlock_get_lock_path
                - rename
                - file_dotlock_free
                - i_error
                - __errno_location
                - file_dotlock_free
                - dotlock_replaced_warning
            - BranchSide:      'file-dotlock.c:858,7'
              BranchSideFuncs:
                - dotlock_replaced_warning
                - __errno_location
                - file_dotlock_free
                - file_dotlock_get_lock_path
                - rename
                - file_dotlock_free
                - i_error
                - __errno_location
                - file_dotlock_free
                - dotlock_replaced_warning
        - Branch String:   'file-dotlock.c:858,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:859,28'
              BranchSideFuncs:
                - file_dotlock_get_lock_path
                - rename
                - file_dotlock_free
                - i_error
                - __errno_location
                - file_dotlock_free
                - dotlock_replaced_warning
            - BranchSide:      'file-dotlock.c:865,41'
              BranchSideFuncs:
                - file_dotlock_get_lock_path
                - rename
                - file_dotlock_free
                - i_error
                - __errno_location
                - file_dotlock_free
                - dotlock_replaced_warning
        - Branch String:   'file-dotlock.c:866,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:867,40'
              BranchSideFuncs:
                - i_error
                - __errno_location
                - file_dotlock_free
                - dotlock_replaced_warning
            - BranchSide:      'file-dotlock.c:873,2'
              BranchSideFuncs:
                - file_dotlock_free
        - Branch String:   'file-dotlock.c:868,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:869,29'
              BranchSideFuncs:
                - dotlock_replaced_warning
                - file_dotlock_free
            - BranchSide:      'file-dotlock.c:870,3'
              BranchSideFuncs:
                - file_dotlock_free
      Callsites:
        - Src:             'file-dotlock.c:853,3'
          Dst:             file_dotlock_is_locked
        - Src:             'file-dotlock.c:859,3'
          Dst:             dotlock_replaced_warning
        - Src:             'file-dotlock.c:860,3'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:861,3'
          Dst:             file_dotlock_free
        - Src:             'file-dotlock.c:865,14'
          Dst:             file_dotlock_get_lock_path
        - Src:             'file-dotlock.c:866,6'
          Dst:             rename
        - Src:             'file-dotlock.c:867,3'
          Dst:             i_error
        - Src:             'file-dotlock.c:868,7'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:869,4'
          Dst:             dotlock_replaced_warning
        - Src:             'file-dotlock.c:870,3'
          Dst:             file_dotlock_free
        - Src:             'file-dotlock.c:873,2'
          Dst:             file_dotlock_free
    - functionName:    dotlock_replaced_warning
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 706
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - dotlock
        - deleted
      BBCount:         6
      ICount:          74
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - file_dotlock_get_lock_path
        - i_warning
        - time
      functionUses:    5
      BranchProfiles:
        - Branch String:   'file-dotlock.c:694,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:697,6'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'file-dotlock.c:702,27'
              BranchSideFuncs:
                - i_warning
      Callsites:
        - Src:             'file-dotlock.c:691,15'
          Dst:             time
        - Src:             'file-dotlock.c:693,14'
          Dst:             file_dotlock_get_lock_path
        - Src:             'file-dotlock.c:695,3'
          Dst:             i_warning
        - Src:             'file-dotlock.c:701,3'
          Dst:             i_warning
    - functionName:    file_dotlock_free
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _dotlock
      BBCount:         15
      ICount:          91
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - close
        - i_error
        - p_free_internal
      functionUses:    9
      BranchProfiles:
        - Branch String:   'file-dotlock.c:615,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:616,15'
              BranchSideFuncs:
                - __errno_location
                - close
                - __errno_location
                - p_free_internal.5514
                - p_free_internal.5514
                - p_free_internal.5514
                - i_error
            - BranchSide:      'file-dotlock.c:623,2'
              BranchSideFuncs:
                - p_free_internal.5514
                - p_free_internal.5514
                - p_free_internal.5514
        - Branch String:   'file-dotlock.c:617,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:618,36'
              BranchSideFuncs:
                - i_error
                - __errno_location
                - p_free_internal.5514
                - p_free_internal.5514
                - p_free_internal.5514
            - BranchSide:      'file-dotlock.c:619,3'
              BranchSideFuncs:
                - __errno_location
                - p_free_internal.5514
                - p_free_internal.5514
                - p_free_internal.5514
      Callsites:
        - Src:             'file-dotlock.c:616,15'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:617,7'
          Dst:             close
        - Src:             'file-dotlock.c:618,4'
          Dst:             i_error
        - Src:             'file-dotlock.c:620,3'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:623,2'
          Dst:             p_free_internal
        - Src:             'file-dotlock.c:624,2'
          Dst:             p_free_internal
        - Src:             'file-dotlock.c:625,2'
          Dst:             p_free_internal
    - functionName:    rename
      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:    file_dotlock_open_group
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     externalLinkage
      functionLinenumber: 837
      functionLinenumberEnd: 839
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - path
        - flags
        - mode
        - gid
        - gid_origin
        - dotlock_r
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - file_dotlock_open_mode_full
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'file-dotlock.c:838,9'
          Dst:             file_dotlock_open_mode_full
    - functionName:    file_dotlock_open_mode_full
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 796
      functionLinenumberEnd: 822
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - path
        - flags
        - mode
        - uid
        - gid
        - gid_origin
        - dotlock_r
      BBCount:         20
      ICount:          137
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - eperm_error_get_chgrp
        - fchown
        - file_dotlock_delete
        - file_dotlock_get_lock_path
        - file_dotlock_open
        - i_error
        - umask
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-dotlock.c:805,15'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:805,19'
              BranchSideFuncs:
                - fchown
                - __errno_location
                - file_dotlock_get_lock_path
                - i_error
                - file_dotlock_delete
                - file_dotlock_get_lock_path
                - eperm_error_get_chgrp
                - i_error
            - BranchSide:      'file-dotlock.c:820,15'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:805,36'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:805,39'
              BranchSideFuncs:
                - fchown
                - __errno_location
                - file_dotlock_get_lock_path
                - i_error
                - file_dotlock_delete
                - file_dotlock_get_lock_path
                - eperm_error_get_chgrp
                - i_error
            - BranchSide:      'file-dotlock.c:806,14'
              BranchSideFuncs:
                - fchown
                - __errno_location
                - file_dotlock_get_lock_path
                - i_error
                - file_dotlock_delete
                - file_dotlock_get_lock_path
                - eperm_error_get_chgrp
                - i_error
        - Branch String:   'file-dotlock.c:805,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:806,14'
              BranchSideFuncs:
                - fchown
                - __errno_location
                - file_dotlock_get_lock_path
                - i_error
                - file_dotlock_delete
                - file_dotlock_get_lock_path
                - eperm_error_get_chgrp
                - i_error
            - BranchSide:      'file-dotlock.c:820,15'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:806,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:807,8'
              BranchSideFuncs:
                - __errno_location
                - file_dotlock_get_lock_path
                - i_error
                - file_dotlock_delete
                - file_dotlock_get_lock_path
                - eperm_error_get_chgrp
                - i_error
            - BranchSide:      'file-dotlock.c:819,2'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:807,23'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:807,26'
              BranchSideFuncs:
                - file_dotlock_get_lock_path
                - i_error
                - file_dotlock_delete
                - file_dotlock_get_lock_path
                - eperm_error_get_chgrp
                - i_error
            - BranchSide:      'file-dotlock.c:813,33'
              BranchSideFuncs:
                - file_dotlock_get_lock_path
                - i_error
                - file_dotlock_delete
        - Branch String:   'file-dotlock.c:807,8'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:809,33'
              BranchSideFuncs:
                - file_dotlock_get_lock_path
                - eperm_error_get_chgrp
                - i_error
                - file_dotlock_delete
            - BranchSide:      'file-dotlock.c:813,33'
              BranchSideFuncs:
                - file_dotlock_get_lock_path
                - i_error
                - file_dotlock_delete
      Callsites:
        - Src:             'file-dotlock.c:801,13'
          Dst:             umask
        - Src:             'file-dotlock.c:802,7'
          Dst:             file_dotlock_open
        - Src:             'file-dotlock.c:803,2'
          Dst:             umask
        - Src:             'file-dotlock.c:806,7'
          Dst:             fchown
        - Src:             'file-dotlock.c:807,8'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:809,6'
          Dst:             file_dotlock_get_lock_path
        - Src:             'file-dotlock.c:808,19'
          Dst:             eperm_error_get_chgrp
        - Src:             'file-dotlock.c:808,5'
          Dst:             i_error
        - Src:             'file-dotlock.c:813,6'
          Dst:             file_dotlock_get_lock_path
        - Src:             'file-dotlock.c:812,5'
          Dst:             i_error
        - Src:             'file-dotlock.c:816,4'
          Dst:             file_dotlock_delete
    - functionName:    file_dotlock_open
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     externalLinkage
      functionLinenumber: 770
      functionLinenumberEnd: 789
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - path
        - flags
        - dotlock_r
      BBCount:         12
      ICount:          83
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - dotlock_create
        - file_dotlock_alloc
        - file_dotlock_free
        - i_panic
        - t_pop
        - t_push
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-dotlock.c:779,4'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:779,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'file-dotlock.c:779,4'
              BranchSideFuncs:
                - file_dotlock_free
        - Branch String:   'file-dotlock.c:781,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:782,3'
              BranchSideFuncs:
                - file_dotlock_free
            - BranchSide:      'file-dotlock.c:787,15'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:774,12'
          Dst:             file_dotlock_alloc
        - Src:             'file-dotlock.c:775,2'
          Dst:             t_push
        - Src:             'file-dotlock.c:778,9'
          Dst:             dotlock_create
        - Src:             'file-dotlock.c:779,4'
          Dst:             t_pop
        - Src:             'file-dotlock.c:779,4'
          Dst:             i_panic
        - Src:             'file-dotlock.c:782,3'
          Dst:             file_dotlock_free
    - functionName:    fchown
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file_dotlock_delete
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     externalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 765
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - dotlock_p
      BBCount:         23
      ICount:          167
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - dec2str
        - dotlock_replaced_warning
        - file_dotlock_free
        - file_dotlock_get_lock_path
        - file_dotlock_has_mtime_changed
        - gnu_dev_major
        - i_error
        - i_unlink_if_exists
        - i_warning
        - nfs_safe_lstat
        - time
      functionUses:    7
      BranchProfiles:
        - Branch String:   'file-dotlock.c:732,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:733,7'
              BranchSideFuncs:
                - __errno_location
                - i_error
                - file_dotlock_free
                - dotlock_replaced_warning
                - file_dotlock_free
            - BranchSide:      'file-dotlock.c:744,6'
              BranchSideFuncs:
                - gnu_dev_major
                - gnu_dev_major
                - dotlock_replaced_warning
                - __errno_location
                - file_dotlock_free
                - gnu_dev_minor
                - gnu_dev_minor
                - file_dotlock_has_mtime_changed
                - i_unlink_if_exists
                - file_dotlock_free
                - dotlock_replaced_warning
                - dec2str
                - dec2str
                - time
                - i_warning
        - Branch String:   'file-dotlock.c:733,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:734,29'
              BranchSideFuncs:
                - dotlock_replaced_warning
                - file_dotlock_free
            - BranchSide:      'file-dotlock.c:739,35'
              BranchSideFuncs:
                - i_error
                - file_dotlock_free
        - Branch String:   'file-dotlock.c:744,32'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:745,7'
              BranchSideFuncs:
                - dotlock_replaced_warning
                - __errno_location
                - file_dotlock_free
            - BranchSide:      'file-dotlock.c:746,28'
              BranchSideFuncs:
                - dotlock_replaced_warning
                - __errno_location
                - file_dotlock_free
        - Branch String:   'file-dotlock.c:745,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:745,7'
              BranchSideFuncs:
                - gnu_dev_minor
                - gnu_dev_minor
                - dotlock_replaced_warning
                - __errno_location
                - file_dotlock_free
                - file_dotlock_has_mtime_changed
                - i_unlink_if_exists
                - file_dotlock_free
                - dotlock_replaced_warning
                - dec2str
                - dec2str
                - time
                - i_warning
            - BranchSide:      'file-dotlock.c:746,28'
              BranchSideFuncs:
                - dotlock_replaced_warning
                - __errno_location
                - file_dotlock_free
        - Branch String:   'file-dotlock.c:744,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:746,28'
              BranchSideFuncs:
                - file_dotlock_has_mtime_changed
                - i_unlink_if_exists
                - file_dotlock_free
                - dotlock_replaced_warning
                - dec2str
                - dec2str
                - time
                - i_warning
            - BranchSide:      'file-dotlock.c:752,37'
              BranchSideFuncs:
                - file_dotlock_has_mtime_changed
                - i_unlink_if_exists
                - file_dotlock_free
                - dotlock_replaced_warning
                - dec2str
                - dec2str
                - time
                - i_warning
        - Branch String:   'file-dotlock.c:752,66'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:753,6'
              BranchSideFuncs:
                - i_unlink_if_exists
                - file_dotlock_free
                - dotlock_replaced_warning
                - dec2str
                - dec2str
                - time
                - i_warning
            - BranchSide:      'file-dotlock.c:761,13'
              BranchSideFuncs:
                - i_unlink_if_exists
                - file_dotlock_free
                - dotlock_replaced_warning
        - Branch String:   'file-dotlock.c:752,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:756,6'
              BranchSideFuncs:
                - dec2str
                - dec2str
                - time
                - i_warning
                - i_unlink_if_exists
                - file_dotlock_free
                - dotlock_replaced_warning
            - BranchSide:      'file-dotlock.c:761,13'
              BranchSideFuncs:
                - i_unlink_if_exists
                - file_dotlock_free
                - dotlock_replaced_warning
        - Branch String:   'file-dotlock.c:761,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:762,28'
              BranchSideFuncs:
                - dotlock_replaced_warning
                - file_dotlock_free
            - BranchSide:      'file-dotlock.c:763,2'
              BranchSideFuncs:
                - file_dotlock_free
      Callsites:
        - Src:             'file-dotlock.c:731,14'
          Dst:             file_dotlock_get_lock_path
        - Src:             'file-dotlock.c:732,6'
          Dst:             nfs_safe_lstat
        - Src:             'file-dotlock.c:733,7'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:734,4'
          Dst:             dotlock_replaced_warning
        - Src:             'file-dotlock.c:735,4'
          Dst:             file_dotlock_free
        - Src:             'file-dotlock.c:739,3'
          Dst:             i_error
        - Src:             'file-dotlock.c:740,3'
          Dst:             file_dotlock_free
        - Src:             'file-dotlock.c:745,7'
          Dst:             gnu_dev_major
        - Src:             'file-dotlock.c:745,7'
          Dst:             gnu_dev_major
        - Src:             'file-dotlock.c:745,7'
          Dst:             gnu_dev_minor
        - Src:             'file-dotlock.c:745,7'
          Dst:             gnu_dev_minor
        - Src:             'file-dotlock.c:746,3'
          Dst:             dotlock_replaced_warning
        - Src:             'file-dotlock.c:747,3'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:748,3'
          Dst:             file_dotlock_free
        - Src:             'file-dotlock.c:752,6'
          Dst:             file_dotlock_has_mtime_changed
        - Src:             'file-dotlock.c:757,6'
          Dst:             dec2str
        - Src:             'file-dotlock.c:757,31'
          Dst:             dec2str
        - Src:             'file-dotlock.c:758,12'
          Dst:             time
        - Src:             'file-dotlock.c:754,3'
          Dst:             i_warning
        - Src:             'file-dotlock.c:761,13'
          Dst:             i_unlink_if_exists
        - Src:             'file-dotlock.c:762,3'
          Dst:             dotlock_replaced_warning
        - Src:             'file-dotlock.c:763,2'
          Dst:             file_dotlock_free
    - functionName:    file_dotlock_has_mtime_changed
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 709
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - t1
        - t2
      BBCount:         7
      ICount:          50
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-dotlock.c:712,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:713,3'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:717,9'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:717,9'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:717,19'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:717,27'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    file_dotlock_alloc
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - settings
        - path
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_strdup
        - malloc_multiply_check
        - p_malloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-dotlock.c:87,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:87,6'
              BranchSideFuncs:
                - i_strdup
            - BranchSide:      'file-dotlock.c:88,3'
              BranchSideFuncs:
                - i_strdup
      Callsites:
        - Src:             'file-dotlock.c:85,12'
          Dst:             malloc_multiply_check
        - Src:             'file-dotlock.c:85,12'
          Dst:             p_malloc
        - Src:             'file-dotlock.c:89,18'
          Dst:             i_strdup
    - functionName:    dotlock_create
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - dotlock
        - flags
        - write_pid
        - lock_path_r
      BBCount:         84
      ICount:          574
      EdgeCount:       111
      CyclomaticComplexity: 29
      functionsReached:
        - __errno_location
        - check_lock
        - close
        - dec2str
        - dotlock_wait
        - file_lock_wait_end
        - file_lock_wait_start
        - fstat
        - i_error
        - i_panic
        - i_rand
        - i_unlink
        - i_warning
        - t_str_new
        - t_strconcat
        - time
        - try_create_lock_excl
        - try_create_lock_hardlink
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-dotlock.c:488,18'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:488,16'
              BranchSideFuncs:
                - t_str_new
                - file_lock_wait_start
                - check_lock
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
            - BranchSide:      'file-dotlock.c:489,3'
              BranchSideFuncs:
                - t_str_new
                - file_lock_wait_start
                - check_lock
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
        - Branch String:   'file-dotlock.c:503,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:504,8'
              BranchSideFuncs:
                - dotlock_wait
                - time
                - check_lock
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - i_rand
            - BranchSide:      'file-dotlock.c:521,20'
              BranchSideFuncs:
                - check_lock
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - dotlock_wait
                - time
                - i_rand
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
        - Branch String:   'file-dotlock.c:504,8'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:507,28'
              BranchSideFuncs:
                - i_rand
                - dotlock_wait
                - time
                - check_lock
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
            - BranchSide:      'file-dotlock.c:510,15'
              BranchSideFuncs:
                - dotlock_wait
                - time
                - check_lock
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - i_rand
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
        - Branch String:   'file-dotlock.c:522,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:523,4'
              BranchSideFuncs:
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
            - BranchSide:      'file-dotlock.c:525,7'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - dotlock_wait
                - time
                - i_rand
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
        - Branch String:   'file-dotlock.c:525,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:526,9'
              BranchSideFuncs:
                - try_create_lock_hardlink
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - dotlock_wait
                - time
                - i_rand
                - time
                - try_create_lock_excl
            - BranchSide:      'file-dotlock.c:542,7'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
        - Branch String:   'file-dotlock.c:526,8'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:527,5'
              BranchSideFuncs:
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
            - BranchSide:      'file-dotlock.c:529,10'
              BranchSideFuncs:
                - try_create_lock_hardlink
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - dotlock_wait
                - time
                - i_rand
                - time
                - try_create_lock_excl
        - Branch String:   'file-dotlock.c:529,10'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:530,38'
              BranchSideFuncs:
                - try_create_lock_excl
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - dotlock_wait
                - time
                - i_rand
                - time
            - BranchSide:      'file-dotlock.c:531,42'
              BranchSideFuncs:
                - try_create_lock_hardlink
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
                - time
        - Branch String:   'file-dotlock.c:533,8'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:537,11'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
            - BranchSide:      'file-dotlock.c:540,3'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
        - Branch String:   'file-dotlock.c:542,26'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:542,29'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
            - BranchSide:      'file-dotlock.c:564,11'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
        - Branch String:   'file-dotlock.c:542,51'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:543,7'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
            - BranchSide:      'file-dotlock.c:564,11'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
        - Branch String:   'file-dotlock.c:542,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:544,18'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
            - BranchSide:      'file-dotlock.c:564,11'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
        - Branch String:   'file-dotlock.c:548,46'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:549,8'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
            - BranchSide:      'file-dotlock.c:558,15'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
        - Branch String:   'file-dotlock.c:548,8'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:551,6'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
            - BranchSide:      'file-dotlock.c:558,15'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
        - Branch String:   'file-dotlock.c:551,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:550,18'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
            - BranchSide:      'file-dotlock.c:552,10'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
        - Branch String:   'file-dotlock.c:553,9'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:556,30'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
            - BranchSide:      'file-dotlock.c:558,4'
              BranchSideFuncs:
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - check_lock
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
        - Branch String:   'file-dotlock.c:566,2'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:503,7'
              BranchSideFuncs:
                - check_lock
                - time
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
                - try_create_lock_hardlink
                - time
                - try_create_lock_excl
                - dotlock_wait
                - time
                - i_rand
            - BranchSide:      'file-dotlock.c:567,21'
              BranchSideFuncs:
                - file_lock_wait_end
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - fstat
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
        - Branch String:   'file-dotlock.c:569,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:570,3'
              BranchSideFuncs:
                - fstat
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - dec2str
                - dec2str
                - i_warning
                - i_error
                - i_panic
            - BranchSide:      'file-dotlock.c:593,16'
              BranchSideFuncs:
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:570,3'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:570,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'file-dotlock.c:571,23'
              BranchSideFuncs:
                - fstat
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - dec2str
                - dec2str
                - i_warning
                - i_error
        - Branch String:   'file-dotlock.c:571,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:572,36'
              BranchSideFuncs:
                - i_error
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
            - BranchSide:      'file-dotlock.c:576,22'
              BranchSideFuncs:
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
                - dec2str
                - dec2str
                - i_warning
        - Branch String:   'file-dotlock.c:583,42'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:584,11'
              BranchSideFuncs:
                - dec2str
                - dec2str
                - i_warning
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
            - BranchSide:      'file-dotlock.c:587,37'
              BranchSideFuncs:
                - dec2str
                - dec2str
                - i_warning
                - __errno_location
                - i_unlink
                - __errno_location
                - close
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:593,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:594,19'
              BranchSideFuncs:
                - __errno_location
                - close
                - __errno_location
                - __errno_location
                - i_unlink
                - i_error
            - BranchSide:      'file-dotlock.c:600,16'
              BranchSideFuncs:
                - __errno_location
                - i_unlink
        - Branch String:   'file-dotlock.c:596,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:597,36'
              BranchSideFuncs:
                - i_error
                - __errno_location
                - __errno_location
                - i_unlink
            - BranchSide:      'file-dotlock.c:598,11'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - i_unlink
        - Branch String:   'file-dotlock.c:600,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:601,3'
              BranchSideFuncs:
                - i_unlink
                - __errno_location
            - BranchSide:      'file-dotlock.c:603,6'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'file-dotlock.c:603,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:603,6'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'file-dotlock.c:604,3'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'file-dotlock.c:483,8'
          Dst:             time
        - Src:             'file-dotlock.c:486,3'
          Dst:             t_strconcat
        - Src:             'file-dotlock.c:490,13'
          Dst:             t_str_new
        - Src:             'file-dotlock.c:501,2'
          Dst:             file_lock_wait_start
        - Src:             'file-dotlock.c:507,28'
          Dst:             i_rand
        - Src:             'file-dotlock.c:517,4'
          Dst:             dotlock_wait
        - Src:             'file-dotlock.c:518,10'
          Dst:             time
        - Src:             'file-dotlock.c:521,9'
          Dst:             check_lock
        - Src:             'file-dotlock.c:530,5'
          Dst:             try_create_lock_excl
        - Src:             'file-dotlock.c:531,5'
          Dst:             try_create_lock_hardlink
        - Src:             'file-dotlock.c:537,11'
          Dst:             time
        - Src:             'file-dotlock.c:565,9'
          Dst:             time
        - Src:             'file-dotlock.c:567,2'
          Dst:             file_lock_wait_end
        - Src:             'file-dotlock.c:570,3'
          Dst:             i_panic
        - Src:             'file-dotlock.c:571,7'
          Dst:             fstat
        - Src:             'file-dotlock.c:572,4'
          Dst:             i_error
        - Src:             'file-dotlock.c:587,26'
          Dst:             dec2str
        - Src:             'file-dotlock.c:588,8'
          Dst:             dec2str
        - Src:             'file-dotlock.c:585,5'
          Dst:             i_warning
        - Src:             'file-dotlock.c:594,19'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:596,7'
          Dst:             close
        - Src:             'file-dotlock.c:597,4'
          Dst:             i_error
        - Src:             'file-dotlock.c:598,3'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:601,3'
          Dst:             i_unlink
        - Src:             'file-dotlock.c:604,3'
          Dst:             __errno_location
    - functionName:    file_dotlock_open_mode
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     externalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 830
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - path
        - flags
        - mode
        - uid
        - gid
        - dotlock_r
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - file_dotlock_open_mode_full
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'file-dotlock.c:829,9'
          Dst:             file_dotlock_open_mode_full
    - functionName:    file_dotlock_create_real
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 668
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - dotlock
        - flags
      BBCount:         21
      ICount:          135
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - close
        - dotlock_create
        - i_error
        - lstat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-dotlock.c:636,15'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:636,19'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:637,10'
              BranchSideFuncs: []
        - Branch String:   'file-dotlock.c:636,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:637,10'
              BranchSideFuncs: []
            - BranchSide:      'file-dotlock.c:639,7'
              BranchSideFuncs:
                - close
                - lstat
                - __errno_location
                - i_error
                - __errno_location
                - i_error
                - i_error
                - i_error
        - Branch String:   'file-dotlock.c:642,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:643,35'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'file-dotlock.c:650,12'
              BranchSideFuncs:
                - lstat
                - __errno_location
                - i_error
                - __errno_location
                - i_error
                - i_error
        - Branch String:   'file-dotlock.c:650,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:651,7'
              BranchSideFuncs:
                - __errno_location
                - i_error
                - i_error
            - BranchSide:      'file-dotlock.c:660,9'
              BranchSideFuncs:
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:651,7'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:652,35'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'file-dotlock.c:655,5'
              BranchSideFuncs:
                - i_error
        - Branch String:   'file-dotlock.c:660,32'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:660,38'
              BranchSideFuncs:
                - __errno_location
                - i_error
            - BranchSide:      'file-dotlock.c:661,3'
              BranchSideFuncs:
                - __errno_location
                - i_error
        - Branch String:   'file-dotlock.c:660,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:661,3'
              BranchSideFuncs:
                - __errno_location
                - i_error
            - BranchSide:      'file-dotlock.c:666,22'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-dotlock.c:635,8'
          Dst:             dotlock_create
        - Src:             'file-dotlock.c:642,6'
          Dst:             close
        - Src:             'file-dotlock.c:643,3'
          Dst:             i_error
        - Src:             'file-dotlock.c:650,6'
          Dst:             lstat
        - Src:             'file-dotlock.c:651,7'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:652,4'
          Dst:             i_error
        - Src:             'file-dotlock.c:654,4'
          Dst:             i_error
        - Src:             'file-dotlock.c:661,3'
          Dst:             __errno_location
        - Src:             'file-dotlock.c:662,3'
          Dst:             i_error
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file_dotlock_create
      functionSourceFile: '/src/dovecot/src/lib/file-dotlock.c'
      linkageType:     externalLinkage
      functionLinenumber: 673
      functionLinenumberEnd: 685
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - path
        - flags
        - dotlock_r
      BBCount:         15
      ICount:          83
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - file_dotlock_alloc
        - file_dotlock_create_real
        - file_dotlock_free
        - i_panic
        - t_pop
        - t_push
      functionUses:    0
      BranchProfiles:
        - Branch String:   'file-dotlock.c:680,4'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:680,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'file-dotlock.c:680,4'
              BranchSideFuncs:
                - file_dotlock_free
        - Branch String:   'file-dotlock.c:681,15'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:681,19'
              BranchSideFuncs:
                - file_dotlock_free
            - BranchSide:      'file-dotlock.c:682,3'
              BranchSideFuncs:
                - file_dotlock_free
        - Branch String:   'file-dotlock.c:681,6'
          Branch Sides:
            - BranchSide:      'file-dotlock.c:681,6'
              BranchSideFuncs:
                - file_dotlock_free
            - BranchSide:      'file-dotlock.c:682,3'
              BranchSideFuncs:
                - file_dotlock_free
      Callsites:
        - Src:             'file-dotlock.c:677,12'
          Dst:             file_dotlock_alloc
        - Src:             'file-dotlock.c:678,2'
          Dst:             t_push
        - Src:             'file-dotlock.c:679,9'
          Dst:             file_dotlock_create_real
        - Src:             'file-dotlock.c:680,4'
          Dst:             t_pop
        - Src:             'file-dotlock.c:680,4'
          Dst:             i_panic
        - Src:             'file-dotlock.c:682,3'
          Dst:             file_dotlock_free
    - 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:    err_is_lock_timeout
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - started
        - timeout_secs
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - time
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-lock.c:157,24'
          Branch Sides:
            - BranchSide:      'file-lock.c:157,24'
              BranchSideFuncs:
                - time
            - BranchSide:      'file-lock.c:158,19'
              BranchSideFuncs:
                - time
      Callsites:
        - Src:             'file-lock.c:157,9'
          Dst:             __errno_location
        - Src:             'file-lock.c:158,19'
          Dst:             time
    - functionName:    file_lock_wait_get_total_usecs
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file_lock_wait_init_warning
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         16
      ICount:          69
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - getenv
        - i_error
        - i_panic
        - str_to_llong
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-lock.c:455,14'
          Branch Sides:
            - BranchSide:      'file-lock.c:457,2'
              BranchSideFuncs:
                - getenv
                - str_to_llong
                - i_error
                - i_panic
            - BranchSide:      'file-lock.c:457,2'
              BranchSideFuncs:
                - getenv
                - str_to_llong
                - i_error
                - i_panic
        - Branch String:   'file-lock.c:457,2'
          Branch Sides:
            - BranchSide:      'file-lock.c:457,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'file-lock.c:459,10'
              BranchSideFuncs:
                - getenv
                - str_to_llong
                - i_error
        - Branch String:   'file-lock.c:460,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:461,32'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:462,24'
              BranchSideFuncs:
                - str_to_llong
                - i_error
        - Branch String:   'file-lock.c:462,67'
          Branch Sides:
            - BranchSide:      'file-lock.c:463,4'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'file-lock.c:467,37'
              BranchSideFuncs:
                - i_error
        - Branch String:   'file-lock.c:462,11'
          Branch Sides:
            - BranchSide:      'file-lock.c:464,32'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:467,37'
              BranchSideFuncs:
                - i_error
      Callsites:
        - Src:             'file-lock.c:457,2'
          Dst:             i_panic
        - Src:             'file-lock.c:459,10'
          Dst:             getenv
        - Src:             'file-lock.c:462,11'
          Dst:             str_to_llong
        - Src:             'file-lock.c:466,3'
          Dst:             i_error
    - functionName:    file_lock_wait_end
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - lock_name
      BBCount:         19
      ICount:          105
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - file_lock_wait_init_warning
        - i_gettimeofday
        - i_panic
        - i_warning
        - timeval_diff_usecs
      functionUses:    3
      BranchProfiles:
        - Branch String:   'file-lock.c:500,2'
          Branch Sides:
            - BranchSide:      'file-lock.c:500,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'file-lock.c:502,2'
              BranchSideFuncs:
                - i_gettimeofday
                - timeval_diff_usecs
                - i_warning
                - file_lock_wait_init_warning
        - Branch String:   'file-lock.c:504,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:506,8'
              BranchSideFuncs:
                - i_warning
                - file_lock_wait_init_warning
            - BranchSide:      'file-lock.c:508,6'
              BranchSideFuncs:
                - i_warning
                - file_lock_wait_init_warning
        - Branch String:   'file-lock.c:508,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:508,6'
              BranchSideFuncs:
                - i_warning
                - file_lock_wait_init_warning
            - BranchSide:      'file-lock.c:509,7'
              BranchSideFuncs:
                - i_warning
                - file_lock_wait_init_warning
        - Branch String:   'file-lock.c:509,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:510,4'
              BranchSideFuncs:
                - file_lock_wait_init_warning
                - i_warning
            - BranchSide:      'file-lock.c:511,7'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'file-lock.c:511,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:512,8'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'file-lock.c:516,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-lock.c:500,2'
          Dst:             i_panic
        - Src:             'file-lock.c:502,2'
          Dst:             i_gettimeofday
        - Src:             'file-lock.c:503,19'
          Dst:             timeval_diff_usecs
        - Src:             'file-lock.c:510,4'
          Dst:             file_lock_wait_init_warning
        - Src:             'file-lock.c:513,4'
          Dst:             i_warning
    - functionName:    file_lock_wait_start
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_gettimeofday
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-lock.c:448,2'
          Branch Sides:
            - BranchSide:      'file-lock.c:448,2'
              BranchSideFuncs:
                - i_gettimeofday
                - i_panic
            - BranchSide:      'file-lock.c:448,2'
              BranchSideFuncs:
                - i_gettimeofday
                - i_panic
        - Branch String:   'file-lock.c:448,2'
          Branch Sides:
            - BranchSide:      'file-lock.c:448,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'file-lock.c:448,2'
              BranchSideFuncs:
                - i_gettimeofday
      Callsites:
        - Src:             'file-lock.c:448,2'
          Dst:             i_panic
        - Src:             'file-lock.c:450,2'
          Dst:             i_gettimeofday
    - functionName:    file_lock_set_path
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - lock
        - path
      BBCount:         8
      ICount:          46
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_strdup
        - p_free_internal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'file-lock.c:440,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:440,6'
              BranchSideFuncs:
                - p_free_internal.5619
                - i_strdup
            - BranchSide:      'file-lock.c:441,3'
              BranchSideFuncs:
                - p_free_internal.5619
                - i_strdup
      Callsites:
        - Src:             'file-lock.c:441,3'
          Dst:             p_free_internal
        - Src:             'file-lock.c:442,16'
          Dst:             i_strdup
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    file_lock_get_path
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - lock
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file_try_unlink_locked
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - lock
      BBCount:         26
      ICount:          162
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - file_lock_free
        - file_try_lock
        - file_unlock_real
        - fstat
        - gnu_dev_major
        - i_error
        - i_unlink
        - stat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-lock.c:391,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:393,4'
              BranchSideFuncs:
                - i_error
                - file_lock_free
            - BranchSide:      'file-lock.c:394,13'
              BranchSideFuncs:
                - fstat
                - stat
                - gnu_dev_major
                - gnu_dev_major
                - file_lock_free
                - gnu_dev_minor
                - gnu_dev_minor
                - i_unlink
                - __errno_location
                - i_error
                - i_error
        - Branch String:   'file-lock.c:394,13'
          Branch Sides:
            - BranchSide:      'file-lock.c:396,2'
              BranchSideFuncs:
                - file_lock_free
            - BranchSide:      'file-lock.c:396,19'
              BranchSideFuncs:
                - fstat
                - stat
                - gnu_dev_major
                - gnu_dev_major
                - file_lock_free
                - gnu_dev_minor
                - gnu_dev_minor
                - i_unlink
                - __errno_location
                - i_error
                - i_error
        - Branch String:   'file-lock.c:396,13'
          Branch Sides:
            - BranchSide:      'file-lock.c:398,53'
              BranchSideFuncs:
                - i_error
                - file_lock_free
            - BranchSide:      'file-lock.c:399,18'
              BranchSideFuncs:
                - stat
                - gnu_dev_major
                - gnu_dev_major
                - file_lock_free
                - gnu_dev_minor
                - gnu_dev_minor
                - i_unlink
                - __errno_location
                - i_error
        - Branch String:   'file-lock.c:399,13'
          Branch Sides:
            - BranchSide:      'file-lock.c:400,7'
              BranchSideFuncs:
                - __errno_location
                - file_lock_free
                - i_error
            - BranchSide:      'file-lock.c:402,17'
              BranchSideFuncs:
                - gnu_dev_major
                - gnu_dev_major
                - file_lock_free
                - gnu_dev_minor
                - gnu_dev_minor
                - i_unlink
        - Branch String:   'file-lock.c:400,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:401,53'
              BranchSideFuncs:
                - i_error
                - file_lock_free
            - BranchSide:      'file-lock.c:402,2'
              BranchSideFuncs:
                - file_lock_free
        - Branch String:   'file-lock.c:402,38'
          Branch Sides:
            - BranchSide:      'file-lock.c:403,7'
              BranchSideFuncs:
                - file_lock_free
            - BranchSide:      'file-lock.c:405,2'
              BranchSideFuncs:
                - file_lock_free
        - Branch String:   'file-lock.c:403,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:403,7'
              BranchSideFuncs:
                - gnu_dev_minor
                - gnu_dev_minor
                - file_lock_free
                - i_unlink
            - BranchSide:      'file-lock.c:405,2'
              BranchSideFuncs:
                - file_lock_free
        - Branch String:   'file-lock.c:402,13'
          Branch Sides:
            - BranchSide:      'file-lock.c:405,2'
              BranchSideFuncs:
                - i_unlink
                - file_lock_free
            - BranchSide:      'file-lock.c:407,3'
              BranchSideFuncs:
                - i_unlink
                - file_lock_free
      Callsites:
        - Src:             'file-lock.c:388,2'
          Dst:             file_unlock_real
        - Src:             'file-lock.c:389,8'
          Dst:             file_try_lock
        - Src:             'file-lock.c:392,3'
          Dst:             i_error
        - Src:             'file-lock.c:396,13'
          Dst:             fstat
        - Src:             'file-lock.c:398,3'
          Dst:             i_error
        - Src:             'file-lock.c:399,13'
          Dst:             stat
        - Src:             'file-lock.c:400,7'
          Dst:             __errno_location
        - Src:             'file-lock.c:401,4'
          Dst:             i_error
        - Src:             'file-lock.c:403,7'
          Dst:             gnu_dev_major
        - Src:             'file-lock.c:403,7'
          Dst:             gnu_dev_major
        - Src:             'file-lock.c:403,7'
          Dst:             gnu_dev_minor
        - Src:             'file-lock.c:403,7'
          Dst:             gnu_dev_minor
        - Src:             'file-lock.c:407,3'
          Dst:             i_unlink
        - Src:             'file-lock.c:409,2'
          Dst:             file_lock_free
    - functionName:    file_unlock_real
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 359
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - lock
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - file_lock_do
        - i_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-lock.c:354,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:354,6'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'file-lock.c:357,41'
              BranchSideFuncs:
                - i_error
      Callsites:
        - Src:             'file-lock.c:354,6'
          Dst:             file_lock_do
        - Src:             'file-lock.c:357,3'
          Dst:             i_error
    - functionName:    file_try_lock
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - path
        - lock_type
        - set
        - lock_r
        - error_r
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - file_wait_lock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'file-lock.c:62,9'
          Dst:             file_wait_lock
    - functionName:    file_lock_free
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _lock
      BBCount:         18
      ICount:          101
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - file_dotlock_delete
        - file_lock_log_warning_if_slow
        - file_try_unlink_locked
        - i_close_fd_path
        - p_free_internal
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-lock.c:416,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:417,3'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:419,3'
              BranchSideFuncs:
                - file_lock_log_warning_if_slow
                - p_free_internal.5619
                - p_free_internal.5619
                - i_close_fd_path
                - file_try_unlink_locked
                - file_dotlock_delete
        - Branch String:   'file-lock.c:421,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:422,24'
              BranchSideFuncs:
                - file_dotlock_delete
                - file_lock_log_warning_if_slow
                - p_free_internal.5619
                - p_free_internal.5619
                - i_close_fd_path
                - file_try_unlink_locked
            - BranchSide:      'file-lock.c:423,6'
              BranchSideFuncs:
                - file_lock_log_warning_if_slow
                - p_free_internal.5619
                - p_free_internal.5619
                - i_close_fd_path
                - file_try_unlink_locked
        - Branch String:   'file-lock.c:423,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:424,26'
              BranchSideFuncs:
                - file_try_unlink_locked
                - file_lock_log_warning_if_slow
                - p_free_internal.5619
                - p_free_internal.5619
                - i_close_fd_path
            - BranchSide:      'file-lock.c:425,6'
              BranchSideFuncs:
                - file_lock_log_warning_if_slow
                - p_free_internal.5619
                - p_free_internal.5619
                - i_close_fd_path
        - Branch String:   'file-lock.c:425,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:426,3'
              BranchSideFuncs:
                - i_close_fd_path
                - file_lock_log_warning_if_slow
                - p_free_internal.5619
                - p_free_internal.5619
            - BranchSide:      'file-lock.c:428,32'
              BranchSideFuncs:
                - file_lock_log_warning_if_slow
                - p_free_internal.5619
                - p_free_internal.5619
      Callsites:
        - Src:             'file-lock.c:422,3'
          Dst:             file_dotlock_delete
        - Src:             'file-lock.c:424,3'
          Dst:             file_try_unlink_locked
        - Src:             'file-lock.c:426,3'
          Dst:             i_close_fd_path
        - Src:             'file-lock.c:428,2'
          Dst:             file_lock_log_warning_if_slow
        - Src:             'file-lock.c:429,2'
          Dst:             p_free_internal
        - Src:             'file-lock.c:430,2'
          Dst:             p_free_internal
    - functionName:    file_lock_log_warning_if_slow
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - lock
      BBCount:         13
      ICount:          76
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - file_lock_wait_init_warning
        - i_gettimeofday
        - i_warning
        - timeval_diff_msecs
      functionUses:    2
      BranchProfiles:
        - Branch String:   'file-lock.c:474,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:475,3'
              BranchSideFuncs:
                - file_lock_wait_init_warning
                - i_gettimeofday
                - timeval_diff_msecs.5606
                - i_warning
            - BranchSide:      'file-lock.c:476,6'
              BranchSideFuncs:
                - i_gettimeofday
                - timeval_diff_msecs.5606
                - i_warning
        - Branch String:   'file-lock.c:476,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:478,3'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:480,6'
              BranchSideFuncs:
                - i_gettimeofday
                - timeval_diff_msecs.5606
                - i_warning
        - Branch String:   'file-lock.c:480,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:483,3'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:487,2'
              BranchSideFuncs:
                - i_gettimeofday
                - timeval_diff_msecs.5606
                - i_warning
        - Branch String:   'file-lock.c:490,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:490,6'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'file-lock.c:491,50'
              BranchSideFuncs:
                - i_warning
      Callsites:
        - Src:             'file-lock.c:475,3'
          Dst:             file_lock_wait_init_warning
        - Src:             'file-lock.c:487,2'
          Dst:             i_gettimeofday
        - Src:             'file-lock.c:489,19'
          Dst:             timeval_diff_msecs
        - Src:             'file-lock.c:491,3'
          Dst:             i_warning
    - functionName:    file_wait_lock
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - path
        - lock_type
        - set
        - timeout_secs
        - lock_r
        - error_r
      BBCount:         6
      ICount:          89
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - file_lock_do
        - i_gettimeofday
        - i_strdup
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-lock.c:297,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:298,10'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:300,9'
              BranchSideFuncs:
                - malloc_multiply_check.5625
                - p_malloc.5626
                - i_strdup
                - i_gettimeofday
      Callsites:
        - Src:             'file-lock.c:296,8'
          Dst:             file_lock_do
        - Src:             'file-lock.c:300,9'
          Dst:             malloc_multiply_check
        - Src:             'file-lock.c:300,9'
          Dst:             p_malloc
        - Src:             'file-lock.c:303,15'
          Dst:             i_strdup
        - Src:             'file-lock.c:305,2'
          Dst:             i_gettimeofday
    - functionName:    file_lock_do
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - path
        - lock_type
        - set
        - timeout_secs
        - error_r
      BBCount:         61
      ICount:          409
      EdgeCount:       73
      CyclomaticComplexity: 14
      functionsReached:
        - __errno_location
        - alarm
        - err_is_lock_timeout
        - fcntl
        - file_lock_find
        - file_lock_wait_end
        - file_lock_wait_start
        - flock
        - i_panic
        - i_unreached
        - t_strdup_printf
        - time
      functionUses:    3
      BranchProfiles:
        - Branch String:   'file-lock.c:169,2'
          Branch Sides:
            - BranchSide:      'file-lock.c:169,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'file-lock.c:171,6'
              BranchSideFuncs:
                - i_unreached
                - flock
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
                - fcntl
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
                - alarm
                - file_lock_wait_start
        - Branch String:   'file-lock.c:171,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:172,9'
              BranchSideFuncs:
                - alarm
                - file_lock_wait_start
                - i_unreached
                - flock
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
                - fcntl
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
            - BranchSide:      'file-lock.c:176,18'
              BranchSideFuncs:
                - i_unreached
                - flock
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
                - fcntl
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
        - Branch String:   'file-lock.c:176,18'
          Branch Sides:
            - BranchSide:      'file-lock.c:176,16'
              BranchSideFuncs:
                - i_unreached
                - flock
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
                - fcntl
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
            - BranchSide:      'file-lock.c:177,4'
              BranchSideFuncs:
                - i_unreached
                - flock
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
                - fcntl
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
        - Branch String:   'file-lock.c:179,2'
          Branch Sides:
            - BranchSide:      'file-lock.c:183,15'
              BranchSideFuncs:
                - fcntl
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
            - BranchSide:      'file-lock.c:231,19'
              BranchSideFuncs:
                - flock
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
            - BranchSide:      'file-lock.c:282,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'file-lock.c:285,2'
              BranchSideFuncs: []
        - Branch String:   'file-lock.c:189,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:190,4'
              BranchSideFuncs:
                - alarm
                - file_lock_wait_end
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'file-lock.c:194,7'
              BranchSideFuncs:
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'file-lock.c:194,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:195,4'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:197,7'
              BranchSideFuncs:
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'file-lock.c:197,25'
          Branch Sides:
            - BranchSide:      'file-lock.c:198,8'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'file-lock.c:206,27'
              BranchSideFuncs:
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
        - Branch String:   'file-lock.c:198,24'
          Branch Sides:
            - BranchSide:      'file-lock.c:198,27'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'file-lock.c:202,33'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'file-lock.c:197,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:202,33'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'file-lock.c:206,27'
              BranchSideFuncs:
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
        - Branch String:   'file-lock.c:206,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:207,4'
              BranchSideFuncs:
                - __errno_location
                - file_lock_find
                - t_strdup_printf
            - BranchSide:      'file-lock.c:217,4'
              BranchSideFuncs:
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
        - Branch String:   'file-lock.c:218,24'
          Branch Sides:
            - BranchSide:      'file-lock.c:218,28'
              BranchSideFuncs:
                - file_lock_find
                - i_panic
            - BranchSide:      'file-lock.c:223,3'
              BranchSideFuncs: []
        - Branch String:   'file-lock.c:218,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:219,21'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:223,3'
              BranchSideFuncs: []
        - Branch String:   'file-lock.c:233,3'
          Branch Sides:
            - BranchSide:      'file-lock.c:235,14'
              BranchSideFuncs:
                - flock
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
            - BranchSide:      'file-lock.c:238,14'
              BranchSideFuncs:
                - flock
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
            - BranchSide:      'file-lock.c:241,14'
              BranchSideFuncs:
                - flock
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
            - BranchSide:      'file-lock.c:245,15'
              BranchSideFuncs:
                - flock
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
                - alarm
                - file_lock_wait_end
        - Branch String:   'file-lock.c:246,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:247,4'
              BranchSideFuncs:
                - alarm
                - file_lock_wait_end
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'file-lock.c:251,7'
              BranchSideFuncs:
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
        - Branch String:   'file-lock.c:251,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:252,4'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:254,7'
              BranchSideFuncs:
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - __errno_location
                - t_strdup_printf
        - Branch String:   'file-lock.c:254,25'
          Branch Sides:
            - BranchSide:      'file-lock.c:254,28'
              BranchSideFuncs:
                - __errno_location
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'file-lock.c:261,27'
              BranchSideFuncs:
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
        - Branch String:   'file-lock.c:254,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:258,33'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'file-lock.c:261,27'
              BranchSideFuncs:
                - err_is_lock_timeout
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
                - __errno_location
                - file_lock_find
                - t_strdup_printf
        - Branch String:   'file-lock.c:261,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:262,4'
              BranchSideFuncs:
                - __errno_location
                - file_lock_find
                - t_strdup_printf
            - BranchSide:      'file-lock.c:271,9'
              BranchSideFuncs:
                - t_strdup_printf
                - __errno_location
                - file_lock_find
                - i_panic
        - Branch String:   'file-lock.c:272,24'
          Branch Sides:
            - BranchSide:      'file-lock.c:272,28'
              BranchSideFuncs:
                - file_lock_find
                - i_panic
            - BranchSide:      'file-lock.c:277,3'
              BranchSideFuncs: []
        - Branch String:   'file-lock.c:272,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:273,21'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:277,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-lock.c:166,19'
          Dst:             time
        - Src:             'file-lock.c:169,2'
          Dst:             i_panic
        - Src:             'file-lock.c:172,3'
          Dst:             alarm
        - Src:             'file-lock.c:173,3'
          Dst:             file_lock_wait_start
        - Src:             'file-lock.c:188,9'
          Dst:             fcntl
        - Src:             'file-lock.c:190,4'
          Dst:             alarm
        - Src:             'file-lock.c:191,4'
          Dst:             file_lock_wait_end
        - Src:             'file-lock.c:198,8'
          Dst:             __errno_location
        - Src:             'file-lock.c:198,27'
          Dst:             __errno_location
        - Src:             'file-lock.c:200,15'
          Dst:             t_strdup_printf
        - Src:             'file-lock.c:206,7'
          Dst:             err_is_lock_timeout
        - Src:             'file-lock.c:207,4'
          Dst:             __errno_location
        - Src:             'file-lock.c:212,5'
          Dst:             file_lock_find
        - Src:             'file-lock.c:208,15'
          Dst:             t_strdup_printf
        - Src:             'file-lock.c:216,14'
          Dst:             t_strdup_printf
        - Src:             'file-lock.c:218,7'
          Dst:             __errno_location
        - Src:             'file-lock.c:220,5'
          Dst:             file_lock_find
        - Src:             'file-lock.c:219,4'
          Dst:             i_panic
        - Src:             'file-lock.c:245,9'
          Dst:             flock
        - Src:             'file-lock.c:247,4'
          Dst:             alarm
        - Src:             'file-lock.c:248,4'
          Dst:             file_lock_wait_end
        - Src:             'file-lock.c:254,28'
          Dst:             __errno_location
        - Src:             'file-lock.c:256,15'
          Dst:             t_strdup_printf
        - Src:             'file-lock.c:261,7'
          Dst:             err_is_lock_timeout
        - Src:             'file-lock.c:262,4'
          Dst:             __errno_location
        - Src:             'file-lock.c:266,5'
          Dst:             file_lock_find
        - Src:             'file-lock.c:263,15'
          Dst:             t_strdup_printf
        - Src:             'file-lock.c:270,14'
          Dst:             t_strdup_printf
        - Src:             'file-lock.c:272,7'
          Dst:             __errno_location
        - Src:             'file-lock.c:274,5'
          Dst:             file_lock_find
        - Src:             'file-lock.c:273,4'
          Dst:             i_panic
        - Src:             'file-lock.c:282,3'
          Dst:             i_unreached
    - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    file_lock_find
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - lock_fd
        - lock_method
        - lock_type
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - file_lock_find_fcntl
        - file_lock_find_proc_locks
      functionUses:    4
      BranchProfiles:
        - Branch String:   'file-lock.c:143,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:144,30'
              BranchSideFuncs:
                - file_lock_find_fcntl
                - file_lock_find_proc_locks
            - BranchSide:      'file-lock.c:148,35'
              BranchSideFuncs:
                - file_lock_find_proc_locks
        - Branch String:   'file-lock.c:145,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:146,11'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:147,2'
              BranchSideFuncs:
                - file_lock_find_proc_locks
      Callsites:
        - Src:             'file-lock.c:144,9'
          Dst:             file_lock_find_fcntl
        - Src:             'file-lock.c:148,9'
          Dst:             file_lock_find_proc_locks
    - functionName:    flock
      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:    file_lock_find_fcntl
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - lock_fd
        - lock_type
      BBCount:         13
      ICount:          87
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - fcntl
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-lock.c:76,39'
          Branch Sides:
            - BranchSide:      'file-lock.c:77,9'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:78,3'
              BranchSideFuncs: []
        - Branch String:   'file-lock.c:77,27'
          Branch Sides:
            - BranchSide:      'file-lock.c:77,33'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:78,3'
              BranchSideFuncs: []
        - Branch String:   'file-lock.c:77,45'
          Branch Sides:
            - BranchSide:      'file-lock.c:77,51'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:78,3'
              BranchSideFuncs: []
        - Branch String:   'file-lock.c:76,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:78,3'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:80,6'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'file-lock.c:76,6'
          Dst:             fcntl
        - Src:             'file-lock.c:79,9'
          Dst:             t_strdup_printf
    - functionName:    file_lock_find_proc_locks
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - lock_fd
      BBCount:         35
      ICount:          200
      EdgeCount:       45
      CyclomaticComplexity: 12
      functionsReached:
        - fstat
        - getpid
        - gnu_dev_major
        - i_panic
        - i_snprintf
        - i_stream_create_fd_autoclose
        - i_stream_destroy
        - i_stream_read_next_line
        - open
        - str_array_length
        - str_to_pid
        - strcmp
        - t_pop
        - t_push
        - t_strdup_printf
        - t_strsplit_spaces
      functionUses:    1
      BranchProfiles:
        - Branch String:   'file-lock.c:97,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:98,3'
              BranchSideFuncs:
                - fstat
                - gnu_dev_major
                - gnu_dev_minor
                - i_snprintf
                - open
                - i_stream_create_fd_autoclose
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - str_to_pid
                - i_stream_read_next_line
            - BranchSide:      'file-lock.c:100,12'
              BranchSideFuncs:
                - fstat
                - gnu_dev_major
                - gnu_dev_minor
                - i_snprintf
                - open
                - i_stream_create_fd_autoclose
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - str_to_pid
                - i_stream_read_next_line
        - Branch String:   'file-lock.c:100,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:101,3'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:102,13'
              BranchSideFuncs:
                - gnu_dev_major
                - gnu_dev_minor
                - i_snprintf
                - open
                - i_stream_create_fd_autoclose
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - str_to_pid
                - i_stream_read_next_line
        - Branch String:   'file-lock.c:106,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:107,19'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:110,10'
              BranchSideFuncs:
                - i_stream_create_fd_autoclose
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - str_to_pid
                - i_stream_read_next_line
        - Branch String:   'file-lock.c:111,18'
          Branch Sides:
            - BranchSide:      'file-lock.c:111,53'
              BranchSideFuncs:
                - i_stream_read_next_line
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - str_to_pid
            - BranchSide:      'file-lock.c:111,2'
              BranchSideFuncs:
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - strcmp
                - t_pop
                - i_stream_read_next_line
                - i_panic
                - strcmp
                - str_to_pid
        - Branch String:   'file-lock.c:111,2'
          Branch Sides:
            - BranchSide:      'file-lock.c:111,70'
              BranchSideFuncs:
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - strcmp
                - t_pop
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - i_stream_read_next_line
                - i_panic
                - strcmp
                - str_to_pid
            - BranchSide:      'file-lock.c:125,2'
              BranchSideFuncs:
                - i_stream_destroy
                - getpid
                - t_strdup_printf
        - Branch String:   'file-lock.c:116,7'
          Branch Sides:
            - BranchSide:      'file-lock.c:118,3'
              BranchSideFuncs:
                - t_pop
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - strcmp
                - strcmp
                - str_to_pid
                - i_stream_read_next_line
                - i_panic
            - BranchSide:      'file-lock.c:118,21'
              BranchSideFuncs:
                - strcmp
                - t_pop
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - i_stream_read_next_line
                - i_panic
                - strcmp
                - str_to_pid
        - Branch String:   'file-lock.c:121,8'
          Branch Sides:
            - BranchSide:      'file-lock.c:122,9'
              BranchSideFuncs:
                - t_pop
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - strcmp
                - strcmp
                - str_to_pid
                - i_stream_read_next_line
                - i_panic
            - BranchSide:      'file-lock.c:123,3'
              BranchSideFuncs:
                - t_pop
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - strcmp
                - strcmp
                - str_to_pid
                - i_stream_read_next_line
                - i_panic
        - Branch String:   'file-lock.c:124,4'
          Branch Sides:
            - BranchSide:      'file-lock.c:124,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'file-lock.c:124,4'
              BranchSideFuncs:
                - i_stream_destroy
                - getpid
                - t_strdup_printf
                - t_push
                - t_strsplit_spaces
                - str_array_length
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - str_to_pid
                - i_stream_read_next_line
        - Branch String:   'file-lock.c:126,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:128,3'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:130,6'
              BranchSideFuncs:
                - getpid
                - t_strdup_printf
        - Branch String:   'file-lock.c:130,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:131,3'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:132,55'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'file-lock.c:100,6'
          Dst:             fstat
        - Src:             'file-lock.c:103,6'
          Dst:             gnu_dev_major
        - Src:             'file-lock.c:103,24'
          Dst:             gnu_dev_minor
        - Src:             'file-lock.c:102,2'
          Dst:             i_snprintf
        - Src:             'file-lock.c:105,7'
          Dst:             open
        - Src:             'file-lock.c:110,10'
          Dst:             i_stream_create_fd_autoclose
        - Src:             'file-lock.c:111,29'
          Dst:             i_stream_read_next_line
        - Src:             'file-lock.c:111,70'
          Dst:             t_push
        - Src:             'file-lock.c:112,29'
          Dst:             t_strsplit_spaces
        - Src:             'file-lock.c:116,7'
          Dst:             str_array_length
        - Src:             'file-lock.c:118,14'
          Dst:             strcmp
        - Src:             'file-lock.c:119,16'
          Dst:             strcmp
        - Src:             'file-lock.c:121,8'
          Dst:             str_to_pid
        - Src:             'file-lock.c:124,4'
          Dst:             t_pop
        - Src:             'file-lock.c:124,4'
          Dst:             i_panic
        - Src:             'file-lock.c:125,2'
          Dst:             i_stream_destroy
        - Src:             'file-lock.c:130,13'
          Dst:             getpid
        - Src:             'file-lock.c:132,9'
          Dst:             t_strdup_printf
    - functionName:    file_unlock
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _lock
      BBCount:         10
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - file_lock_free
        - file_unlock_real
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'file-lock.c:370,2'
          Branch Sides:
            - BranchSide:      'file-lock.c:370,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'file-lock.c:372,6'
              BranchSideFuncs:
                - file_lock_free
                - file_unlock_real
        - Branch String:   'file-lock.c:372,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:372,6'
              BranchSideFuncs:
                - file_unlock_real
                - file_lock_free
            - BranchSide:      'file-lock.c:373,20'
              BranchSideFuncs:
                - file_unlock_real
                - file_lock_free
      Callsites:
        - Src:             'file-lock.c:370,2'
          Dst:             i_panic
        - Src:             'file-lock.c:373,3'
          Dst:             file_unlock_real
        - Src:             'file-lock.c:374,2'
          Dst:             file_lock_free
    - functionName:    file_lock_from_dotlock
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 335
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - dotlock
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - file_dotlock_get_lock_path
        - i_gettimeofday
        - i_strdup
        - malloc_multiply_check
        - p_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'file-lock.c:338,9'
          Dst:             malloc_multiply_check
        - Src:             'file-lock.c:338,9'
          Dst:             p_malloc
        - Src:             'file-lock.c:341,24'
          Dst:             file_dotlock_get_lock_path
        - Src:             'file-lock.c:341,15'
          Dst:             i_strdup
        - Src:             'file-lock.c:343,2'
          Dst:             i_gettimeofday
    - functionName:    file_lock_set_close_on_free
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - lock
        - set
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file_lock_set_unlink_on_free
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - lock
        - set
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file_lock_try_update
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - lock
        - lock_type
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - file_lock_do
        - file_lock_log_warning_if_slow
      functionUses:    0
      BranchProfiles:
        - Branch String:   'file-lock.c:317,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:318,10'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:319,32'
              BranchSideFuncs:
                - file_lock_log_warning_if_slow
      Callsites:
        - Src:             'file-lock.c:315,8'
          Dst:             file_lock_do
        - Src:             'file-lock.c:319,2'
          Dst:             file_lock_log_warning_if_slow
    - functionName:    file_lock_method_to_str
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - method
      BBCount:         8
      ICount:          40
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - i_unreached
      functionUses:    0
      BranchProfiles:
        - Branch String:   'file-lock.c:47,2'
          Branch Sides:
            - BranchSide:      'file-lock.c:49,3'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:51,3'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:53,3'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:55,2'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'file-lock.c:55,2'
          Dst:             i_unreached
    - functionName:    file_lock_method_parse
      functionSourceFile: '/src/dovecot/src/lib/file-lock.c'
      linkageType:     externalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - method_r
      BBCount:         13
      ICount:          61
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'file-lock.c:34,6'
          Branch Sides:
            - BranchSide:      'file-lock.c:35,4'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:36,22'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
        - Branch String:   'file-lock.c:36,11'
          Branch Sides:
            - BranchSide:      'file-lock.c:37,4'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:38,22'
              BranchSideFuncs:
                - strcasecmp
        - Branch String:   'file-lock.c:38,11'
          Branch Sides:
            - BranchSide:      'file-lock.c:39,4'
              BranchSideFuncs: []
            - BranchSide:      'file-lock.c:41,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'file-lock.c:34,6'
          Dst:             strcasecmp
        - Src:             'file-lock.c:36,11'
          Dst:             strcasecmp
        - Src:             'file-lock.c:38,11'
          Dst:             strcasecmp
    - 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.5691
                - 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.5691
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
            - BranchSide:      'guid.c:172,13'
              BranchSideFuncs:
                - str_append_c.5691
                - 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.5691
            - BranchSide:      'guid.c:172,13'
              BranchSideFuncs:
                - str_append_c.5691
                - 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.5691
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
            - BranchSide:      'guid.c:175,8'
              BranchSideFuncs:
                - str_append_c.5691
                - 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.5691
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
            - BranchSide:      'guid.c:175,8'
              BranchSideFuncs:
                - str_append_c.5691
                - 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.5691
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
            - BranchSide:      'guid.c:175,8'
              BranchSideFuncs:
                - str_append_c.5691
                - 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.5691
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
            - BranchSide:      'guid.c:176,4'
              BranchSideFuncs:
                - str_append_c.5691
                - 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.5691
            - BranchSide:      'guid.c:176,4'
              BranchSideFuncs:
                - str_append_c.5691
                - 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:    2
      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:    1
      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:    3
      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:    0
      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.5705
                - i_fatal
            - BranchSide:      'guid.c:71,28'
              BranchSideFuncs:
                - i_memcpy.5705
        - 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.5705
        - Branch String:   'guid.c:71,47'
          Branch Sides:
            - BranchSide:      'guid.c:72,22'
              BranchSideFuncs:
                - i_memcpy.5705
            - BranchSide:      'guid.c:77,30'
              BranchSideFuncs:
                - i_memcpy.5705
        - Branch String:   'guid.c:72,42'
          Branch Sides:
            - BranchSide:      'guid.c:73,22'
              BranchSideFuncs:
                - i_memcpy.5705
            - BranchSide:      'guid.c:79,16'
              BranchSideFuncs:
                - i_memcpy.5705
        - Branch String:   'guid.c:71,13'
          Branch Sides:
            - BranchSide:      'guid.c:77,30'
              BranchSideFuncs:
                - i_memcpy.5705
            - BranchSide:      'guid.c:79,16'
              BranchSideFuncs:
                - i_memcpy.5705
        - Branch String:   'guid.c:79,13'
          Branch Sides:
            - BranchSide:      'guid.c:80,13'
              BranchSideFuncs:
                - i_memcpy.5705
            - BranchSide:      'guid.c:82,12'
              BranchSideFuncs:
                - i_memcpy.5705
      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:    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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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:    0
      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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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.5787
      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,34'
              BranchSideFuncs:
                - primes_closest
                - malloc_multiply_check.5804
                - p_malloc.5805
                - p_free_internal.5787
                - 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.5804
                - p_malloc.5805
                - p_free_internal.5787
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
                - primes_closest
            - BranchSide:      'hash.c:462,14'
              BranchSideFuncs:
                - primes_closest
                - malloc_multiply_check.5804
                - p_malloc.5805
                - p_free_internal.5787
                - 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.5804
                - p_malloc.5805
                - p_free_internal.5787
                - 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.5804
                - p_malloc.5805
                - p_free_internal.5787
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:462,12'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
                - p_free_internal.5787
                - 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.5804
                - p_malloc.5805
                - p_free_internal.5787
                - 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.5804
                - p_malloc.5805
                - p_free_internal.5787
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:471,13'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
                - p_free_internal.5787
                - 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.5804
                - p_malloc.5805
                - p_free_internal.5787
                - 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.5804
                - p_malloc.5805
                - p_free_internal.5787
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:474,2'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
                - p_free_internal.5787
                - 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.5787
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:501,2'
              BranchSideFuncs:
                - p_free_internal.5787
        - Branch String:   'hash.c:485,7'
          Branch Sides:
            - BranchSide:      'hash.c:486,27'
              BranchSideFuncs:
                - hash_table_insert_node
                - p_free_internal.5787
                - free_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:490,15'
              BranchSideFuncs:
                - p_free_internal.5787
                - 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.5787
                - hash_table_insert_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:499,2'
              BranchSideFuncs:
                - p_free_internal.5787
                - 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.5787
                - hash_table_insert_node
            - BranchSide:      'hash.c:497,14'
              BranchSideFuncs:
                - free_node
                - p_free_internal.5787
                - 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,9'
              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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'hash.c:242,10'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
            - BranchSide:      'hash.c:259,9'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
            - BranchSide:      'hash.c:275,6'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
                - hash_table_resize
                - hash_table_insert_node
        - Branch String:   'hash.c:261,7'
          Branch Sides:
            - BranchSide:      'hash.c:262,4'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
                - hash_table_resize
                - hash_table_insert_node
            - BranchSide:      'hash.c:264,7'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
            - BranchSide:      'hash.c:271,10'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - 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.5804
                - p_malloc.5805
                - hash_table_insert_node
            - BranchSide:      'hash.c:282,7'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
        - 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.5804
                - p_malloc.5805
        - Branch String:   'hash.c:282,7'
          Branch Sides:
            - BranchSide:      'hash.c:283,11'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
            - 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,17'
              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.5787
            - 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: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      './mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:166,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.5813
                - p_free_internal.5787
                - p_free_internal.5787
                - 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.5813
                - p_free_internal.5787
                - p_free_internal.5787
        - Branch String:   'hash.c:142,6'
          Branch Sides:
            - BranchSide:      'hash.c:143,28'
              BranchSideFuncs:
                - pool_unref.5813
                - p_free_internal.5787
                - p_free_internal.5787
            - BranchSide:      'hash.c:147,14'
              BranchSideFuncs:
                - pool_unref.5813
                - p_free_internal.5787
                - p_free_internal.5787
      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:
        - 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.5804
                - p_malloc.5805
            - BranchSide:      'hash.c:73,3'
              BranchSideFuncs:
                - malloc_multiply_check.5804
                - p_malloc.5805
      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: 159
      functionLinenumberEnd: 161
      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:    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:    1
      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:    5
      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:    home_expand_tilde
      functionSourceFile: '/src/dovecot/src/lib/home-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - home
      BBCount:         13
      ICount:          74
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - t_strconcat
      functionUses:    0
      BranchProfiles:
        - Branch String:   'home-expand.c:62,19'
          Branch Sides:
            - BranchSide:      'home-expand.c:62,23'
              BranchSideFuncs: []
            - BranchSide:      'home-expand.c:63,10'
              BranchSideFuncs: []
        - Branch String:   'home-expand.c:62,6'
          Branch Sides:
            - BranchSide:      'home-expand.c:63,10'
              BranchSideFuncs: []
            - BranchSide:      'home-expand.c:65,6'
              BranchSideFuncs:
                - t_strconcat
        - Branch String:   'home-expand.c:65,6'
          Branch Sides:
            - BranchSide:      'home-expand.c:66,10'
              BranchSideFuncs: []
            - BranchSide:      'home-expand.c:67,6'
              BranchSideFuncs:
                - t_strconcat
        - Branch String:   'home-expand.c:67,6'
          Branch Sides:
            - BranchSide:      'home-expand.c:68,10'
              BranchSideFuncs: []
            - BranchSide:      'home-expand.c:71,21'
              BranchSideFuncs:
                - t_strconcat
      Callsites:
        - Src:             'home-expand.c:71,9'
          Dst:             t_strconcat
    - functionName:    home_expand
      functionSourceFile: '/src/dovecot/src/lib/home-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - home_try_expand
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'home-expand.c:56,8'
          Dst:             home_try_expand
    - functionName:    home_try_expand
      functionSourceFile: '/src/dovecot/src/lib/home-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 9
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _path
      BBCount:         30
      ICount:          173
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - getenv
        - i_error
        - i_getpwnam
        - strchr
        - t_strconcat
        - t_strdup
        - t_strdup_until
      functionUses:    1
      BranchProfiles:
        - Branch String:   'home-expand.c:14,19'
          Branch Sides:
            - BranchSide:      'home-expand.c:14,23'
              BranchSideFuncs: []
            - BranchSide:      'home-expand.c:15,3'
              BranchSideFuncs: []
        - Branch String:   'home-expand.c:14,6'
          Branch Sides:
            - BranchSide:      'home-expand.c:15,3'
              BranchSideFuncs: []
            - BranchSide:      'home-expand.c:17,6'
              BranchSideFuncs:
                - strchr
                - t_strdup_until
                - i_getpwnam
                - t_strconcat
                - t_strdup
                - i_error
                - getenv
        - Branch String:   'home-expand.c:18,19'
          Branch Sides:
            - BranchSide:      'home-expand.c:18,23'
              BranchSideFuncs:
                - getenv
                - t_strconcat
                - t_strdup
            - BranchSide:      'home-expand.c:19,10'
              BranchSideFuncs:
                - getenv
                - t_strconcat
                - t_strdup
        - Branch String:   'home-expand.c:18,6'
          Branch Sides:
            - BranchSide:      'home-expand.c:19,10'
              BranchSideFuncs:
                - getenv
                - t_strconcat
                - t_strdup
            - BranchSide:      'home-expand.c:22,14'
              BranchSideFuncs:
                - strchr
                - t_strdup_until
                - i_getpwnam
                - t_strconcat
                - t_strdup
                - i_error
        - Branch String:   'home-expand.c:20,7'
          Branch Sides:
            - BranchSide:      'home-expand.c:20,26'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup
            - BranchSide:      'home-expand.c:21,2'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup
        - Branch String:   'home-expand.c:23,7'
          Branch Sides:
            - BranchSide:      'home-expand.c:24,11'
              BranchSideFuncs:
                - i_getpwnam
                - t_strconcat
                - t_strdup
                - i_error
            - BranchSide:      'home-expand.c:27,26'
              BranchSideFuncs:
                - t_strdup_until
                - i_getpwnam
                - t_strconcat
                - t_strdup
                - i_error
        - Branch String:   'home-expand.c:30,3'
          Branch Sides:
            - BranchSide:      'home-expand.c:32,39'
              BranchSideFuncs:
                - i_error
                - t_strconcat
                - t_strdup
            - BranchSide:      'home-expand.c:36,9'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup
            - BranchSide:      'home-expand.c:39,14'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup
        - Branch String:   'home-expand.c:44,6'
          Branch Sides:
            - BranchSide:      'home-expand.c:45,3'
              BranchSideFuncs: []
            - BranchSide:      'home-expand.c:47,7'
              BranchSideFuncs:
                - t_strconcat
                - t_strdup
        - Branch String:   'home-expand.c:47,6'
          Branch Sides:
            - BranchSide:      'home-expand.c:48,21'
              BranchSideFuncs:
                - t_strdup
            - BranchSide:      'home-expand.c:50,24'
              BranchSideFuncs:
                - t_strconcat
      Callsites:
        - Src:             'home-expand.c:19,10'
          Dst:             getenv
        - Src:             'home-expand.c:22,7'
          Dst:             strchr
        - Src:             'home-expand.c:27,11'
          Dst:             t_strdup_until
        - Src:             'home-expand.c:30,11'
          Dst:             i_getpwnam
        - Src:             'home-expand.c:32,4'
          Dst:             i_error
        - Src:             'home-expand.c:48,12'
          Dst:             t_strdup
        - Src:             'home-expand.c:50,12'
          Dst:             t_strconcat
    - functionName:    my_hostdomain
      functionSourceFile: '/src/dovecot/src/lib/hostpid.c'
      linkageType:     externalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         15
      ICount:          69
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - getenv
        - gethostbyname
        - i_strdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'hostpid.c:53,18'
          Branch Sides:
            - BranchSide:      'hostpid.c:56,6'
              BranchSideFuncs:
                - getenv
                - i_strdup
                - gethostbyname
            - BranchSide:      'hostpid.c:56,6'
              BranchSideFuncs:
                - getenv
                - i_strdup
                - gethostbyname
        - Branch String:   'hostpid.c:56,6'
          Branch Sides:
            - BranchSide:      'hostpid.c:56,6'
              BranchSideFuncs:
                - getenv
                - i_strdup
                - gethostbyname
            - BranchSide:      'hostpid.c:57,10'
              BranchSideFuncs:
                - getenv
                - i_strdup
                - gethostbyname
        - Branch String:   'hostpid.c:58,7'
          Branch Sides:
            - BranchSide:      'hostpid.c:59,25'
              BranchSideFuncs:
                - gethostbyname
                - i_strdup
            - BranchSide:      'hostpid.c:66,24'
              BranchSideFuncs:
                - i_strdup
        - Branch String:   'hostpid.c:60,11'
          Branch Sides:
            - BranchSide:      'hostpid.c:60,26'
              BranchSideFuncs:
                - i_strdup
            - BranchSide:      'hostpid.c:60,9'
              BranchSideFuncs:
                - i_strdup
        - Branch String:   'hostpid.c:61,8'
          Branch Sides:
            - BranchSide:      'hostpid.c:63,12'
              BranchSideFuncs:
                - i_strdup
            - BranchSide:      'hostpid.c:65,3'
              BranchSideFuncs:
                - i_strdup
      Callsites:
        - Src:             'hostpid.c:57,10'
          Dst:             getenv
        - Src:             'hostpid.c:59,11'
          Dst:             gethostbyname
        - Src:             'hostpid.c:66,15'
          Dst:             i_strdup
    - functionName:    gethostbyname
      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:    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.5874
                - p_free_internal.5874
            - BranchSide:      'hostpid.c:47,2'
              BranchSideFuncs:
                - p_free_internal.5874
                - p_free_internal.5874
      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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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
      functionUses:    1
      BranchProfiles:
        - Branch String:   'hostpid.c:20,7'
          Branch Sides:
            - BranchSide:      'hostpid.c:24,2'
              BranchSideFuncs:
                - p_free_internal.5874
                - p_free_internal.5874
                - getenv
                - strcspn
                - strlen
                - i_strdup
                - getpid
                - i_snprintf
                - i_fatal
                - gethostname
                - i_fatal
            - BranchSide:      'hostpid.c:24,2'
              BranchSideFuncs:
                - p_free_internal.5874
                - p_free_internal.5874
                - 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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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:    2
      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.5924
                - i_memcpy.5912
                - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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:    2
      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:    49
      BranchProfiles:  []
      Callsites:
        - Src:             'imem.c:19,9'
          Dst:             p_strdup
    - functionName:    p_realloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 126
      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: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:120,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:122,6'
              BranchSideFuncs: []
        - Branch String:   './mempool.h:122,6'
          Branch Sides:
            - BranchSide:      './mempool.h:123,10'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:125,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,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:    4
      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:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'imem.c:9,9'
          Dst:             p_malloc
    - 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:    3
      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,9'
          Branch Sides:
            - BranchSide:      'ipwd.c:29,26'
              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:    4
      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,9'
          Branch Sides:
            - BranchSide:      'ipwd.c:17,26'
              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:    1
      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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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.5961
                - p_free_internal.5961
            - BranchSide:      'ipwd.c:41,2'
              BranchSideFuncs:
                - p_free_internal.5961
                - p_free_internal.5961
      Callsites:
        - Src:             'ipwd.c:41,2'
          Dst:             p_free_internal
        - Src:             'ipwd.c:42,2'
          Dst:             p_free_internal
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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: 133
      functionLinenumberEnd: 136
      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: 152
      functionLinenumberEnd: 153
      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:153,10'
          Branch Sides:
            - BranchSide:      'iostream.c:153,35'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:153,52'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_stream_switch_ioloop_to
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 149
      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: 125
      functionLinenumberEnd: 143
      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:128,20'
          Branch Sides:
            - BranchSide:      'iostream.c:128,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:131,13'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - __errno_location
                - o_stream_get_error
        - Branch String:   'iostream.c:128,6'
          Branch Sides:
            - BranchSide:      'iostream.c:129,11'
              BranchSideFuncs:
                - __errno_location
                - i_stream_get_error
                - __errno_location
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'iostream.c:131,13'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - __errno_location
                - o_stream_get_error
        - Branch String:   'iostream.c:131,28'
          Branch Sides:
            - BranchSide:      'iostream.c:131,31'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - __errno_location
                - o_stream_get_error
            - BranchSide:      'iostream.c:135,3'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'iostream.c:131,13'
          Branch Sides:
            - BranchSide:      'iostream.c:132,11'
              BranchSideFuncs:
                - __errno_location
                - o_stream_get_error
                - __errno_location
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'iostream.c:135,3'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'iostream.c:139,17'
          Branch Sides:
            - BranchSide:      'iostream.c:139,20'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:140,3'
              BranchSideFuncs: []
        - Branch String:   'iostream.c:139,6'
          Branch Sides:
            - BranchSide:      'iostream.c:140,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:142,51'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'iostream.c:129,3'
          Dst:             __errno_location
        - Src:             'iostream.c:130,12'
          Dst:             i_stream_get_error
        - Src:             'iostream.c:132,3'
          Dst:             __errno_location
        - Src:             'iostream.c:133,12'
          Dst:             o_stream_get_error
        - Src:             'iostream.c:135,3'
          Dst:             __errno_location
        - Src:             'iostream.c:139,6'
          Dst:             __errno_location
        - Src:             'iostream.c:139,20'
          Dst:             __errno_location
        - Src:             'iostream.c:142,10'
          Dst:             t_strdup_printf
    - functionName:    io_stream_set_verror
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 121
      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:118,16'
          Dst:             i_strdup_vprintf
        - Src:             'iostream.c:119,2'
          Dst:             p_free_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_stream_set_error
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 111
      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:109,2'
          Dst:             io_stream_set_verror
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 244
      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:242,2'
          Dst:             buffer_delete
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      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:251,13'
          Dst:             array_count_i
    - functionName:    io_stream_remove_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 100
      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:94,2'
          Branch Sides:
            - BranchSide:      'iostream.c:95,7'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.6024
            - BranchSide:      'iostream.c:100,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'iostream.c:95,7'
          Branch Sides:
            - BranchSide:      'iostream.c:96,4'
              BranchSideFuncs:
                - array_delete_i.6024
            - BranchSide:      'iostream.c:99,2'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.6024
      Callsites:
        - Src:             'iostream.c:93,8'
          Dst:             array_get_i
        - Src:             'iostream.c:96,4'
          Dst:             array_delete_i
        - Src:             'iostream.c:100,2'
          Dst:             i_unreached
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 336
      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:334,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.6015
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.6015
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    io_stream_add_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 85
      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:80,6'
          Branch Sides:
            - BranchSide:      'iostream.c:80,6'
              BranchSideFuncs:
                - array_append_space_i.6027
            - BranchSide:      'iostream.c:81,3'
              BranchSideFuncs:
                - array_create_i.6028
                - array_append_space_i.6027
      Callsites:
        - Src:             'iostream.c:80,7'
          Dst:             array_is_created_i
        - Src:             'iostream.c:81,3'
          Dst:             array_create_i
        - Src:             'iostream.c:82,7'
          Dst:             array_append_space_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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: 71
      functionLinenumberEnd: 73
      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: 65
      functionLinenumberEnd: 67
      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: 156
      functionLinenumberEnd: 158
      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:157,2'
          Dst:             buffer_free
    - functionName:    io_stream_free
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 62
      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:53,6'
          Branch Sides:
            - BranchSide:      'iostream.c:54,3'
              BranchSideFuncs:
                - array_free_i.6030
                - p_free_internal.6021
                - p_free_internal.6021
                - p_free_internal.6021
            - BranchSide:      'iostream.c:59,9'
              BranchSideFuncs:
                - p_free_internal.6021
                - p_free_internal.6021
                - p_free_internal.6021
        - Branch String:   'iostream.c:54,3'
          Branch Sides:
            - BranchSide:      'iostream.c:55,4'
              BranchSideFuncs:
                - array_free_i.6030
                - p_free_internal.6021
                - p_free_internal.6021
                - p_free_internal.6021
            - BranchSide:      'iostream.c:56,3'
              BranchSideFuncs:
                - array_free_i.6030
                - p_free_internal.6021
                - p_free_internal.6021
                - p_free_internal.6021
      Callsites:
        - Src:             'iostream.c:53,6'
          Dst:             array_is_created_i
        - Src:             'iostream.c:56,3'
          Dst:             array_free_i
        - Src:             'iostream.c:59,9'
          Dst:             p_free_internal
        - Src:             'iostream.c:60,9'
          Dst:             p_free_internal
        - Src:             'iostream.c:61,9'
          Dst:             p_free_internal
    - functionName:    io_stream_unref
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 47
      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:40,2'
          Branch Sides:
            - BranchSide:      'iostream.c:40,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream.c:41,8'
              BranchSideFuncs: []
        - Branch String:   'iostream.c:41,6'
          Branch Sides:
            - BranchSide:      'iostream.c:42,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:44,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream.c:40,2'
          Dst:             i_panic
    - functionName:    io_stream_ref
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 36
      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:33,2'
          Branch Sides:
            - BranchSide:      'iostream.c:33,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream.c:33,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream.c:33,2'
          Dst:             i_panic
    - functionName:    io_stream_default_destroy
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 18
      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: 12
      functionLinenumberEnd: 13
      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: 21
      functionLinenumberEnd: 29
      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:22,6'
          Branch Sides:
            - BranchSide:      'iostream.c:23,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:24,6'
              BranchSideFuncs: []
        - Branch String:   'iostream.c:24,6'
          Branch Sides:
            - BranchSide:      'iostream.c:24,6'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:25,3'
              BranchSideFuncs: []
      Callsites:       []
    - 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.6078
                - 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.6078
                - 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.6078
        - 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.6078
      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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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.6091
                - p_malloc.6093
                - i_panic
                - i_panic
            - BranchSide:      'iostream-pump.c:117,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - malloc_multiply_check.6091
                - p_malloc.6093
                - 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.6091
                - p_malloc.6093
                - 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.6091
                - p_malloc.6093
                - i_panic
            - BranchSide:      'iostream-pump.c:119,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - malloc_multiply_check.6091
                - p_malloc.6093
                - 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.6091
                - p_malloc.6093
      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: 112
      functionLinenumberEnd: 114
      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.6138
                - str_append_c.6138
                - str_append_c.6138
        - Branch String:   'iostream-rawlog.c:37,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:38,3'
              BranchSideFuncs:
                - str_append_c.6138
                - str_append_c.6138
                - str_append_c.6138
                - 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.6137
                - 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.6137
                - 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: 1167
      functionLinenumberEnd: 1185
      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:1168,6'
          Branch Sides:
            - BranchSide:      'istream.c:1169,23'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_read
                - i_stream_seek
                - i_panic
            - BranchSide:      'istream.c:1183,28'
              BranchSideFuncs: []
        - Branch String:   'istream.c:1175,3'
          Branch Sides:
            - BranchSide:      'istream.c:1173,19'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_read
                - i_stream_seek
                - i_panic
            - BranchSide:      'istream.c:1176,3'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
        - Branch String:   'istream.c:1176,3'
          Branch Sides:
            - BranchSide:      'istream.c:1176,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:1177,7'
              BranchSideFuncs:
                - i_stream_seek
        - Branch String:   'istream.c:1177,7'
          Branch Sides:
            - BranchSide:      'istream.c:1178,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1180,32'
              BranchSideFuncs:
                - i_stream_seek
      Callsites:
        - Src:             'istream.c:1174,5'
          Dst:             i_stream_get_data_size
        - Src:             'istream.c:1173,4'
          Dst:             i_stream_skip
        - Src:             'istream.c:1175,19'
          Dst:             i_stream_read
        - Src:             'istream.c:1176,3'
          Dst:             i_panic
        - Src:             'istream.c:1181,3'
          Dst:             i_stream_seek
    - functionName:    i_stream_get_data_size
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 760
      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:759,8'
          Dst:             i_stream_get_data
    - functionName:    i_stream_skip
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 492
      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:471,6'
          Branch Sides:
            - BranchSide:      'istream.c:473,23'
              BranchSideFuncs:
                - i_stream_free_buffer
            - BranchSide:      'istream.c:484,11'
              BranchSideFuncs: []
        - Branch String:   'istream.c:475,38'
          Branch Sides:
            - BranchSide:      'istream.c:476,7'
              BranchSideFuncs:
                - i_stream_free_buffer
            - BranchSide:      'istream.c:480,3'
              BranchSideFuncs: []
        - Branch String:   'istream.c:475,7'
          Branch Sides:
            - BranchSide:      'istream.c:477,20'
              BranchSideFuncs:
                - i_stream_free_buffer
            - BranchSide:      'istream.c:480,3'
              BranchSideFuncs: []
        - Branch String:   'istream.c:488,6'
          Branch Sides:
            - BranchSide:      'istream.c:488,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:488,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:488,6'
          Branch Sides:
            - BranchSide:      'istream.c:489,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:491,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:478,4'
          Dst:             i_stream_free_buffer
    - functionName:    i_stream_read
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - i_stream_read_memarea
        - i_stream_snapshot_free
      functionUses:    7
      BranchProfiles:
        - Branch String:   'istream.c:306,36'
          Branch Sides:
            - BranchSide:      'istream.c:306,39'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_snapshot_free
            - BranchSide:      'istream.c:308,4'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_snapshot_free
        - Branch String:   'istream.c:306,6'
          Branch Sides:
            - BranchSide:      'istream.c:308,4'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_snapshot_free
            - BranchSide:      'istream.c:310,30'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_snapshot_free
        - Branch String:   'istream.c:311,6'
          Branch Sides:
            - BranchSide:      'istream.c:311,6'
              BranchSideFuncs:
                - i_stream_snapshot_free
            - BranchSide:      'istream.c:312,27'
              BranchSideFuncs:
                - i_stream_snapshot_free
      Callsites:
        - Src:             'istream.c:310,8'
          Dst:             i_stream_read_memarea
        - Src:             'istream.c:312,3'
          Dst:             i_stream_snapshot_free
    - functionName:    i_stream_seek
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 523
      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:511,35'
          Branch Sides:
            - BranchSide:      'istream.c:512,33'
              BranchSideFuncs:
                - i_stream_can_optimize_seek
                - i_stream_update
                - i_stream_skip
            - BranchSide:      'istream.c:515,7'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:511,6'
          Branch Sides:
            - BranchSide:      'istream.c:513,17'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_update
            - BranchSide:      'istream.c:515,7'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:515,7'
          Branch Sides:
            - BranchSide:      'istream.c:515,7'
              BranchSideFuncs:
                - i_stream_update
            - BranchSide:      'istream.c:515,7'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:515,7'
          Branch Sides:
            - BranchSide:      'istream.c:516,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:519,3'
              BranchSideFuncs:
                - i_stream_update
      Callsites:
        - Src:             'istream.c:512,6'
          Dst:             i_stream_can_optimize_seek
        - Src:             'istream.c:513,3'
          Dst:             i_stream_skip
        - Src:             'istream.c:522,2'
          Dst:             i_stream_update
    - functionName:    i_stream_can_optimize_seek
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 505
      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:496,6'
          Branch Sides:
            - BranchSide:      'istream.c:497,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:500,6'
              BranchSideFuncs:
                - i_stream_can_optimize_seek
        - Branch String:   'istream.c:500,6'
          Branch Sides:
            - BranchSide:      'istream.c:502,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:504,36'
              BranchSideFuncs:
                - i_stream_can_optimize_seek
      Callsites:
        - Src:             'istream.c:504,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: 331
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         62
      ICount:          413
      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:336,6'
          Branch Sides:
            - BranchSide:      'istream.c:336,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:336,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:336,6'
          Branch Sides:
            - BranchSide:      'istream.c:337,3'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'istream.c:342,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:344,6'
          Branch Sides:
            - BranchSide:      'istream.c:345,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:347,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:348,6'
          Branch Sides:
            - BranchSide:      'istream.c:350,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:354,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:357,2'
          Branch Sides:
            - BranchSide:      'istream.c:357,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:358,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:358,2'
          Branch Sides:
            - BranchSide:      'istream.c:360,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
            - BranchSide:      'istream.c:363,7'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
            - BranchSide:      'istream.c:374,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
            - BranchSide:      'istream.c:377,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream.c:360,3'
          Branch Sides:
            - BranchSide:      'istream.c:360,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:361,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
        - Branch String:   'istream.c:363,7'
          Branch Sides:
            - BranchSide:      'istream.c:366,4'
              BranchSideFuncs:
                - __errno_location
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
            - BranchSide:      'istream.c:369,4'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream.c:369,4'
          Branch Sides:
            - BranchSide:      'istream.c:369,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:370,4'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
        - Branch String:   'istream.c:370,4'
          Branch Sides:
            - BranchSide:      'istream.c:0,0'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:370,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:374,3'
          Branch Sides:
            - BranchSide:      'istream.c:374,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:375,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
        - Branch String:   'istream.c:377,3'
          Branch Sides:
            - BranchSide:      'istream.c:377,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:378,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream.c:378,3'
          Branch Sides:
            - BranchSide:      'istream.c:378,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:379,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
        - Branch String:   'istream.c:379,3'
          Branch Sides:
            - BranchSide:      'istream.c:379,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:380,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
        - Branch String:   'istream.c:384,6'
          Branch Sides:
            - BranchSide:      'istream.c:389,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
            - BranchSide:      'istream.c:392,18'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
        - Branch String:   'istream.c:395,2'
          Branch Sides:
            - BranchSide:      'istream.c:395,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:396,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:338,3'
          Dst:             __errno_location
        - Src:             'istream.c:345,3'
          Dst:             i_stream_seek
        - Src:             'istream.c:357,2'
          Dst:             i_panic
        - Src:             'istream.c:360,3'
          Dst:             i_panic
        - Src:             'istream.c:367,4'
          Dst:             __errno_location
        - Src:             'istream.c:369,4'
          Dst:             i_panic
        - Src:             'istream.c:370,4'
          Dst:             i_panic
        - Src:             'istream.c:374,3'
          Dst:             i_panic
        - Src:             'istream.c:377,3'
          Dst:             i_panic
        - Src:             'istream.c:378,3'
          Dst:             i_panic
        - Src:             'istream.c:379,3'
          Dst:             i_panic
        - Src:             'istream.c:392,2'
          Dst:             i_stream_update
        - Src:             'istream.c:395,2'
          Dst:             i_stream_is_buffer_invalid
        - Src:             'istream.c:395,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.6350
                - 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.6350
                - memarea_unref
        - Branch String:   'istream.c:270,7'
          Branch Sides:
            - BranchSide:      'istream.c:271,19'
              BranchSideFuncs:
                - memarea_unref
                - i_stream_unref
                - p_free_internal.6350
            - BranchSide:      'istream.c:272,19'
              BranchSideFuncs:
                - i_stream_unref
                - p_free_internal.6350
      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_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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_is_buffer_invalid
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 714
      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:698,6'
          Branch Sides:
            - BranchSide:      'istream.c:700,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:702,6'
              BranchSideFuncs:
                - i_stream_is_buffer_invalid
        - Branch String:   'istream.c:702,6'
          Branch Sides:
            - BranchSide:      'istream.c:705,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:707,6'
              BranchSideFuncs:
                - i_stream_is_buffer_invalid
        - Branch String:   'istream.c:707,6'
          Branch Sides:
            - BranchSide:      'istream.c:711,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:713,36'
              BranchSideFuncs:
                - i_stream_is_buffer_invalid
      Callsites:
        - Src:             'istream.c:713,9'
          Dst:             i_stream_is_buffer_invalid
    - functionName:    i_stream_free_buffer
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 463
      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:453,6'
          Branch Sides:
            - BranchSide:      'istream.c:454,18'
              BranchSideFuncs:
                - memarea_unref
            - BranchSide:      'istream.c:456,13'
              BranchSideFuncs:
                - p_free_internal.6350
        - Branch String:   'istream.c:456,13'
          Branch Sides:
            - BranchSide:      'istream.c:457,3'
              BranchSideFuncs:
                - p_free_internal.6350
            - BranchSide:      'istream.c:460,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:454,3'
          Dst:             memarea_unref
        - Src:             'istream.c:457,3'
          Dst:             p_free_internal
    - functionName:    i_stream_get_data
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 718
      functionLinenumberEnd: 753
      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:721,6'
          Branch Sides:
            - BranchSide:      'istream.c:722,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:726,6'
              BranchSideFuncs:
                - i_stream_is_buffer_invalid
        - Branch String:   'istream.c:726,6'
          Branch Sides:
            - BranchSide:      'istream.c:741,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:751,19'
              BranchSideFuncs: []
        - Branch String:   'istream.c:744,7'
          Branch Sides:
            - BranchSide:      'istream.c:745,20'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:748,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:726,6'
          Dst:             i_stream_is_buffer_invalid
    - functionName:    i_stream_w_buffer_free
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 846
      functionLinenumberEnd: 848
      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:847,2'
          Dst:             p_free_internal
    - functionName:    i_stream_read_bytes
      functionSourceFile: '/src/dovecot/src/lib/./istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 225
      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:224,2'
          Branch Sides:
            - BranchSide:      './istream.h:224,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './istream.h:224,2'
              BranchSideFuncs:
                - i_stream_read_data
      Callsites:
        - Src:             './istream.h:224,2'
          Dst:             i_panic
        - Src:             './istream.h:225,9'
          Dst:             i_stream_read_data
    - functionName:    i_stream_read_data
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 779
      functionLinenumberEnd: 808
      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:785,7'
          Branch Sides:
            - BranchSide:      'istream.c:786,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:789,23'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_get_data
                - i_panic
                - i_stream_get_data
        - Branch String:   'istream.c:790,7'
          Branch Sides:
            - BranchSide:      'istream.c:791,14'
              BranchSideFuncs:
                - i_stream_get_data
                - i_panic
                - i_stream_get_data
                - i_stream_read
            - BranchSide:      'istream.c:792,2'
              BranchSideFuncs:
                - i_stream_get_data
                - i_panic
                - i_stream_get_data
                - i_stream_read
        - Branch String:   'istream.c:792,2'
          Branch Sides:
            - BranchSide:      'istream.c:784,31'
              BranchSideFuncs:
                - i_stream_get_data
                - i_stream_read
                - i_stream_get_data
                - i_panic
            - BranchSide:      'istream.c:794,30'
              BranchSideFuncs:
                - i_stream_get_data
                - i_panic
        - Branch String:   'istream.c:795,6'
          Branch Sides:
            - BranchSide:      'istream.c:796,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:798,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:798,6'
          Branch Sides:
            - BranchSide:      'istream.c:800,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:803,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:800,3'
          Branch Sides:
            - BranchSide:      'istream.c:800,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:801,3'
              BranchSideFuncs: []
        - Branch String:   'istream.c:803,32'
          Branch Sides:
            - BranchSide:      'istream.c:803,35'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:807,2'
              BranchSideFuncs: []
        - Branch String:   'istream.c:803,6'
          Branch Sides:
            - BranchSide:      'istream.c:805,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:807,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:784,13'
          Dst:             i_stream_get_data
        - Src:             'istream.c:789,9'
          Dst:             i_stream_read
        - Src:             'istream.c:794,12'
          Dst:             i_stream_get_data
        - Src:             'istream.c:800,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: 1321
      functionLinenumberEnd: 1329
      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:1326,10'
          Dst:             i_stream_create_error
        - Src:             'istream.c:1327,2'
          Dst:             io_stream_set_verror
    - functionName:    i_stream_create_error
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1300
      functionLinenumberEnd: 1316
      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:1303,11'
          Dst:             malloc_multiply_check
        - Src:             'istream.c:1303,11'
          Dst:             p_malloc
        - Src:             'istream.c:1314,2'
          Dst:             i_stream_create
        - Src:             'istream.c:1315,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    i_stream_create
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1246
      functionLinenumberEnd: 1296
      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:1250,6'
          Branch Sides:
            - BranchSide:      'istream.c:1251,24'
              BranchSideFuncs:
                - i_stream_init_parent
                - io_stream_init
            - BranchSide:      'istream.c:1252,11'
              BranchSideFuncs:
                - io_stream_init
                - memarea_init_empty
        - Branch String:   'istream.c:1259,6'
          Branch Sides:
            - BranchSide:      'istream.c:1260,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1261,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1261,6'
          Branch Sides:
            - BranchSide:      'istream.c:1262,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1263,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1263,6'
          Branch Sides:
            - BranchSide:      'istream.c:1264,19'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1268,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1268,6'
          Branch Sides:
            - BranchSide:      'istream.c:1269,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1270,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1270,6'
          Branch Sides:
            - BranchSide:      'istream.c:1271,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1272,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1272,6'
          Branch Sides:
            - BranchSide:      'istream.c:1273,23'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1277,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1277,6'
          Branch Sides:
            - BranchSide:      'istream.c:1278,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1281,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1281,6'
          Branch Sides:
            - BranchSide:      'istream.c:1282,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1284,2'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1293,6'
          Branch Sides:
            - BranchSide:      'istream.c:1293,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1294,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1251,3'
          Dst:             i_stream_init_parent
        - Src:             'istream.c:1255,22'
          Dst:             memarea_init_empty
        - Src:             'istream.c:1291,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: 1231
      functionLinenumberEnd: 1241
      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:1240,2'
          Dst:             i_stream_ref
    - functionName:    i_stream_default_close
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1076
      functionLinenumberEnd: 1082
      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:1080,6'
          Branch Sides:
            - BranchSide:      'istream.c:1080,6'
              BranchSideFuncs:
                - i_stream_close
            - BranchSide:      'istream.c:1081,18'
              BranchSideFuncs:
                - i_stream_close
      Callsites:
        - Src:             'istream.c:1081,3'
          Dst:             i_stream_close
    - functionName:    i_stream_default_destroy
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1085
      functionLinenumberEnd: 1091
      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:1089,2'
          Dst:             i_stream_free_buffer
        - Src:             'istream.c:1090,2'
          Dst:             i_stream_unref
    - functionName:    i_stream_default_seek_seekable
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1096
      functionLinenumberEnd: 1099
      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: 1103
      functionLinenumberEnd: 1134
      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:1106,6'
          Branch Sides:
            - BranchSide:      'istream.c:1108,23'
              BranchSideFuncs:
                - i_stream_get_name
                - i_panic
            - BranchSide:      'istream.c:1110,2'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_skip
                - i_stream_skip
                - io_stream_set_error
        - Branch String:   'istream.c:1110,2'
          Branch Sides:
            - BranchSide:      'istream.c:1110,2'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_skip
                - i_stream_skip
                - io_stream_set_error
            - BranchSide:      'istream.c:1111,24'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_skip
                - i_stream_skip
                - io_stream_set_error
        - Branch String:   'istream.c:1114,7'
          Branch Sides:
            - BranchSide:      'istream.c:1115,8'
              BranchSideFuncs:
                - io_stream_set_error
            - BranchSide:      'istream.c:1127,7'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_read
                - io_stream_set_error
                - i_stream_skip
        - Branch String:   'istream.c:1115,8'
          Branch Sides:
            - BranchSide:      'istream.c:1117,5'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1119,25'
              BranchSideFuncs:
                - io_stream_set_error
        - Branch String:   'istream.c:1127,7'
          Branch Sides:
            - BranchSide:      'istream.c:1128,19'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_read
                - i_stream_skip
                - io_stream_set_error
            - BranchSide:      'istream.c:1130,19'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_read
                - i_stream_skip
                - io_stream_set_error
      Callsites:
        - Src:             'istream.c:1108,4'
          Dst:             i_stream_get_name
        - Src:             'istream.c:1107,3'
          Dst:             i_panic
        - Src:             'istream.c:1111,9'
          Dst:             i_stream_read
        - Src:             'istream.c:1119,4'
          Dst:             io_stream_set_error
        - Src:             'istream.c:1128,4'
          Dst:             i_stream_skip
        - Src:             'istream.c:1130,4'
          Dst:             i_stream_skip
    - functionName:    i_stream_default_stat
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1189
      functionLinenumberEnd: 1214
      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:1192,6'
          Branch Sides:
            - BranchSide:      'istream.c:1193,10'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1195,20'
              BranchSideFuncs:
                - i_stream_stat
                - seekable_i_stream_get_size
        - Branch String:   'istream.c:1195,6'
          Branch Sides:
            - BranchSide:      'istream.c:1196,34'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1199,2'
              BranchSideFuncs:
                - seekable_i_stream_get_size
        - Branch String:   'istream.c:1203,7'
          Branch Sides:
            - BranchSide:      'istream.c:1204,35'
              BranchSideFuncs:
                - seekable_i_stream_get_size
            - BranchSide:      'istream.c:1207,2'
              BranchSideFuncs: []
        - Branch String:   'istream.c:1204,8'
          Branch Sides:
            - BranchSide:      'istream.c:1205,5'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1206,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1195,6'
          Dst:             i_stream_stat
        - Src:             'istream.c:1204,8'
          Dst:             seekable_i_stream_get_size
    - functionName:    i_stream_default_get_size
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1219
      functionLinenumberEnd: 1227
      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:1220,6'
          Branch Sides:
            - BranchSide:      'istream.c:1221,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1222,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:1222,6'
          Branch Sides:
            - BranchSide:      'istream.c:1223,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1225,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.6374
                - p_malloc.6375
                - 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.6374
                - p_malloc.6375
                - memarea_ref
            - BranchSide:      'istream.c:236,14'
              BranchSideFuncs:
                - malloc_multiply_check.6374
                - p_malloc.6375
                - 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.6374
                - p_malloc.6375
                - 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:253,26'
              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: 1065
      functionLinenumberEnd: 1072
      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:1070,6'
          Branch Sides:
            - BranchSide:      'istream.c:1070,6'
              BranchSideFuncs:
                - i_stream_set_max_buffer_size
            - BranchSide:      'istream.c:1071,32'
              BranchSideFuncs:
                - i_stream_set_max_buffer_size
      Callsites:
        - Src:             'istream.c:1071,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:    8
      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: 551
      functionLinenumberEnd: 563
      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:554,6'
          Branch Sides:
            - BranchSide:      'istream.c:554,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:554,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:554,6'
          Branch Sides:
            - BranchSide:      'istream.c:555,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:557,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:557,6'
          Branch Sides:
            - BranchSide:      'istream.c:558,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:561,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: 1138
      functionLinenumberEnd: 1163
      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:1141,6'
          Branch Sides:
            - BranchSide:      'istream.c:1143,17'
              BranchSideFuncs:
                - i_stream_seek
            - BranchSide:      'istream.c:1151,6'
              BranchSideFuncs:
                - i_stream_default_seek_nonseekable
        - Branch String:   'istream.c:1151,6'
          Branch Sides:
            - BranchSide:      'istream.c:1153,18'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1160,37'
              BranchSideFuncs:
                - i_stream_default_seek_nonseekable
        - Branch String:   'istream.c:1155,7'
          Branch Sides:
            - BranchSide:      'istream.c:1156,23'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1157,17'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1143,3'
          Dst:             i_stream_seek
        - Src:             'istream.c:1160,3'
          Dst:             i_stream_default_seek_nonseekable
    - functionName:    i_stream_unset_io
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1053
      functionLinenumberEnd: 1060
      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:1056,2'
          Branch Sides:
            - BranchSide:      'istream.c:1056,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:1057,20'
              BranchSideFuncs:
                - io_is_pending
        - Branch String:   'istream.c:1057,6'
          Branch Sides:
            - BranchSide:      'istream.c:1057,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1058,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1054,11'
          Dst:             i_stream_get_root_io
        - Src:             'istream.c:1056,2'
          Dst:             i_panic
        - Src:             'istream.c:1057,6'
          Dst:             io_is_pending
    - functionName:    i_stream_get_root_io
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1002
      functionLinenumberEnd: 1007
      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:1003,2'
          Branch Sides:
            - BranchSide:      'istream.c:1004,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:1007,9'
              BranchSideFuncs: []
        - Branch String:   'istream.c:1004,3'
          Branch Sides:
            - BranchSide:      'istream.c:1004,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:1005,12'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'istream.c:1004,3'
          Dst:             i_panic
    - functionName:    i_stream_set_io
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1041
      functionLinenumberEnd: 1050
      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:1044,2'
          Branch Sides:
            - BranchSide:      'istream.c:1044,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:1045,28'
              BranchSideFuncs:
                - io_set_pending
        - Branch String:   'istream.c:1046,6'
          Branch Sides:
            - BranchSide:      'istream.c:1046,6'
              BranchSideFuncs:
                - io_set_pending
            - BranchSide:      'istream.c:1047,18'
              BranchSideFuncs:
                - io_set_pending
      Callsites:
        - Src:             'istream.c:1042,11'
          Dst:             i_stream_get_root_io
        - Src:             'istream.c:1044,2'
          Dst:             i_panic
        - Src:             'istream.c:1047,3'
          Dst:             io_set_pending
    - functionName:    i_stream_switch_ioloop
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1038
      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:1037,2'
          Dst:             i_stream_switch_ioloop_to
    - functionName:    i_stream_switch_ioloop_to
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1023
      functionLinenumberEnd: 1033
      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:1027,7'
          Branch Sides:
            - BranchSide:      'istream.c:1028,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1031,12'
              BranchSideFuncs: []
        - Branch String:   'istream.c:1032,2'
          Branch Sides:
            - BranchSide:      'istream.c:1027,7'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1033,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1024,2'
          Dst:             io_stream_switch_ioloop_to
    - functionName:    i_stream_set_input_pending
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1011
      functionLinenumberEnd: 1020
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - pending
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_get_root_io
        - io_set_pending
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:1012,6'
          Branch Sides:
            - BranchSide:      'istream.c:1013,3'
              BranchSideFuncs:
                - i_stream_get_root_io
                - io_set_pending
            - BranchSide:      'istream.c:1015,32'
              BranchSideFuncs:
                - i_stream_get_root_io
                - io_set_pending
        - Branch String:   'istream.c:1016,6'
          Branch Sides:
            - BranchSide:      'istream.c:1017,18'
              BranchSideFuncs:
                - io_set_pending
            - BranchSide:      'istream.c:1019,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1015,11'
          Dst:             i_stream_get_root_io
        - Src:             'istream.c:1017,3'
          Dst:             io_set_pending
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    i_stream_add_data
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 986
      functionLinenumberEnd: 999
      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:990,6'
          Branch Sides:
            - BranchSide:      'istream.c:991,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:992,27'
              BranchSideFuncs:
                - i_stream_try_alloc
                - i_memcpy.6399
        - Branch String:   'istream.c:993,6'
          Branch Sides:
            - BranchSide:      'istream.c:994,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:996,2'
              BranchSideFuncs:
                - i_memcpy.6399
      Callsites:
        - Src:             'istream.c:992,8'
          Dst:             i_stream_try_alloc
        - Src:             'istream.c:996,2'
          Dst:             i_memcpy
    - functionName:    i_stream_try_alloc
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 904
      functionLinenumberEnd: 937
      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:905,2'
          Branch Sides:
            - BranchSide:      'istream.c:905,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:906,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:906,2'
          Branch Sides:
            - BranchSide:      'istream.c:906,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:908,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:908,6'
          Branch Sides:
            - BranchSide:      'istream.c:909,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:925,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:909,7'
          Branch Sides:
            - BranchSide:      'istream.c:911,8'
              BranchSideFuncs:
                - i_stream_compress
                - i_panic
                - memarea_get_refcount
                - i_stream_w_buffer_realloc
            - BranchSide:      'istream.c:919,14'
              BranchSideFuncs:
                - i_stream_get_max_buffer_size
                - i_panic
                - i_stream_grow_buffer
        - Branch String:   'istream.c:911,32'
          Branch Sides:
            - BranchSide:      'istream.c:912,29'
              BranchSideFuncs:
                - memarea_get_refcount
                - i_stream_compress
                - i_panic
                - i_stream_w_buffer_realloc
            - BranchSide:      'istream.c:918,22'
              BranchSideFuncs:
                - i_stream_compress
                - i_panic
        - Branch String:   'istream.c:911,8'
          Branch Sides:
            - BranchSide:      'istream.c:916,31'
              BranchSideFuncs:
                - i_stream_w_buffer_realloc
                - i_stream_compress
                - i_panic
            - BranchSide:      'istream.c:918,22'
              BranchSideFuncs:
                - i_stream_compress
                - i_panic
        - Branch String:   'istream.c:925,30'
          Branch Sides:
            - BranchSide:      'istream.c:926,7'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:927,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:925,6'
          Branch Sides:
            - BranchSide:      'istream.c:927,13'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:929,22'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:931,7'
          Branch Sides:
            - BranchSide:      'istream.c:932,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:934,14'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:936,2'
          Branch Sides:
            - BranchSide:      'istream.c:936,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:936,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:936,2'
          Branch Sides:
            - BranchSide:      'istream.c:936,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:936,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:905,2'
          Dst:             i_panic
        - Src:             'istream.c:906,2'
          Dst:             i_panic
        - Src:             'istream.c:912,8'
          Dst:             memarea_get_refcount
        - Src:             'istream.c:916,5'
          Dst:             i_stream_w_buffer_realloc
        - Src:             'istream.c:918,4'
          Dst:             i_stream_compress
        - Src:             'istream.c:919,36'
          Dst:             i_stream_get_max_buffer_size
        - Src:             'istream.c:921,4'
          Dst:             i_stream_grow_buffer
        - Src:             'istream.c:936,2'
          Dst:             i_panic
    - functionName:    i_stream_w_buffer_realloc
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 877
      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:855,30'
          Branch Sides:
            - BranchSide:      'istream.c:856,27'
              BranchSideFuncs:
                - memarea_get_refcount
                - i_malloc
                - memarea_init
                - memarea_unref
                - i_memcpy.6399
                - i_panic
                - memarea_free_without_callback
                - i_realloc
            - BranchSide:      'istream.c:863,25'
              BranchSideFuncs:
                - i_malloc
                - memarea_init
                - memarea_unref
                - i_memcpy.6399
                - i_panic
        - Branch String:   'istream.c:855,6'
          Branch Sides:
            - BranchSide:      'istream.c:859,34'
              BranchSideFuncs:
                - memarea_free_without_callback
                - i_realloc
                - memarea_init
            - BranchSide:      'istream.c:863,25'
              BranchSideFuncs:
                - i_malloc
                - memarea_init
                - memarea_unref
                - i_memcpy.6399
                - i_panic
        - Branch String:   'istream.c:864,7'
          Branch Sides:
            - BranchSide:      'istream.c:865,4'
              BranchSideFuncs:
                - i_memcpy.6399
                - memarea_init
                - memarea_unref
                - i_panic
            - BranchSide:      'istream.c:868,7'
              BranchSideFuncs:
                - memarea_init
                - memarea_unref
        - Branch String:   'istream.c:865,4'
          Branch Sides:
            - BranchSide:      'istream.c:865,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:866,4'
              BranchSideFuncs:
                - i_memcpy.6399
                - memarea_init
                - memarea_unref
      Callsites:
        - Src:             'istream.c:856,6'
          Dst:             memarea_get_refcount
        - Src:             'istream.c:859,3'
          Dst:             memarea_free_without_callback
        - Src:             'istream.c:860,16'
          Dst:             i_realloc
        - Src:             'istream.c:863,16'
          Dst:             i_malloc
        - Src:             'istream.c:865,4'
          Dst:             i_panic
        - Src:             'istream.c:866,4'
          Dst:             i_memcpy
        - Src:             'istream.c:869,4'
          Dst:             memarea_unref
        - Src:             'istream.c:875,20'
          Dst:             memarea_init
        - Src:             'istream.c:875,20'
          Dst:             i_stream_w_buffer_free
    - functionName:    i_stream_compress
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 843
      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:833,2'
          Branch Sides:
            - BranchSide:      'istream.c:833,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:833,2'
              BranchSideFuncs:
                - memarea_get_refcount
                - i_panic
        - Branch String:   'istream.c:833,2'
          Branch Sides:
            - BranchSide:      'istream.c:833,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:836,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:836,6'
          Branch Sides:
            - BranchSide:      'istream.c:836,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:837,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:833,2'
          Dst:             memarea_get_refcount
        - Src:             'istream.c:833,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: 880
      functionLinenumberEnd: 900
      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:886,6'
          Branch Sides:
            - BranchSide:      'istream.c:887,25'
              BranchSideFuncs:
                - i_stream_get_max_buffer_size
                - i_stream_w_buffer_realloc
                - i_panic
            - BranchSide:      'istream.c:889,39'
              BranchSideFuncs:
                - nearest_power
                - i_stream_get_max_buffer_size
                - i_stream_w_buffer_realloc
                - i_panic
        - Branch String:   'istream.c:892,2'
          Branch Sides:
            - BranchSide:      'istream.c:892,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:893,6'
              BranchSideFuncs:
                - i_stream_w_buffer_realloc
        - Branch String:   'istream.c:893,6'
          Branch Sides:
            - BranchSide:      'istream.c:894,25'
              BranchSideFuncs:
                - i_stream_w_buffer_realloc
            - BranchSide:      'istream.c:896,6'
              BranchSideFuncs:
                - i_stream_w_buffer_realloc
        - Branch String:   'istream.c:896,6'
          Branch Sides:
            - BranchSide:      'istream.c:897,25'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:899,29'
              BranchSideFuncs:
                - i_stream_w_buffer_realloc
      Callsites:
        - Src:             'istream.c:889,25'
          Dst:             nearest_power
        - Src:             'istream.c:891,13'
          Dst:             i_stream_get_max_buffer_size
        - Src:             'istream.c:892,2'
          Dst:             i_panic
        - Src:             'istream.c:899,3'
          Dst:             i_stream_w_buffer_realloc
    - functionName:    i_stream_memarea_detach
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 973
      functionLinenumberEnd: 982
      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:974,6'
          Branch Sides:
            - BranchSide:      'istream.c:974,6'
              BranchSideFuncs:
                - memarea_unref
            - BranchSide:      'istream.c:977,18'
              BranchSideFuncs:
                - memarea_unref
      Callsites:
        - Src:             'istream.c:977,3'
          Dst:             memarea_unref
    - functionName:    i_stream_alloc
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 957
      functionLinenumberEnd: 969
      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:961,6'
          Branch Sides:
            - BranchSide:      'istream.c:961,6'
              BranchSideFuncs:
                - nearest_power
                - i_stream_w_buffer_realloc
                - i_stream_try_alloc
                - i_panic
            - BranchSide:      'istream.c:962,14'
              BranchSideFuncs:
                - nearest_power
                - i_stream_w_buffer_realloc
                - i_stream_try_alloc
                - i_panic
        - Branch String:   'istream.c:967,3'
          Branch Sides:
            - BranchSide:      'istream.c:967,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:968,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:960,8'
          Dst:             i_stream_try_alloc
        - Src:             'istream.c:963,25'
          Dst:             nearest_power
        - Src:             'istream.c:964,3'
          Dst:             i_stream_w_buffer_realloc
        - Src:             'istream.c:966,9'
          Dst:             i_stream_try_alloc
        - Src:             'istream.c:967,3'
          Dst:             i_panic
    - functionName:    i_stream_try_alloc_avoid_compress
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 943
      functionLinenumberEnd: 954
      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:950,10'
          Branch Sides:
            - BranchSide:      'istream.c:950,13'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:951,10'
              BranchSideFuncs: []
        - Branch String:   'istream.c:950,6'
          Branch Sides:
            - BranchSide:      'istream.c:951,10'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:953,28'
              BranchSideFuncs:
                - i_stream_try_alloc
      Callsites:
        - Src:             'istream.c:948,13'
          Dst:             i_stream_try_alloc
        - Src:             'istream.c:953,9'
          Dst:             i_stream_try_alloc
    - functionName:    i_stream_read_more
      functionSourceFile: '/src/dovecot/src/lib/./istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 234
      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:233,2'
          Branch Sides:
            - BranchSide:      './istream.h:233,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './istream.h:233,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './istream.h:232,12'
          Dst:             i_stream_read_bytes
        - Src:             './istream.h:233,2'
          Dst:             i_panic
    - functionName:    i_stream_read_limited
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 812
      functionLinenumberEnd: 829
      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:817,6'
          Branch Sides:
            - BranchSide:      'istream.c:818,13'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:822,24'
              BranchSideFuncs:
                - i_stream_read_more.6416
        - Branch String:   'istream.c:826,6'
          Branch Sides:
            - BranchSide:      'istream.c:827,13'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:828,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:816,12'
          Dst:             i_stream_get_data
        - Src:             'istream.c:823,8'
          Dst:             i_stream_read_more
    - functionName:    i_stream_get_modifiable_data
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 765
      functionLinenumberEnd: 775
      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:768,36'
          Branch Sides:
            - BranchSide:      'istream.c:768,39'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:769,4'
              BranchSideFuncs: []
        - Branch String:   'istream.c:768,6'
          Branch Sides:
            - BranchSide:      'istream.c:769,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:773,19'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_last_line_crlf
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 692
      functionLinenumberEnd: 693
      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: 665
      functionLinenumberEnd: 689
      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:    2
      BranchProfiles:
        - Branch String:   'istream.c:670,7'
          Branch Sides:
            - BranchSide:      'istream.c:671,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:673,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:673,3'
          Branch Sides:
            - BranchSide:      'istream.c:668,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:675,25'
              BranchSideFuncs:
                - i_stream_get_data_size
                - io_stream_set_error
                - __errno_location
            - BranchSide:      'istream.c:683,30'
              BranchSideFuncs:
                - i_stream_last_line
            - BranchSide:      'istream.c:685,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:669,10'
          Dst:             i_stream_next_line
        - Src:             'istream.c:673,11'
          Dst:             i_stream_read
        - Src:             'istream.c:678,5'
          Dst:             i_stream_get_data_size
        - Src:             'istream.c:675,4'
          Dst:             io_stream_set_error
        - Src:             'istream.c:679,27'
          Dst:             __errno_location
        - Src:             'istream.c:683,11'
          Dst:             i_stream_last_line
    - functionName:    i_stream_next_line
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 647
      functionLinenumberEnd: 662
      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:651,6'
          Branch Sides:
            - BranchSide:      'istream.c:652,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:654,15'
              BranchSideFuncs:
                - memchr
                - i_stream_last_line
                - i_stream_next_line_finish
        - Branch String:   'istream.c:656,6'
          Branch Sides:
            - BranchSide:      'istream.c:657,36'
              BranchSideFuncs:
                - i_stream_next_line_finish
            - BranchSide:      'istream.c:660,29'
              BranchSideFuncs:
                - i_stream_last_line
      Callsites:
        - Src:             'istream.c:654,8'
          Dst:             memchr
        - Src:             'istream.c:657,10'
          Dst:             i_stream_next_line_finish
        - Src:             'istream.c:660,10'
          Dst:             i_stream_last_line
    - functionName:    i_stream_last_line
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 644
      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:638,27'
          Branch Sides:
            - BranchSide:      'istream.c:638,30'
              BranchSideFuncs:
                - i_stream_next_line_finish
            - BranchSide:      'istream.c:643,2'
              BranchSideFuncs: []
        - Branch String:   'istream.c:638,60'
          Branch Sides:
            - BranchSide:      'istream.c:639,6'
              BranchSideFuncs:
                - i_stream_next_line_finish
            - BranchSide:      'istream.c:643,2'
              BranchSideFuncs: []
        - Branch String:   'istream.c:638,6'
          Branch Sides:
            - BranchSide:      'istream.c:641,36'
              BranchSideFuncs:
                - i_stream_next_line_finish
            - BranchSide:      'istream.c:643,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:641,10'
          Dst:             i_stream_next_line_finish
    - functionName:    i_stream_next_line_finish
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 633
      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:605,23'
          Branch Sides:
            - BranchSide:      'istream.c:605,26'
              BranchSideFuncs:
                - str_truncate.6371
                - str_c_modifiable
                - str_append_data.6370
                - str_new
            - BranchSide:      'istream.c:609,9'
              BranchSideFuncs:
                - str_truncate.6371
                - str_c_modifiable
                - str_append_data.6370
                - str_new
        - Branch String:   'istream.c:605,6'
          Branch Sides:
            - BranchSide:      'istream.c:606,9'
              BranchSideFuncs:
                - str_truncate.6371
                - str_c_modifiable
                - str_append_data.6370
                - str_new
            - BranchSide:      'istream.c:609,9'
              BranchSideFuncs:
                - str_truncate.6371
                - str_c_modifiable
                - str_append_data.6370
                - str_new
        - Branch String:   'istream.c:613,41'
          Branch Sides:
            - BranchSide:      'istream.c:614,6'
              BranchSideFuncs:
                - str_truncate.6371
                - str_c_modifiable
                - str_append_data.6370
                - str_new
            - BranchSide:      'istream.c:620,7'
              BranchSideFuncs:
                - str_truncate.6371
                - str_c_modifiable
                - str_append_data.6370
                - str_new
        - Branch String:   'istream.c:613,6'
          Branch Sides:
            - BranchSide:      'istream.c:616,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:620,7'
              BranchSideFuncs:
                - str_truncate.6371
                - str_c_modifiable
                - str_append_data.6370
                - str_new
        - Branch String:   'istream.c:620,7'
          Branch Sides:
            - BranchSide:      'istream.c:621,31'
              BranchSideFuncs:
                - str_new
                - str_truncate.6371
                - str_c_modifiable
                - str_append_data.6370
            - BranchSide:      'istream.c:622,16'
              BranchSideFuncs:
                - str_truncate.6371
                - str_c_modifiable
                - str_append_data.6370
        - Branch String:   'istream.c:623,7'
          Branch Sides:
            - BranchSide:      'istream.c:624,20'
              BranchSideFuncs:
                - str_append_data.6370
                - str_c_modifiable
            - BranchSide:      'istream.c:626,26'
              BranchSideFuncs:
                - str_c_modifiable
        - Branch String:   'istream.c:629,6'
          Branch Sides:
            - BranchSide:      'istream.c:629,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:630,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:621,23'
          Dst:             str_new
        - Src:             'istream.c:622,3'
          Dst:             str_truncate
        - Src:             'istream.c:624,4'
          Dst:             str_append_data
        - Src:             'istream.c:626,9'
          Dst:             str_c_modifiable
    - functionName:    i_stream_get_absolute_offset
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 597
      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:593,2'
          Branch Sides:
            - BranchSide:      'istream.c:594,17'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:597,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_read_eof
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 587
      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:585,6'
          Branch Sides:
            - BranchSide:      'istream.c:585,6'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_have_bytes_left
            - BranchSide:      'istream.c:586,23'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_have_bytes_left
      Callsites:
        - Src:             'istream.c:585,6'
          Dst:             i_stream_get_data_size
        - Src:             'istream.c:586,9'
          Dst:             i_stream_read
        - Src:             'istream.c:587,10'
          Dst:             i_stream_have_bytes_left
    - functionName:    i_stream_have_bytes_left
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 580
      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:580,44'
          Branch Sides:
            - BranchSide:      'istream.c:580,44'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:580,48'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:580,9'
          Dst:             i_stream_get_data_size
    - functionName:    i_stream_get_size
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 566
      functionLinenumberEnd: 576
      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: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:573,13'
              BranchSideFuncs: []
        - Branch String:   'istream.c:573,6'
          Branch Sides:
            - BranchSide:      'istream.c:574,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:575,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_sync
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 548
      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:541,6'
          Branch Sides:
            - BranchSide:      'istream.c:541,6'
              BranchSideFuncs:
                - i_stream_update
            - BranchSide:      'istream.c:541,6'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:541,6'
          Branch Sides:
            - BranchSide:      'istream.c:542,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:544,6'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:544,6'
          Branch Sides:
            - BranchSide:      'istream.c:544,6'
              BranchSideFuncs:
                - i_stream_update
            - BranchSide:      'istream.c:545,3'
              BranchSideFuncs:
                - i_stream_update
      Callsites:
        - Src:             'istream.c:546,3'
          Dst:             i_stream_update
    - functionName:    i_stream_seek_mark
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 526
      functionLinenumberEnd: 535
      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:529,6'
          Branch Sides:
            - BranchSide:      'istream.c:529,6'
              BranchSideFuncs:
                - i_stream_update
            - BranchSide:      'istream.c:529,6'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:529,6'
          Branch Sides:
            - BranchSide:      'istream.c:530,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:532,2'
              BranchSideFuncs:
                - i_stream_update
      Callsites:
        - Src:             'istream.c:534,2'
          Dst:             i_stream_update
    - functionName:    i_stream_read_copy_from_parent
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 449
      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:426,6'
          Branch Sides:
            - BranchSide:      'istream.c:427,7'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
                - i_stream_update
            - BranchSide:      'istream.c:428,7'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_update
                - i_panic
                - i_stream_update
        - Branch String:   'istream.c:436,30'
          Branch Sides:
            - BranchSide:      'istream.c:436,33'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
                - i_stream_update
                - i_stream_read_memarea
                - i_stream_get_data
            - BranchSide:      'istream.c:436,2'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
                - i_stream_update
                - i_stream_read_memarea
                - i_stream_get_data
        - Branch String:   'istream.c:436,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:429,31'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_update
                - i_panic
                - i_stream_update
        - Branch String:   'istream.c:437,6'
          Branch Sides:
            - BranchSide:      'istream.c:438,19'
              BranchSideFuncs:
                - i_stream_update
            - BranchSide:      'istream.c:442,8'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
        - Branch String:   'istream.c:442,8'
          Branch Sides:
            - BranchSide:      'istream.c:442,38'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
            - BranchSide:      'istream.c:443,4'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
        - Branch String:   'istream.c:445,2'
          Branch Sides:
            - BranchSide:      'istream.c:445,2'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
            - BranchSide:      'istream.c:445,2'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
        - Branch String:   'istream.c:445,2'
          Branch Sides:
            - BranchSide:      'istream.c:445,2'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
            - BranchSide:      'istream.c:445,2'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
        - Branch String:   'istream.c:445,2'
          Branch Sides:
            - BranchSide:      'istream.c:445,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:447,18'
              BranchSideFuncs:
                - i_stream_update
      Callsites:
        - Src:             'istream.c:425,19'
          Dst:             i_stream_get_data
        - Src:             'istream.c:429,9'
          Dst:             i_stream_read_memarea
        - Src:             'istream.c:432,20'
          Dst:             i_stream_get_data
        - Src:             'istream.c:438,3'
          Dst:             i_stream_update
        - Src:             'istream.c:445,2'
          Dst:             i_panic
        - Src:             'istream.c:447,2'
          Dst:             i_stream_update
    - functionName:    i_stream_get_last_read_time
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 414
      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: 401
      functionLinenumberEnd: 409
      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:403,6'
          Branch Sides:
            - BranchSide:      'istream.c:404,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:406,6'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
      Callsites:
        - Src:             'istream.c:402,12'
          Dst:             i_stream_get_data
        - Src:             'istream.c:406,12'
          Dst:             i_stream_read_memarea
        - Src:             'istream.c:407,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:    8
      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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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_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.6484
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6476
                - 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.6484
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6476
                - 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.6484
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6476
                - 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.6484
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6476
                - 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.6484
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6476
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
                - i_stream_seek
            - BranchSide:      'istream-chain.c:118,2'
              BranchSideFuncs:
                - p_free_internal.6484
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6476
                - 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.6484
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6476
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
                - i_stream_seek
            - BranchSide:      'istream-chain.c:118,2'
              BranchSideFuncs:
                - p_free_internal.6484
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
            - BranchSide:      'istream-chain.c:149,3'
              BranchSideFuncs:
                - i_stream_alloc
                - i_memcpy.6476
                - 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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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.6490
                - p_malloc.6491
                - 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.6490
                - p_malloc.6491
                - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6476
                - 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.6484
                - 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.6490
                - p_malloc.6491
                - i_stream_set_input_pending
                - i_stream_set_max_buffer_size
                - i_stream_ref
            - BranchSide:      'istream-chain.c:45,9'
              BranchSideFuncs:
                - malloc_multiply_check.6490
                - p_malloc.6491
                - 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.6490
                - p_malloc.6491
                - i_stream_set_input_pending
                - i_stream_set_max_buffer_size
                - i_stream_ref
            - BranchSide:      'istream-chain.c:45,9'
              BranchSideFuncs:
                - malloc_multiply_check.6490
                - p_malloc.6491
                - 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.6490
                - p_malloc.6491
                - 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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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.6530
                - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_create_failure_at_eof
      functionSourceFile: '/src/dovecot/src/lib/istream-failure-at.c'
      linkageType:     externalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 96
      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:95,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: 88
      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:          125
      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:85,26'
          Dst:             i_strdup
        - Src:             'istream-failure-at.c:88,11'
          Dst:             i_stream_get_fd
        - Src:             'istream-failure-at.c:87,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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: 273
      functionLinenumberEnd: 281
      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:277,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-file.c:277,12'
          Dst:             p_malloc
        - Src:             'istream-file.c:278,10'
          Dst:             i_stream_create_file_common
        - Src:             'istream-file.c:280,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:    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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    i_stream_create_file_common
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 244
      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:    4
      BranchProfiles:
        - Branch String:   'istream-file.c:208,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:210,11'
              BranchSideFuncs:
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
            - BranchSide:      'istream-file.c:211,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:211,13'
          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,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:213,11'
          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,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:215,11'
          Branch Sides:
            - BranchSide:      'istream-file.c:216,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:220,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:222,4'
          Branch Sides:
            - BranchSide:      'istream-file.c:222,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:222,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:226,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:227,3'
              BranchSideFuncs:
                - i_stream_create
                - i_stream_set_name
            - BranchSide:      'istream-file.c:230,28'
              BranchSideFuncs:
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
        - Branch String:   'istream-file.c:230,13'
          Branch Sides:
            - BranchSide:      'istream-file.c:231,3'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - i_stream_create
                - i_stream_set_name
                - i_panic
            - BranchSide:      'istream-file.c:236,14'
              BranchSideFuncs:
                - i_stream_create
                - i_stream_set_name
        - Branch String:   'istream-file.c:231,3'
          Branch Sides:
            - BranchSide:      'istream-file.c:231,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:233,43'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - i_stream_create
                - i_stream_set_name
      Callsites:
        - Src:             'istream-file.c:211,13'
          Dst:             fstat
        - Src:             'istream-file.c:222,26'
          Dst:             t_strdup_printf
        - Src:             'istream-file.c:220,3'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:230,22'
          Dst:             fcntl
        - Src:             'istream-file.c:231,3'
          Dst:             i_panic
        - Src:             'istream-file.c:233,43'
          Dst:             __errno_location
        - Src:             'istream-file.c:234,3'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:242,10'
          Dst:             i_stream_create
        - Src:             'istream-file.c:243,2'
          Dst:             i_stream_set_name
    - functionName:    i_stream_file_close
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         14
      ICount:          93
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - close
        - i_error
        - i_stream_get_name
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream-file.c:23,28'
          Branch Sides:
            - BranchSide:      'istream-file.c:23,31'
              BranchSideFuncs:
                - close
                - i_stream_get_name
                - i_error
                - __errno_location
            - BranchSide:      'istream-file.c:23,28'
              BranchSideFuncs: []
        - Branch String:   'istream-file.c:23,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:23,6'
              BranchSideFuncs:
                - close
                - i_stream_get_name
                - i_error
                - __errno_location
            - BranchSide:      'istream-file.c:27,7'
              BranchSideFuncs:
                - close
                - i_stream_get_name
                - i_error
                - __errno_location
        - Branch String:   'istream-file.c:27,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:27,7'
              BranchSideFuncs:
                - __errno_location
                - i_stream_get_name
                - i_error
            - BranchSide:      'istream-file.c:27,7'
              BranchSideFuncs:
                - i_stream_get_name
                - i_error
        - Branch String:   'istream-file.c:27,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:29,24'
              BranchSideFuncs:
                - i_stream_get_name
                - i_error
            - BranchSide:      'istream-file.c:31,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-file.c:27,7'
          Dst:             close
        - Src:             'istream-file.c:27,7'
          Dst:             __errno_location
        - Src:             'istream-file.c:29,5'
          Dst:             i_stream_get_name
        - Src:             'istream-file.c:28,4'
          Dst:             i_error
    - functionName:    i_stream_file_read
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 129
      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:57,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:58,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:60,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:60,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:61,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:66,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:61,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:62,4'
              BranchSideFuncs: []
            - BranchSide:      'istream-file.c:63,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:63,3'
          Branch Sides:
            - BranchSide:      'istream-file.c:63,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:64,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:68,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:69,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:71,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:71,13'
          Branch Sides:
            - BranchSide:      'istream-file.c:74,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:76,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:80,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:82,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-file.c:87,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:87,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:88,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:110,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:88,23'
          Branch Sides:
            - BranchSide:      'istream-file.c:88,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:89,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:88,43'
          Branch Sides:
            - BranchSide:      'istream-file.c:89,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:92,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:88,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:90,8'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:92,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:92,4'
          Branch Sides:
            - BranchSide:      'istream-file.c:92,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:95,4'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
        - Branch String:   'istream-file.c:95,4'
          Branch Sides:
            - BranchSide:      'istream-file.c:95,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:96,8'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
        - Branch String:   'istream-file.c:96,8'
          Branch Sides:
            - BranchSide:      'istream-file.c:97,26'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
            - BranchSide:      'istream-file.c:101,26'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
        - Branch String:   'istream-file.c:110,14'
          Branch Sides:
            - BranchSide:      'istream-file.c:110,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:125,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:110,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:111,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:125,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:111,3'
          Branch Sides:
            - BranchSide:      'istream-file.c:111,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:112,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:112,3'
          Branch Sides:
            - BranchSide:      'istream-file.c:112,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:114,7'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:114,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:115,26'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:118,11'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:126,2'
          Branch Sides:
            - BranchSide:      'istream-file.c:126,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:126,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:126,2'
          Branch Sides:
            - BranchSide:      'istream-file.c:126,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:127,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-file.c:127,2'
          Branch Sides:
            - BranchSide:      'istream-file.c:127,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:128,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-file.c:57,7'
          Dst:             i_stream_try_alloc
        - Src:             'istream-file.c:61,7'
          Dst:             i_stream_file_open
        - Src:             'istream-file.c:63,3'
          Dst:             i_panic
        - Src:             'istream-file.c:69,9'
          Dst:             pread
        - Src:             'istream-file.c:76,9'
          Dst:             read
        - Src:             'istream-file.c:88,8'
          Dst:             __errno_location
        - Src:             'istream-file.c:88,26'
          Dst:             __errno_location
        - Src:             'istream-file.c:92,4'
          Dst:             __errno_location
        - Src:             'istream-file.c:92,4'
          Dst:             i_panic
        - Src:             'istream-file.c:95,4'
          Dst:             __errno_location
        - Src:             'istream-file.c:95,4'
          Dst:             i_panic
        - Src:             'istream-file.c:97,5'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:101,5'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:105,35'
          Dst:             __errno_location
        - Src:             'istream-file.c:111,3'
          Dst:             i_panic
        - Src:             'istream-file.c:112,3'
          Dst:             i_panic
        - Src:             'istream-file.c:126,2'
          Dst:             i_panic
        - Src:             'istream-file.c:127,2'
          Dst:             i_panic
    - functionName:    i_stream_file_seek
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 146
      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:137,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:137,6'
              BranchSideFuncs: []
            - BranchSide:      'istream-file.c:138,7'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-file.c:138,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:139,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:140,25'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-file.c:139,4'
          Dst:             i_panic
    - functionName:    i_stream_file_sync
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 157
      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:150,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:152,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-file.c:155,17'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_file_stat
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 186
      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:166,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:168,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:168,2'
              BranchSideFuncs: []
        - Branch String:   'istream-file.c:168,13'
          Branch Sides:
            - BranchSide:      'istream-file.c:169,13'
              BranchSideFuncs:
                - fstat
                - __errno_location
                - io_stream_set_error
                - i_stream_get_error
                - i_error
            - BranchSide:      'istream-file.c:177,12'
              BranchSideFuncs:
                - stat
                - __errno_location
                - io_stream_set_error
                - i_stream_get_error
                - i_error
        - Branch String:   'istream-file.c:169,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:170,35'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - i_stream_get_error
                - i_error
            - BranchSide:      'istream-file.c:176,2'
              BranchSideFuncs: []
        - Branch String:   'istream-file.c:177,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:178,35'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - i_stream_get_error
                - i_error
      Callsites:
        - Src:             'istream-file.c:164,21'
          Dst:             i_stream_get_name
        - Src:             'istream-file.c:169,7'
          Dst:             fstat
        - Src:             'istream-file.c:170,35'
          Dst:             __errno_location
        - Src:             'istream-file.c:171,4'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:173,18'
          Dst:             i_stream_get_error
        - Src:             'istream-file.c:173,4'
          Dst:             i_error
        - Src:             'istream-file.c:177,7'
          Dst:             stat
        - Src:             'istream-file.c:178,35'
          Dst:             __errno_location
        - Src:             'istream-file.c:179,4'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:181,18'
          Dst:             i_stream_get_error
        - Src:             'istream-file.c:181,4'
          Dst:             i_error
    - functionName:    i_stream_file_open
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 47
      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:40,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:41,24'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
            - BranchSide:      'istream-file.c:46,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-file.c:37,21'
          Dst:             i_stream_get_name
        - Src:             'istream-file.c:39,15'
          Dst:             open
        - Src:             'istream-file.c:41,3'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:43,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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_create_fd_autoclose
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 269
      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:    2
      BranchProfiles:
        - Branch String:   'istream-file.c:263,2'
          Branch Sides:
            - BranchSide:      'istream-file.c:263,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:263,2'
              BranchSideFuncs:
                - malloc_multiply_check.6602
                - p_malloc.6603
                - i_stream_create_file_common
      Callsites:
        - Src:             'istream-file.c:263,2'
          Dst:             i_panic
        - Src:             'istream-file.c:265,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-file.c:265,12'
          Dst:             p_malloc
        - Src:             'istream-file.c:266,10'
          Dst:             i_stream_create_file_common
    - functionName:    i_stream_create_fd
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 255
      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:251,2'
          Branch Sides:
            - BranchSide:      'istream-file.c:251,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:251,2'
              BranchSideFuncs:
                - malloc_multiply_check.6602
                - p_malloc.6603
                - i_stream_create_file_common
      Callsites:
        - Src:             'istream-file.c:251,2'
          Dst:             i_panic
        - Src:             'istream-file.c:253,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-file.c:253,12'
          Dst:             p_malloc
        - Src:             'istream-file.c:254,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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.6764
                - p_malloc.6766
                - 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: 250
      functionLinenumberEnd: 252
      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:251,13'
          Dst:             array_count_i
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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: 133
      functionLinenumberEnd: 136
      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: 188
      functionLinenumberEnd: 190
      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:189,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,16'
              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: 596
      functionLinenumberEnd: 610
      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:602,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:603,42'
              BranchSideFuncs:
                - timeval_sub_usecs
                - timeval_add_usecs
            - BranchSide:      'ioloop.c:610,1'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:605,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:606,23'
              BranchSideFuncs:
                - timeval_add_usecs
                - timeval_sub_usecs
            - BranchSide:      'ioloop.c:608,23'
              BranchSideFuncs:
                - timeval_sub_usecs
                - timeval_add_usecs
      Callsites:
        - Src:             'ioloop.c:600,10'
          Dst:             priorityq_count
        - Src:             'ioloop.c:601,10'
          Dst:             priorityq_items
        - Src:             'ioloop.c:606,4'
          Dst:             timeval_add_usecs
        - Src:             'ioloop.c:608,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,16'
              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: 621
      functionLinenumberEnd: 636
      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:626,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:628,8'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:631,31'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:634,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:635,19'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:636,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:625,9'
          Dst:             timeval_diff_usecs
    - functionName:    io_loops_timeouts_update
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 618
      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:616,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:617,27'
              BranchSideFuncs:
                - io_loop_timeouts_update
            - BranchSide:      'ioloop.c:618,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:617,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: 455
      functionLinenumberEnd: 492
      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:458,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:459,18'
              BranchSideFuncs:
                - i_gettimeofday
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:460,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:463,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:463,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:464,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:464,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:464,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:466,17'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:468,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:469,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:473,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:473,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:475,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:479,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:479,24'
          Branch Sides:
            - BranchSide:      'ioloop.c:479,27'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:485,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:479,46'
          Branch Sides:
            - BranchSide:      'ioloop.c:479,50'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:485,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:479,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:482,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:485,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:485,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:486,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:489,8'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:490,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:490,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:490,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:490,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:490,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:490,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:490,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:490,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:491,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:459,3'
          Dst:             i_gettimeofday
        - Src:             'ioloop.c:463,2'
          Dst:             i_panic
        - Src:             'ioloop.c:464,2'
          Dst:             i_panic
        - Src:             'ioloop.c:490,2'
          Dst:             i_panic
    - functionName:    io_file_unlink
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 151
      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:139,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:140,20'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:142,29'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:144,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:145,20'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:149,6'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:149,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:149,6'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:150,33'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_loop_get_active_global_root
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1383
      functionLinenumberEnd: 1389
      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:1384,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1385,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1386,6'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1386,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1387,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1388,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_wait_timer_get_usecs
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1378
      functionLinenumberEnd: 1379
      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: 1364
      functionLinenumberEnd: 1365
      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:1365,9'
          Dst:             io_wait_timer_move_to
    - functionName:    io_wait_timer_move_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1353
      functionLinenumberEnd: 1360
      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:1357,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1357,2'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1357,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1357,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1357,2'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1358,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1358,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1358,2'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1358,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_wait_timer_add
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1346
      functionLinenumberEnd: 1348
      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:1347,9'
          Dst:             io_wait_timer_add_to
    - functionName:    io_wait_timer_add_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1332
      functionLinenumberEnd: 1340
      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:1339,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1339,2'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1339,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:1335,10'
          Dst:             malloc_multiply_check
        - Src:             'ioloop.c:1335,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    io_loop_find_fd_conditions
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1315
      functionLinenumberEnd: 1325
      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:1319,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1319,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1321,12'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1321,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1322,7'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1325,9'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1322,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1323,18'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1324,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:1319,2'
          Dst:             i_panic
    - functionName:    io_loop_get_wait_usecs
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1310
      functionLinenumberEnd: 1311
      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: 1303
      functionLinenumberEnd: 1306
      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:1304,34'
          Branch Sides:
            - BranchSide:      'ioloop.c:1304,34'
              BranchSideFuncs:
                - priorityq_count
                - array_count_i.6982
            - BranchSide:      'ioloop.c:1305,19'
              BranchSideFuncs:
                - priorityq_count
                - array_count_i.6982
        - Branch String:   'ioloop.c:1305,42'
          Branch Sides:
            - BranchSide:      'ioloop.c:1305,42'
              BranchSideFuncs:
                - array_count_i.6982
            - BranchSide:      'ioloop.c:1306,3'
              BranchSideFuncs:
                - array_count_i.6982
      Callsites:
        - Src:             'ioloop.c:1305,3'
          Dst:             priorityq_count
        - Src:             'ioloop.c:1306,3'
          Dst:             array_count_i
    - functionName:    io_loop_have_immediate_timeouts
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1296
      functionLinenumberEnd: 1299
      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:1299,9'
          Dst:             io_loop_get_wait_time
    - functionName:    io_loop_get_wait_time
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 536
      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:507,22'
          Branch Sides:
            - BranchSide:      'ioloop.c:507,25'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeval_add_msecs
                - i_panic
                - i_gettimeofday
            - BranchSide:      'ioloop.c:517,6'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeval_add_msecs
                - i_panic
                - i_gettimeofday
        - Branch String:   'ioloop.c:507,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:510,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:517,6'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeval_add_msecs
                - i_panic
                - i_gettimeofday
        - Branch String:   'ioloop.c:517,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:518,3'
              BranchSideFuncs:
                - i_gettimeofday
                - timeval_add_msecs
                - i_panic
            - BranchSide:      'ioloop.c:523,10'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeval_add_msecs
                - i_panic
        - Branch String:   'ioloop.c:534,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:534,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:534,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:534,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:534,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:534,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:534,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:534,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:535,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:501,9'
          Dst:             priorityq_peek
        - Src:             'ioloop.c:518,3'
          Dst:             i_gettimeofday
        - Src:             'ioloop.c:524,11'
          Dst:             timeout_get_wait_time
        - Src:             'ioloop.c:527,2'
          Dst:             timeval_add_msecs
        - Src:             'ioloop.c:534,2'
          Dst:             i_panic
    - functionName:    io_loop_have_ios
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1291
      functionLinenumberEnd: 1292
      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: 1286
      functionLinenumberEnd: 1287
      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:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:1287,9'
          Dst:             io_loop_move_timeout_to
    - functionName:    io_loop_move_timeout_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1274
      functionLinenumberEnd: 1283
      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:1277,21'
          Branch Sides:
            - BranchSide:      'ioloop.c:1277,24'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1278,10'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1277,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1278,10'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1280,24'
              BranchSideFuncs:
                - timeout_copy
                - timeout_remove
      Callsites:
        - Src:             'ioloop.c:1280,11'
          Dst:             timeout_copy
        - Src:             'ioloop.c:1281,2'
          Dst:             timeout_remove
    - functionName:    timeout_copy
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 387
      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:380,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:381,17'
              BranchSideFuncs:
                - priorityq_add
            - BranchSide:      'ioloop.c:382,12'
              BranchSideFuncs:
                - array_append_i.7016
                - i_panic
        - Branch String:   'ioloop.c:383,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:383,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:384,3'
              BranchSideFuncs:
                - array_append_i.7016
      Callsites:
        - Src:             'ioloop.c:373,11'
          Dst:             timeout_add_common
        - Src:             'ioloop.c:381,3'
          Dst:             priorityq_add
        - Src:             'ioloop.c:383,3'
          Dst:             i_panic
        - Src:             'ioloop.c:384,3'
          Dst:             array_append_i
    - functionName:    timeout_remove
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _timeout
      BBCount:         21
      ICount:          136
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - array_delete_i
        - priorityq_remove
        - timeout_free
      functionUses:    22
      BranchProfiles:
        - Branch String:   'ioloop.c:402,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:403,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:405,11'
              BranchSideFuncs:
                - timeout_free
                - array_delete_i.7010
                - priorityq_remove
        - Branch String:   'ioloop.c:408,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:409,20'
              BranchSideFuncs:
                - priorityq_remove
                - timeout_free
            - BranchSide:      'ioloop.c:410,12'
              BranchSideFuncs:
                - timeout_free
                - array_delete_i.7010
        - Branch String:   'ioloop.c:412,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:413,9'
              BranchSideFuncs:
                - timeout_free
                - array_delete_i.7010
            - BranchSide:      'ioloop.c:419,2'
              BranchSideFuncs:
                - timeout_free
        - Branch String:   'ioloop.c:413,8'
          Branch Sides:
            - BranchSide:      'ioloop.c:414,5'
              BranchSideFuncs:
                - array_delete_i.7010
                - timeout_free
            - BranchSide:      'ioloop.c:418,3'
              BranchSideFuncs:
                - timeout_free
                - array_delete_i.7010
      Callsites:
        - Src:             'ioloop.c:409,3'
          Dst:             priorityq_remove
        - Src:             'ioloop.c:414,5'
          Dst:             array_delete_i
        - Src:             'ioloop.c:420,2'
          Dst:             timeout_free
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 244
      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:242,2'
          Dst:             buffer_delete
    - functionName:    timeout_free
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 395
      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:392,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:393,26'
              BranchSideFuncs:
                - io_loop_context_unref
                - p_free_internal.7011
            - BranchSide:      'ioloop.c:394,2'
              BranchSideFuncs:
                - p_free_internal.7011
      Callsites:
        - Src:             'ioloop.c:393,3'
          Dst:             io_loop_context_unref
        - Src:             'ioloop.c:394,2'
          Dst:             p_free_internal
    - functionName:    io_loop_context_unref
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1063
      functionLinenumberEnd: 1078
      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:1068,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1068,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1069,8'
              BranchSideFuncs:
                - array_free_i.7014
                - array_free_i.7014
                - p_free_internal.7011
                - i_panic
        - Branch String:   'ioloop.c:1069,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1070,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1073,2'
              BranchSideFuncs:
                - array_free_i.7014
                - array_free_i.7014
                - p_free_internal.7011
                - i_panic
        - Branch String:   'ioloop.c:1073,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1073,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1075,2'
              BranchSideFuncs:
                - array_free_i.7014
                - array_free_i.7014
                - p_free_internal.7011
      Callsites:
        - Src:             'ioloop.c:1068,2'
          Dst:             i_panic
        - Src:             'ioloop.c:1073,2'
          Dst:             i_panic
        - Src:             'ioloop.c:1075,2'
          Dst:             array_free_i
        - Src:             'ioloop.c:1076,2'
          Dst:             array_free_i
        - Src:             'ioloop.c:1077,2'
          Dst:             p_free_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 158
      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:157,2'
          Dst:             buffer_free
    - functionName:    timeout_add_common
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 278
      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:273,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:273,6'
              BranchSideFuncs:
                - io_loop_context_ref
            - BranchSide:      'ioloop.c:274,18'
              BranchSideFuncs:
                - io_loop_context_ref
      Callsites:
        - Src:             'ioloop.c:264,12'
          Dst:             malloc_multiply_check
        - Src:             'ioloop.c:264,12'
          Dst:             p_malloc
        - Src:             'ioloop.c:275,3'
          Dst:             io_loop_context_ref
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    io_loop_context_ref
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1056
      functionLinenumberEnd: 1060
      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:1057,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1057,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1057,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:1057,2'
          Dst:             i_panic
    - functionName:    io_loop_move_io
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1268
      functionLinenumberEnd: 1269
      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:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:1269,9'
          Dst:             io_loop_move_io_to
    - functionName:    io_loop_move_io_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1235
      functionLinenumberEnd: 1265
      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:1239,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1240,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1242,2'
              BranchSideFuncs:
                - io_add_file
                - io_remove
                - i_stream_set_io
                - io_set_pending
                - i_stream_ref
                - i_panic
        - Branch String:   'ioloop.c:1242,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1242,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1244,6'
              BranchSideFuncs:
                - io_add_file
                - io_remove
                - i_stream_set_io
                - io_set_pending
                - i_stream_ref
        - Branch String:   'ioloop.c:1244,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1245,10'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1247,34'
              BranchSideFuncs:
                - io_add_file
                - io_remove
                - i_stream_set_io
                - io_set_pending
                - i_stream_ref
        - Branch String:   'ioloop.c:1252,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1254,26'
              BranchSideFuncs:
                - i_stream_ref
                - io_remove
                - i_stream_set_io
                - io_set_pending
            - BranchSide:      'ioloop.c:1257,6'
              BranchSideFuncs:
                - io_remove
                - i_stream_set_io
                - io_set_pending
        - Branch String:   'ioloop.c:1257,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1258,19'
              BranchSideFuncs:
                - io_set_pending
                - io_remove
                - i_stream_set_io
            - BranchSide:      'ioloop.c:1259,12'
              BranchSideFuncs:
                - io_remove
                - i_stream_set_io
        - Branch String:   'ioloop.c:1260,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1262,19'
              BranchSideFuncs:
                - i_stream_set_io
            - BranchSide:      'ioloop.c:1264,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:1242,2'
          Dst:             i_panic
        - Src:             'ioloop.c:1248,16'
          Dst:             io_add_file
        - Src:             'ioloop.c:1255,3'
          Dst:             i_stream_ref
        - Src:             'ioloop.c:1258,3'
          Dst:             io_set_pending
        - Src:             'ioloop.c:1259,2'
          Dst:             io_remove
        - Src:             'ioloop.c:1262,3'
          Dst:             i_stream_set_io
    - functionName:    io_add_file
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 83
      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:51,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:51,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:52,2'
              BranchSideFuncs:
                - malloc_multiply_check.6996
                - p_malloc.6997
                - io_loop_handle_add
                - io_loop_initialize_handler
                - io_loop_context_ref
                - i_panic
        - Branch String:   'ioloop.c:52,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:52,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:54,7'
              BranchSideFuncs:
                - malloc_multiply_check.6996
                - p_malloc.6997
                - io_loop_handle_add
                - io_loop_initialize_handler
                - io_loop_context_ref
        - Branch String:   'ioloop.c:64,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:65,16'
              BranchSideFuncs:
                - io_loop_context_ref
                - io_loop_handle_add
                - io_loop_initialize_handler
            - BranchSide:      'ioloop.c:69,6'
              BranchSideFuncs:
                - io_loop_handle_add
                - io_loop_initialize_handler
        - Branch String:   'ioloop.c:69,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:70,30'
              BranchSideFuncs:
                - io_loop_initialize_handler
                - io_loop_handle_add
            - BranchSide:      'ioloop.c:71,6'
              BranchSideFuncs:
                - io_loop_handle_add
        - Branch String:   'ioloop.c:71,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:0,0'
              BranchSideFuncs:
                - io_loop_handle_add
            - BranchSide:      'ioloop.c:72,22'
              BranchSideFuncs:
                - io_loop_handle_add
        - Branch String:   'ioloop.c:78,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:78,6'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:79,35'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:51,2'
          Dst:             i_panic
        - Src:             'ioloop.c:52,2'
          Dst:             i_panic
        - Src:             'ioloop.c:54,7'
          Dst:             malloc_multiply_check
        - Src:             'ioloop.c:54,7'
          Dst:             p_malloc
        - Src:             'ioloop.c:66,3'
          Dst:             io_loop_context_ref
        - Src:             'ioloop.c:70,3'
          Dst:             io_loop_initialize_handler
        - Src:             'ioloop.c:72,3'
          Dst:             io_loop_handle_add
    - functionName:    io_set_pending
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 223
      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:217,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:217,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:219,7'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:219,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:219,6'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:220,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:217,2'
          Dst:             i_panic
    - functionName:    io_remove
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 203
      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:    34
      BranchProfiles:
        - Branch String:   'ioloop.c:199,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:200,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:202,17'
              BranchSideFuncs:
                - io_remove_full
      Callsites:
        - Src:             'ioloop.c:202,2'
          Dst:             io_remove_full
    - functionName:    io_remove_full
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 195
      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:157,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:157,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:159,3'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7011
                - 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:165,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:166,3'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7011
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
                - io_loop_notify_remove
                - io_loop_context_unref
                - i_panic
            - BranchSide:      'ioloop.c:170,6'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7011
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
                - io_loop_notify_remove
                - io_loop_context_unref
        - Branch String:   'ioloop.c:166,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:166,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:167,3'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7011
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
                - io_loop_notify_remove
                - io_loop_context_unref
        - Branch String:   'ioloop.c:170,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:171,26'
              BranchSideFuncs:
                - io_loop_context_unref
                - io_file_unlink
                - p_free_internal.7011
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
                - io_loop_notify_remove
            - BranchSide:      'ioloop.c:173,7'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7011
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
                - io_loop_notify_remove
        - Branch String:   'ioloop.c:173,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:174,25'
              BranchSideFuncs:
                - io_loop_notify_remove
            - BranchSide:      'ioloop.c:176,47'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7011
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
        - Branch String:   'ioloop.c:179,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:181,22'
              BranchSideFuncs:
                - i_stream_unset_io
                - io_file_unlink
                - p_free_internal.7011
                - i_stream_unref
                - io_loop_handle_remove
            - BranchSide:      'ioloop.c:184,18'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7011
                - i_stream_unref
                - io_loop_handle_remove
        - Branch String:   'ioloop.c:185,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:186,26'
              BranchSideFuncs:
                - io_loop_handle_remove
                - i_stream_unref
            - BranchSide:      'ioloop.c:188,4'
              BranchSideFuncs:
                - p_free_internal.7011
                - i_stream_unref
      Callsites:
        - Src:             'ioloop.c:157,2'
          Dst:             i_panic
        - Src:             'ioloop.c:166,3'
          Dst:             i_panic
        - Src:             'ioloop.c:171,3'
          Dst:             io_loop_context_unref
        - Src:             'ioloop.c:174,3'
          Dst:             io_loop_notify_remove
        - Src:             'ioloop.c:181,4'
          Dst:             i_stream_unset_io
        - Src:             'ioloop.c:184,3'
          Dst:             io_file_unlink
        - Src:             'ioloop.c:186,4'
          Dst:             io_loop_handle_remove
        - Src:             'ioloop.c:188,4'
          Dst:             p_free_internal
        - Src:             'ioloop.c:193,3'
          Dst:             i_stream_unref
    - functionName:    io_loop_initialize_handler
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 41
      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:37,46'
          Branch Sides:
            - BranchSide:      'ioloop.c:37,21'
              BranchSideFuncs:
                - io_loop_handler_init
            - BranchSide:      'ioloop.c:38,3'
              BranchSideFuncs:
                - io_loop_handler_init
        - Branch String:   'ioloop.c:37,21'
          Branch Sides:
            - BranchSide:      'ioloop.c:37,21'
              BranchSideFuncs:
                - io_loop_handler_init
            - BranchSide:      'ioloop.c:39,3'
              BranchSideFuncs:
                - io_loop_handler_init
      Callsites:
        - Src:             'ioloop.c:40,2'
          Dst:             io_loop_handler_init
    - functionName:    io_loop_get_current_context
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1230
      functionLinenumberEnd: 1231
      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: 1217
      functionLinenumberEnd: 1227
      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:1218,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1219,7'
              BranchSideFuncs:
                - io_loop_context_deactivate
                - io_loop_context_activate
                - io_loop_context_unref
            - BranchSide:      'ioloop.c:1226,27'
              BranchSideFuncs:
                - io_loop_context_activate
        - Branch String:   'ioloop.c:1219,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1220,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1221,30'
              BranchSideFuncs:
                - io_loop_context_deactivate
                - io_loop_context_activate
                - io_loop_context_unref
        - Branch String:   'ioloop.c:1223,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1224,27'
              BranchSideFuncs:
                - io_loop_context_unref
                - io_loop_context_activate
            - BranchSide:      'ioloop.c:1225,2'
              BranchSideFuncs:
                - io_loop_context_activate
      Callsites:
        - Src:             'ioloop.c:1221,3'
          Dst:             io_loop_context_deactivate
        - Src:             'ioloop.c:1224,4'
          Dst:             io_loop_context_unref
        - Src:             'ioloop.c:1226,2'
          Dst:             io_loop_context_activate
    - functionName:    io_loop_context_deactivate
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1194
      functionLinenumberEnd: 1214
      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:1197,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1197,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1199,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:1199,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1200,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:1210,2'
              BranchSideFuncs:
                - io_loop_context_pop_global_events
                - io_loop_context_remove_deleted_callbacks
                - io_loop_context_unref
        - Branch String:   'ioloop.c:1200,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1203,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:1204,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:1204,8'
          Branch Sides:
            - BranchSide:      'ioloop.c:1204,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:1207,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:1206,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1206,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1206,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:1197,2'
          Dst:             i_panic
        - Src:             'ioloop.c:1199,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'ioloop.c:1204,32'
          Dst:             t_push
        - Src:             'ioloop.c:1206,6'
          Dst:             t_pop
        - Src:             'ioloop.c:1206,6'
          Dst:             i_panic
        - Src:             'ioloop.c:1211,2'
          Dst:             io_loop_context_pop_global_events
        - Src:             'ioloop.c:1212,2'
          Dst:             io_loop_context_remove_deleted_callbacks
        - Src:             'ioloop.c:1213,2'
          Dst:             io_loop_context_unref
    - functionName:    io_loop_context_activate
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1176
      functionLinenumberEnd: 1191
      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:1179,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1179,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1181,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:1184,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1185,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:1191,1'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1185,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:1185,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1186,7'
              BranchSideFuncs:
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'ioloop.c:1186,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1186,29'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:1189,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:1188,5'
          Branch Sides:
            - BranchSide:      'ioloop.c:1188,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1188,5'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_panic
      Callsites:
        - Src:             'ioloop.c:1179,2'
          Dst:             i_panic
        - Src:             'ioloop.c:1182,2'
          Dst:             io_loop_context_push_global_events
        - Src:             'ioloop.c:1183,2'
          Dst:             io_loop_context_ref
        - Src:             'ioloop.c:1184,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'ioloop.c:1185,3'
          Dst:             i_panic
        - Src:             'ioloop.c:1186,29'
          Dst:             t_push
        - Src:             'ioloop.c:1188,5'
          Dst:             t_pop
        - Src:             'ioloop.c:1188,5'
          Dst:             i_panic
    - functionName:    io_loop_context_push_global_events
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1134
      functionLinenumberEnd: 1153
      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:1140,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1141,3'
              BranchSideFuncs:
                - array_get_i.6981
                - array_clear_i.6984
                - event_push_global
            - BranchSide:      'ioloop.c:1144,11'
              BranchSideFuncs:
                - array_get_i.6981
                - array_clear_i.6984
                - event_push_global
        - Branch String:   'ioloop.c:1145,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1146,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1150,11'
              BranchSideFuncs:
                - array_clear_i.6984
                - event_push_global
        - Branch String:   'ioloop.c:1150,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1151,21'
              BranchSideFuncs:
                - event_push_global
                - array_clear_i.6984
            - BranchSide:      'ioloop.c:1152,2'
              BranchSideFuncs:
                - array_clear_i.6984
      Callsites:
        - Src:             'ioloop.c:1138,27'
          Dst:             event_get_global
        - Src:             'ioloop.c:1140,7'
          Dst:             array_is_created_i
        - Src:             'ioloop.c:1144,11'
          Dst:             array_get_i
        - Src:             'ioloop.c:1151,3'
          Dst:             event_push_global
        - Src:             'ioloop.c:1152,2'
          Dst:             array_clear_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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: 1156
      functionLinenumberEnd: 1173
      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:1165,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1166,3'
              BranchSideFuncs:
                - array_is_created_i.7035
                - array_create_i.7039
                - array_append_i.7016
                - event_pop_global
                - event_get_global
                - i_panic
            - BranchSide:      'ioloop.c:1172,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1166,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:1166,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1167,8'
              BranchSideFuncs:
                - array_is_created_i.7035
                - array_create_i.7039
                - array_append_i.7016
                - event_pop_global
                - event_get_global
                - i_panic
        - Branch String:   'ioloop.c:1167,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1168,4'
              BranchSideFuncs:
                - array_append_i.7016
                - event_pop_global
                - event_get_global
                - array_is_created_i.7035
                - array_create_i.7039
                - i_panic
            - BranchSide:      'ioloop.c:1169,3'
              BranchSideFuncs:
                - array_append_i.7016
                - event_pop_global
                - event_get_global
                - array_is_created_i.7035
                - array_create_i.7039
                - i_panic
      Callsites:
        - Src:             'ioloop.c:1165,18'
          Dst:             event_get_global
        - Src:             'ioloop.c:1166,3'
          Dst:             i_panic
        - Src:             'ioloop.c:1167,8'
          Dst:             array_is_created_i
        - Src:             'ioloop.c:1168,4'
          Dst:             array_create_i
        - Src:             'ioloop.c:1169,3'
          Dst:             array_append_i
        - Src:             'ioloop.c:1170,3'
          Dst:             event_pop_global
    - functionName:    io_loop_context_remove_deleted_callbacks
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1118
      functionLinenumberEnd: 1131
      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:1123,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1124,7'
              BranchSideFuncs:
                - array_delete_i.7010
                - array_get_i.6981
            - BranchSide:      'ioloop.c:1131,1'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1124,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1125,5'
              BranchSideFuncs:
                - array_delete_i.7010
                - array_get_i.6981
            - BranchSide:      'ioloop.c:1127,4'
              BranchSideFuncs:
                - array_delete_i.7010
                - array_get_i.6981
      Callsites:
        - Src:             'ioloop.c:1122,8'
          Dst:             array_get_i
        - Src:             'ioloop.c:1127,4'
          Dst:             array_delete_i
        - Src:             'ioloop.c:1128,10'
          Dst:             array_get_i
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.6983
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.6983
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    io_loop_context_remove_callbacks
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1099
      functionLinenumberEnd: 1113
      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:1102,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1103,7'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1113,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:1103,30'
          Branch Sides:
            - BranchSide:      'ioloop.c:1104,7'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1112,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:1104,32'
          Branch Sides:
            - BranchSide:      'ioloop.c:1104,35'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1112,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:1103,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1107,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1112,2'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'ioloop.c:1102,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'ioloop.c:1113,2'
          Dst:             i_panic
    - functionName:    io_loop_context_add_callbacks
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1084
      functionLinenumberEnd: 1093
      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:1092,2'
          Dst:             array_append_i
    - functionName:    io_loop_context_new
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1045
      functionLinenumberEnd: 1052
      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:1048,8'
          Dst:             malloc_multiply_check
        - Src:             'ioloop.c:1048,8'
          Dst:             p_malloc
        - Src:             'ioloop.c:1051,2'
          Dst:             array_create_i
    - functionName:    io_loop_remove_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1030
      functionLinenumberEnd: 1041
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         9
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - array_delete_i
        - i_unreached
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop.c:1034,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1035,8'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7010
            - BranchSide:      'ioloop.c:1041,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'ioloop.c:1035,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1036,10'
              BranchSideFuncs:
                - array_delete_i.7010
            - BranchSide:      'ioloop.c:1040,2'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7010
      Callsites:
        - Src:             'ioloop.c:1037,4'
          Dst:             array_delete_i
        - Src:             'ioloop.c:1041,2'
          Dst:             i_unreached
    - functionName:    io_destroy_callbacks_free
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 967
      functionLinenumberEnd: 969
      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:968,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:968,2'
              BranchSideFuncs:
                - array_free_i.7014
            - BranchSide:      'ioloop.c:968,2'
              BranchSideFuncs:
                - array_free_i.7014
      Callsites:
        - Src:             'ioloop.c:968,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.7016
            - BranchSide:      'ioloop.c:1023,3'
              BranchSideFuncs:
                - array_create_i.7039
                - lib_atexit_priority
                - array_append_i.7016
      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: 1006
      functionLinenumberEnd: 1017
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         9
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - array_delete_i
        - i_unreached
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop.c:1010,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1011,8'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7010
            - BranchSide:      'ioloop.c:1017,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'ioloop.c:1011,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1012,10'
              BranchSideFuncs:
                - array_delete_i.7010
            - BranchSide:      'ioloop.c:1016,2'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7010
      Callsites:
        - Src:             'ioloop.c:1013,4'
          Dst:             array_delete_i
        - Src:             'ioloop.c:1017,2'
          Dst:             i_unreached
    - functionName:    io_switch_callbacks_free
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 962
      functionLinenumberEnd: 964
      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:963,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:963,2'
              BranchSideFuncs:
                - array_free_i.7014
            - BranchSide:      'ioloop.c:963,2'
              BranchSideFuncs:
                - array_free_i.7014
      Callsites:
        - Src:             'ioloop.c:963,2'
          Dst:             array_free_i
    - functionName:    io_loop_add_switch_callback
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 997
      functionLinenumberEnd: 1003
      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:998,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:998,6'
              BranchSideFuncs:
                - array_append_i.7016
            - BranchSide:      'ioloop.c:999,3'
              BranchSideFuncs:
                - array_create_i.7039
                - lib_atexit_priority
                - array_append_i.7016
      Callsites:
        - Src:             'ioloop.c:998,7'
          Dst:             array_is_created_i
        - Src:             'ioloop.c:999,3'
          Dst:             array_create_i
        - Src:             'ioloop.c:1000,3'
          Dst:             lib_atexit_priority
        - Src:             'ioloop.c:1000,3'
          Dst:             io_switch_callbacks_free
        - Src:             'ioloop.c:1002,2'
          Dst:             array_append_i
    - functionName:    io_loop_get_root
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 988
      functionLinenumberEnd: 993
      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:991,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:992,12'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:993,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_loop_set_time_moved_callback
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 957
      functionLinenumberEnd: 959
      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: 1369
      functionLinenumberEnd: 1375
      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:1373,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1373,2'
              BranchSideFuncs:
                - p_free_internal.7011
            - BranchSide:      'ioloop.c:1373,2'
              BranchSideFuncs:
                - p_free_internal.7011
        - Branch String:   'ioloop.c:1373,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1373,2'
              BranchSideFuncs:
                - p_free_internal.7011
            - BranchSide:      'ioloop.c:1374,2'
              BranchSideFuncs:
                - p_free_internal.7011
      Callsites:
        - Src:             'ioloop.c:1374,2'
          Dst:             p_free_internal
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    io_loop_destroy
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 953
      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:    9
      BranchProfiles:
        - Branch String:   'ioloop.c:865,9'
          Branch Sides:
            - BranchSide:      'ioloop.c:865,9'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:866,6'
              BranchSideFuncs:
                - array_is_created_i.7035
                - io_loop_set_current
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7041
        - Branch String:   'ioloop.c:866,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:868,3'
              BranchSideFuncs:
                - io_loop_set_current
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7041
            - BranchSide:      'ioloop.c:873,22'
              BranchSideFuncs:
                - io_loop_set_current
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
        - Branch String:   'ioloop.c:868,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:868,3'
              BranchSideFuncs:
                - i_memcpy.7041
                - io_loop_set_current
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - 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:868,3'
              BranchSideFuncs:
                - io_loop_set_current
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
                - t_push
                - t_pop
                - i_memcpy.7041
                - i_panic
        - Branch String:   'ioloop.c:868,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:868,55'
              BranchSideFuncs:
                - t_push
                - t_pop
                - io_loop_set_current
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
                - i_memcpy.7041
                - i_panic
            - BranchSide:      'ioloop.c:871,2'
              BranchSideFuncs:
                - io_loop_set_current
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
        - Branch String:   'ioloop.c:870,5'
          Branch Sides:
            - BranchSide:      'ioloop.c:870,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:870,5'
              BranchSideFuncs:
                - io_loop_set_current
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7041
        - Branch String:   'ioloop.c:875,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:876,33'
              BranchSideFuncs:
                - io_loop_notify_handler_deinit
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
            - BranchSide:      'ioloop.c:878,2'
              BranchSideFuncs:
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
        - Branch String:   'ioloop.c:878,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:879,24'
              BranchSideFuncs:
                - t_strdup_printf
                - i_warning
                - io_remove
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:894,2'
              BranchSideFuncs:
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
        - Branch String:   'ioloop.c:887,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:888,18'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:890,20'
              BranchSideFuncs:
                - i_warning
                - io_remove
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
                - t_strdup_printf
                - i_panic
        - Branch String:   'ioloop.c:894,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:894,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:896,2'
              BranchSideFuncs:
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
        - Branch String:   'ioloop.c:896,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:896,2'
              BranchSideFuncs:
                - i_memcpy.7041
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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:896,2'
              BranchSideFuncs:
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
        - Branch String:   'ioloop.c:896,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:898,40'
              BranchSideFuncs:
                - t_strdup_printf
                - i_warning
                - timeout_free
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
                - i_panic
            - BranchSide:      'ioloop.c:909,2'
              BranchSideFuncs:
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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:902,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:903,18'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:905,20'
              BranchSideFuncs:
                - i_warning
                - timeout_free
                - array_free_i.7014
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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.7041
        - Branch String:   'ioloop.c:911,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:912,42'
              BranchSideFuncs:
                - t_strdup_printf
                - i_warning
                - timeout_free
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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:925,20'
              BranchSideFuncs:
                - priorityq_deinit
                - p_free_internal.7011
                - 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:918,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:919,18'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:921,20'
              BranchSideFuncs:
                - i_warning
                - timeout_free
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7011
                - 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:927,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:928,33'
              BranchSideFuncs:
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - p_free_internal.7011
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - i_panic
            - BranchSide:      'ioloop.c:942,6'
              BranchSideFuncs:
                - p_free_internal.7011
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
        - Branch String:   'ioloop.c:934,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:935,18'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:937,20'
              BranchSideFuncs:
                - i_warning
                - io_wait_timer_remove
                - p_free_internal.7011
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_panic
        - Branch String:   'ioloop.c:942,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:944,7'
              BranchSideFuncs:
                - backtrace_get
                - p_free_internal.7011
                - io_loop_context_unref
                - io_loop_handler_deinit
                - i_warning
            - BranchSide:      'ioloop.c:948,6'
              BranchSideFuncs:
                - p_free_internal.7011
                - io_loop_context_unref
                - io_loop_handler_deinit
        - Branch String:   'ioloop.c:944,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:945,45'
              BranchSideFuncs:
                - i_warning
                - p_free_internal.7011
                - io_loop_context_unref
                - io_loop_handler_deinit
            - BranchSide:      'ioloop.c:946,2'
              BranchSideFuncs:
                - p_free_internal.7011
                - io_loop_context_unref
                - io_loop_handler_deinit
        - Branch String:   'ioloop.c:948,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:949,26'
              BranchSideFuncs:
                - io_loop_handler_deinit
                - p_free_internal.7011
                - io_loop_context_unref
            - BranchSide:      'ioloop.c:950,6'
              BranchSideFuncs:
                - p_free_internal.7011
                - io_loop_context_unref
        - Branch String:   'ioloop.c:950,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:951,26'
              BranchSideFuncs:
                - io_loop_context_unref
                - p_free_internal.7011
            - BranchSide:      'ioloop.c:952,2'
              BranchSideFuncs:
                - p_free_internal.7011
      Callsites:
        - Src:             'ioloop.c:865,9'
          Dst:             i_panic
        - Src:             'ioloop.c:866,6'
          Dst:             array_is_created_i
        - Src:             'ioloop.c:868,3'
          Dst:             i_memcpy
        - Src:             'ioloop.c:868,55'
          Dst:             t_push
        - Src:             'ioloop.c:870,5'
          Dst:             t_pop
        - Src:             'ioloop.c:870,5'
          Dst:             i_panic
        - Src:             'ioloop.c:873,2'
          Dst:             io_loop_set_current
        - Src:             'ioloop.c:876,3'
          Dst:             io_loop_notify_handler_deinit
        - Src:             'ioloop.c:881,23'
          Dst:             t_strdup_printf
        - Src:             'ioloop.c:888,4'
          Dst:             i_panic
        - Src:             'ioloop.c:890,4'
          Dst:             i_warning
        - Src:             'ioloop.c:891,3'
          Dst:             io_remove
        - Src:             'ioloop.c:894,2'
          Dst:             i_panic
        - Src:             'ioloop.c:896,2'
          Dst:             i_memcpy
        - Src:             'ioloop.c:897,23'
          Dst:             t_strdup_printf
        - Src:             'ioloop.c:903,4'
          Dst:             i_panic
        - Src:             'ioloop.c:905,4'
          Dst:             i_warning
        - Src:             'ioloop.c:906,3'
          Dst:             timeout_free
        - Src:             'ioloop.c:909,2'
          Dst:             array_free_i
        - Src:             'ioloop.c:911,17'
          Dst:             priorityq_pop
        - Src:             'ioloop.c:913,23'
          Dst:             t_strdup_printf
        - Src:             'ioloop.c:919,4'
          Dst:             i_panic
        - Src:             'ioloop.c:921,4'
          Dst:             i_warning
        - Src:             'ioloop.c:922,3'
          Dst:             timeout_free
        - Src:             'ioloop.c:925,2'
          Dst:             priorityq_deinit
        - Src:             'ioloop.c:929,23'
          Dst:             t_strdup_printf
        - Src:             'ioloop.c:935,4'
          Dst:             i_panic
        - Src:             'ioloop.c:937,4'
          Dst:             i_warning
        - Src:             'ioloop.c:938,3'
          Dst:             io_wait_timer_remove
        - Src:             'ioloop.c:944,7'
          Dst:             backtrace_get
        - Src:             'ioloop.c:945,4'
          Dst:             i_warning
        - Src:             'ioloop.c:949,3'
          Dst:             io_loop_handler_deinit
        - Src:             'ioloop.c:951,3'
          Dst:             io_loop_context_unref
        - Src:             'ioloop.c:952,2'
          Dst:             p_free_internal
    - functionName:    io_loop_set_current
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 972
      functionLinenumberEnd: 985
      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:    4
      BranchProfiles:
        - Branch String:   'ioloop.c:976,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:977,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:979,19'
              BranchSideFuncs:
                - array_is_created_i.7035
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7041
        - Branch String:   'ioloop.c:980,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:980,6'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7041
            - BranchSide:      'ioloop.c:981,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7041
        - Branch String:   'ioloop.c:981,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:981,3'
              BranchSideFuncs:
                - i_memcpy.7041
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'ioloop.c:981,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7041
                - i_panic
        - Branch String:   'ioloop.c:981,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:981,54'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7041
                - i_panic
            - BranchSide:      'ioloop.c:984,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:983,5'
          Branch Sides:
            - BranchSide:      'ioloop.c:983,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:983,5'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7041
      Callsites:
        - Src:             'ioloop.c:980,6'
          Dst:             array_is_created_i
        - Src:             'ioloop.c:981,3'
          Dst:             i_memcpy
        - Src:             'ioloop.c:981,54'
          Dst:             t_push
        - Src:             'ioloop.c:983,5'
          Dst:             t_pop
        - Src:             'ioloop.c:983,5'
          Dst:             i_panic
    - functionName:    io_loop_default_time_moved
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 573
      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:569,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:569,6'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'ioloop.c:571,6'
              BranchSideFuncs:
                - i_warning
      Callsites:
        - Src:             'ioloop.c:568,19'
          Dst:             timeval_diff_usecs
        - Src:             'ioloop.c:570,3'
          Dst:             i_warning
    - functionName:    timeout_cmp
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 561
      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:561,9'
          Dst:             timeval_cmp
    - functionName:    io_loop_create
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 830
      functionLinenumberEnd: 852
      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:    6
      BranchProfiles:
        - Branch String:   'ioloop.c:831,17'
          Branch Sides:
            - BranchSide:      'ioloop.c:833,7'
              BranchSideFuncs:
                - getenv
                - i_gettimeofday
                - malloc_multiply_check.6996
                - p_malloc.6997
                - priorityq_init
                - array_create_i.7039
                - io_loop_set_current
            - BranchSide:      'ioloop.c:833,7'
              BranchSideFuncs:
                - getenv
                - i_gettimeofday
                - malloc_multiply_check.6996
                - p_malloc.6997
                - priorityq_init
                - array_create_i.7039
                - io_loop_set_current
        - Branch String:   'ioloop.c:833,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:834,21'
              BranchSideFuncs:
                - i_gettimeofday
                - malloc_multiply_check.6996
                - p_malloc.6997
                - priorityq_init
                - array_create_i.7039
                - io_loop_set_current
            - BranchSide:      'ioloop.c:839,2'
              BranchSideFuncs:
                - i_gettimeofday
                - malloc_multiply_check.6996
                - p_malloc.6997
                - priorityq_init
                - array_create_i.7039
                - io_loop_set_current
        - Branch String:   'ioloop.c:846,32'
          Branch Sides:
            - BranchSide:      'ioloop.c:846,32'
              BranchSideFuncs:
                - io_loop_set_current
            - BranchSide:      'ioloop.c:847,3'
              BranchSideFuncs:
                - io_loop_set_current
      Callsites:
        - Src:             'ioloop.c:835,19'
          Dst:             getenv
        - Src:             'ioloop.c:839,2'
          Dst:             i_gettimeofday
        - Src:             'ioloop.c:842,18'
          Dst:             malloc_multiply_check
        - Src:             'ioloop.c:842,18'
          Dst:             p_malloc
        - Src:             'ioloop.c:843,21'
          Dst:             priorityq_init
        - Src:             'ioloop.c:843,21'
          Dst:             timeout_cmp
        - Src:             'ioloop.c:844,2'
          Dst:             array_create_i
        - Src:             'ioloop.c:851,9'
          Dst:             io_loop_set_current
    - functionName:    io_loop_time_refresh
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 824
      functionLinenumberEnd: 827
      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:825,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:825,2'
              BranchSideFuncs:
                - i_gettimeofday
            - BranchSide:      'ioloop.c:825,2'
              BranchSideFuncs:
                - i_gettimeofday
      Callsites:
        - Src:             'ioloop.c:825,2'
          Dst:             i_gettimeofday
    - functionName:    io_loop_is_running
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 820
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_set_max_fd_count
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 814
      functionLinenumberEnd: 816
      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: 809
      functionLinenumberEnd: 811
      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: 804
      functionLinenumberEnd: 806
      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: 798
      functionLinenumberEnd: 801
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_call_pending
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 767
      functionLinenumberEnd: 781
      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:770,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:771,8'
              BranchSideFuncs:
                - io_loop_call_io
            - BranchSide:      'ioloop.c:781,1'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:774,8'
          Branch Sides:
            - BranchSide:      'ioloop.c:775,22'
              BranchSideFuncs:
                - io_loop_call_io
            - BranchSide:      'ioloop.c:776,8'
              BranchSideFuncs:
                - io_loop_call_io
        - Branch String:   'ioloop.c:776,8'
          Branch Sides:
            - BranchSide:      'ioloop.c:777,5'
              BranchSideFuncs:
                - io_loop_call_io
            - BranchSide:      'ioloop.c:778,9'
              BranchSideFuncs:
                - io_loop_call_io
        - Branch String:   'ioloop.c:779,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:770,2'
              BranchSideFuncs:
                - io_loop_call_io
            - BranchSide:      'ioloop.c:773,27'
              BranchSideFuncs:
                - io_loop_call_io
      Callsites:
        - Src:             'ioloop.c:775,5'
          Dst:             io_loop_call_io
    - functionName:    io_loop_call_io
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 723
      functionLinenumberEnd: 745
      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:727,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:728,3'
              BranchSideFuncs:
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - i_panic
            - BranchSide:      'ioloop.c:733,6'
              BranchSideFuncs:
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
        - Branch String:   'ioloop.c:728,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:728,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:729,3'
              BranchSideFuncs:
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
        - Branch String:   'ioloop.c:733,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:734,28'
              BranchSideFuncs:
                - io_loop_context_activate
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
            - BranchSide:      'ioloop.c:736,16'
              BranchSideFuncs:
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
        - Branch String:   'ioloop.c:738,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:740,12'
              BranchSideFuncs:
                - i_panic
                - io_loop_context_deactivate
            - BranchSide:      'ioloop.c:742,6'
              BranchSideFuncs:
                - i_panic
                - io_loop_context_deactivate
        - Branch String:   'ioloop.c:742,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:743,30'
              BranchSideFuncs:
                - io_loop_context_deactivate
                - i_panic
            - BranchSide:      'ioloop.c:744,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:744,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:744,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:744,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:728,3'
          Dst:             i_panic
        - Src:             'ioloop.c:734,3'
          Dst:             io_loop_context_activate
        - Src:             'ioloop.c:735,9'
          Dst:             t_push_named
        - Src:             'ioloop.c:738,7'
          Dst:             t_pop
        - Src:             'ioloop.c:739,3'
          Dst:             i_panic
        - Src:             'ioloop.c:743,3'
          Dst:             io_loop_context_deactivate
        - Src:             'ioloop.c:744,2'
          Dst:             i_panic
    - functionName:    io_loop_timeouts_start_new
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 593
      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:579,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:580,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:582,2'
              BranchSideFuncs:
                - io_loop_time_refresh
                - array_clear_i.6984
                - timeout_update_next
                - priorityq_add
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.7041
        - Branch String:   'ioloop.c:584,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:584,2'
              BranchSideFuncs:
                - i_memcpy.7041
                - array_clear_i.6984
                - timeout_update_next
                - priorityq_add
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:584,2'
              BranchSideFuncs:
                - array_clear_i.6984
                - timeout_update_next
                - priorityq_add
                - i_memcpy.7041
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:584,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:585,3'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.6984
                - i_memcpy.7041
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:592,2'
              BranchSideFuncs:
                - array_clear_i.6984
        - Branch String:   'ioloop.c:585,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:585,3'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.6984
                - i_memcpy.7041
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:585,3'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.6984
                - i_memcpy.7041
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:585,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:585,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:587,3'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.6984
                - i_panic
                - i_memcpy.7041
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:587,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:587,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:588,3'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.6984
                - i_panic
                - i_panic
                - i_memcpy.7041
                - i_panic
        - Branch String:   'ioloop.c:588,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:588,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:589,23'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.6984
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.7041
      Callsites:
        - Src:             'ioloop.c:579,6'
          Dst:             array_count_i
        - Src:             'ioloop.c:582,2'
          Dst:             io_loop_time_refresh
        - Src:             'ioloop.c:584,2'
          Dst:             i_memcpy
        - Src:             'ioloop.c:585,3'
          Dst:             i_panic
        - Src:             'ioloop.c:587,3'
          Dst:             i_panic
        - Src:             'ioloop.c:588,3'
          Dst:             i_panic
        - Src:             'ioloop.c:589,3'
          Dst:             timeout_update_next
        - Src:             'ioloop.c:590,3'
          Dst:             priorityq_add
        - Src:             'ioloop.c:592,2'
          Dst:             array_clear_i
    - functionName:    timeout_update_next
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 255
      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:237,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:238,19'
              BranchSideFuncs:
                - i_gettimeofday
            - BranchSide:      'ioloop.c:240,30'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:251,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:251,6'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:252,17'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:238,3'
          Dst:             i_gettimeofday
    - functionName:    io_loop_handler_run
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 784
      functionLinenumberEnd: 795
      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:785,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:785,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:787,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:791,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:792,16'
              BranchSideFuncs:
                - io_loop_stop
                - i_panic
            - BranchSide:      'ioloop.c:794,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:794,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:794,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:794,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:785,2'
          Dst:             i_panic
        - Src:             'ioloop.c:787,2'
          Dst:             io_loop_timeouts_start_new
        - Src:             'ioloop.c:789,2'
          Dst:             io_loop_handler_run_internal
        - Src:             'ioloop.c:790,2'
          Dst:             io_loop_call_pending
        - Src:             'ioloop.c:792,3'
          Dst:             io_loop_stop
        - Src:             'ioloop.c:794,2'
          Dst:             i_panic
    - functionName:    io_loop_run
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 764
      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:    6
      BranchProfiles:
        - Branch String:   'ioloop.c:749,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:750,30'
              BranchSideFuncs:
                - io_loop_initialize_handler
                - io_loop_handler_run
                - i_panic
                - io_loop_context_deactivate
            - BranchSide:      'ioloop.c:752,6'
              BranchSideFuncs:
                - io_loop_handler_run
                - i_panic
                - io_loop_context_deactivate
        - Branch String:   'ioloop.c:752,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:753,30'
              BranchSideFuncs:
                - io_loop_context_deactivate
                - io_loop_handler_run
                - i_panic
            - BranchSide:      'ioloop.c:757,2'
              BranchSideFuncs:
                - io_loop_handler_run
                - i_panic
        - Branch String:   'ioloop.c:757,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:757,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:758,2'
              BranchSideFuncs:
                - io_loop_handler_run
        - Branch String:   'ioloop.c:761,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:762,23'
              BranchSideFuncs:
                - io_loop_handler_run
            - BranchSide:      'ioloop.c:763,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:750,3'
          Dst:             io_loop_initialize_handler
        - Src:             'ioloop.c:753,3'
          Dst:             io_loop_context_deactivate
        - Src:             'ioloop.c:757,2'
          Dst:             i_panic
        - Src:             'ioloop.c:762,3'
          Dst:             io_loop_handler_run
    - functionName:    io_loop_handle_timeouts_real
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 639
      functionLinenumberEnd: 702
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         41
      ICount:          268
      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:649,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:651,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:657,36'
              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:653,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:653,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:655,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:659,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:660,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:666,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:664,4'
          Branch Sides:
            - BranchSide:      'ioloop.c:664,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:665,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:672,25'
          Branch Sides:
            - BranchSide:      'ioloop.c:672,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:673,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:672,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:672,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:674,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:678,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:679,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:681,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:681,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:683,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:686,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:689,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:690,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:692,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:694,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:696,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:698,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:698,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:699,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:700,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:700,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:672,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:700,3'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'ioloop.c:646,2'
          Dst:             i_gettimeofday
        - Src:             'ioloop.c:648,15'
          Dst:             timeval_diff_usecs
        - Src:             'ioloop.c:651,3'
          Dst:             io_loops_timeouts_update
        - Src:             'ioloop.c:653,3'
          Dst:             i_panic
        - Src:             'ioloop.c:655,3'
          Dst:             i_gettimeofday
        - Src:             'ioloop.c:657,16'
          Dst:             timeval_diff_usecs
        - Src:             'ioloop.c:660,4'
          Dst:             io_loops_timeouts_update
        - Src:             'ioloop.c:664,4'
          Dst:             i_panic
        - Src:             'ioloop.c:666,3'
          Dst:             ioloop_add_wait_time
        - Src:             'ioloop.c:673,17'
          Dst:             priorityq_peek
        - Src:             'ioloop.c:678,7'
          Dst:             timeout_get_wait_time
        - Src:             'ioloop.c:683,4'
          Dst:             priorityq_remove
        - Src:             'ioloop.c:686,4'
          Dst:             timeout_reset_timeval
        - Src:             'ioloop.c:690,4'
          Dst:             io_loop_context_activate
        - Src:             'ioloop.c:691,10'
          Dst:             t_push_named
        - Src:             'ioloop.c:694,8'
          Dst:             t_pop
        - Src:             'ioloop.c:695,4'
          Dst:             i_panic
        - Src:             'ioloop.c:699,4'
          Dst:             io_loop_context_deactivate
        - Src:             'ioloop.c:700,3'
          Dst:             i_panic
    - functionName:    timeout_reset_timeval
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 445
      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:426,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:427,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:429,22'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_remove
                - priorityq_add
                - timeval_cmp
                - timeval_add_usecs
        - Branch String:   'ioloop.c:439,21'
          Branch Sides:
            - BranchSide:      'ioloop.c:439,37'
              BranchSideFuncs:
                - timeval_cmp
                - priorityq_remove
                - priorityq_add
                - timeval_add_usecs
            - BranchSide:      'ioloop.c:443,19'
              BranchSideFuncs:
                - priorityq_remove
                - priorityq_add
        - Branch String:   'ioloop.c:439,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:440,3'
              BranchSideFuncs:
                - timeval_add_usecs
                - priorityq_remove
                - priorityq_add
            - BranchSide:      'ioloop.c:443,19'
              BranchSideFuncs:
                - priorityq_remove
                - priorityq_add
      Callsites:
        - Src:             'ioloop.c:429,2'
          Dst:             timeout_update_next
        - Src:             'ioloop.c:439,24'
          Dst:             timeval_cmp
        - Src:             'ioloop.c:441,3'
          Dst:             timeval_add_usecs
        - Src:             'ioloop.c:443,2'
          Dst:             priorityq_remove
        - Src:             'ioloop.c:444,2'
          Dst:             priorityq_add
    - functionName:    io_loop_handle_timeouts
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 705
      functionLinenumberEnd: 720
      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:708,4'
          Branch Sides:
            - BranchSide:      'ioloop.c:708,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:708,4'
              BranchSideFuncs:
                - data_stack_free_unused
        - Branch String:   'ioloop.c:715,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:715,6'
              BranchSideFuncs:
                - data_stack_free_unused
            - BranchSide:      'ioloop.c:716,7'
              BranchSideFuncs:
                - data_stack_free_unused
        - Branch String:   'ioloop.c:716,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:717,4'
              BranchSideFuncs:
                - data_stack_free_unused
            - BranchSide:      'ioloop.c:718,33'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:706,2'
          Dst:             t_push
        - Src:             'ioloop.c:707,3'
          Dst:             io_loop_handle_timeouts_real
        - Src:             'ioloop.c:708,4'
          Dst:             t_pop
        - Src:             'ioloop.c:708,4'
          Dst:             i_panic
        - Src:             'ioloop.c:717,4'
          Dst:             data_stack_free_unused
    - functionName:    io_loop_have_waitable_io_files
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 547
      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:542,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:543,7'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:546,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:543,31'
          Branch Sides:
            - BranchSide:      'ioloop.c:543,35'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:545,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:543,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:544,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:545,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_loop_run_get_wait_time
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 554
      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:552,16'
          Branch Sides:
            - BranchSide:      'ioloop.c:552,51'
              BranchSideFuncs:
                - io_loop_have_waitable_io_files
                - i_panic
            - BranchSide:      'ioloop.c:552,16'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:552,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:552,6'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:553,3'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'ioloop.c:551,14'
          Dst:             io_loop_get_wait_time
        - Src:             'ioloop.c:552,20'
          Dst:             io_loop_have_waitable_io_files
        - Src:             'ioloop.c:553,3'
          Dst:             i_panic
    - functionName:    timeout_reset
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 451
      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:    3
      BranchProfiles:
        - Branch String:   'ioloop.c:449,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:449,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:449,2'
              BranchSideFuncs:
                - timeout_reset_timeval
      Callsites:
        - Src:             'ioloop.c:449,2'
          Dst:             i_panic
        - Src:             'ioloop.c:450,2'
          Dst:             timeout_reset_timeval
    - functionName:    timeout_add_absolute
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 365
      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:363,9'
          Dst:             timeout_add_absolute_to
    - functionName:    timeout_add_absolute_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 353
      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:347,12'
          Dst:             timeout_add_common
        - Src:             'ioloop.c:352,2'
          Dst:             priorityq_add
    - functionName:    timeout_add_short
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 335
      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:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:334,9'
          Dst:             timeout_add
    - functionName:    timeout_add
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 314
      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:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:312,9'
          Dst:             timeout_add_to
    - functionName:    timeout_add_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 304
      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:293,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:295,3'
              BranchSideFuncs:
                - array_append_i.7016
            - BranchSide:      'ioloop.c:300,23'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
      Callsites:
        - Src:             'ioloop.c:289,12'
          Dst:             timeout_add_common
        - Src:             'ioloop.c:295,3'
          Dst:             array_append_i
        - Src:             'ioloop.c:300,3'
          Dst:             timeout_update_next
        - Src:             'ioloop.c:302,3'
          Dst:             priorityq_add
    - functionName:    timeout_add_short_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 325
      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:323,9'
          Dst:             timeout_add_to
    - functionName:    io_set_never_wait_alone
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 233
      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: 226
      functionLinenumberEnd: 227
      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: 206
      functionLinenumberEnd: 213
      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:207,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:208,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:210,2'
              BranchSideFuncs:
                - io_remove_full
                - i_panic
        - Branch String:   'ioloop.c:210,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:210,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:212,17'
              BranchSideFuncs:
                - io_remove_full
      Callsites:
        - Src:             'ioloop.c:210,2'
          Dst:             i_panic
        - Src:             'ioloop.c:212,2'
          Dst:             io_remove_full
    - functionName:    io_add_istream
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 134
      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:132,9'
          Dst:             io_add_istream_to
    - functionName:    io_add_istream_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 124
      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:119,27'
          Dst:             i_stream_get_fd
        - Src:             'ioloop.c:119,7'
          Dst:             io_add_file
        - Src:             'ioloop.c:122,2'
          Dst:             i_stream_ref
        - Src:             'ioloop.c:123,2'
          Dst:             i_stream_set_io
    - functionName:    io_add
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 108
      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:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:106,9'
          Dst:             io_add_to
    - functionName:    io_add_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 97
      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:93,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:93,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:93,2'
              BranchSideFuncs:
                - io_add_file
      Callsites:
        - Src:             'ioloop.c:93,2'
          Dst:             i_panic
        - Src:             'ioloop.c:94,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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:155,16'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:157,14'
              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:    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:    13
      BranchProfiles:  []
      Callsites:       []
    - 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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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,21'
              BranchSideFuncs:
                - i_warning
                - io_remove
                - i_close_fd_path
                - p_free_internal.7141
            - BranchSide:      'ioloop-notify-inotify.c:207,2'
              BranchSideFuncs:
                - i_close_fd_path
                - p_free_internal.7141
      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,17'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:171,26'
              BranchSideFuncs:
                - malloc_multiply_check.7128
                - p_malloc.7130
                - 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.7128
                - p_malloc.7130
                - 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:    1
      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: 196
      functionLinenumberEnd: 197
      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: 133
      functionLinenumberEnd: 136
      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: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './array.h:273,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.7200
                - i_sleep_intr_msecs
                - io_loop_handle_timeouts
                - array_idx_i.7191
                - 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.7191
                - 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.7191
                - 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.7191
                - 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.7191
                - 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.7191
                - io_loop_call_io
                - i_fatal
            - BranchSide:      'ioloop-epoll.c:186,2'
              BranchSideFuncs:
                - io_loop_handle_timeouts
                - array_idx_i.7191
                - 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.7191
                - 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.7191
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:197,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:198,3'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:200,9'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:200,2'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:200,2'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:203,11'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:206,3'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:207,9'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:227,2'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:208,8'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:209,5'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:211,9'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:212,8'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:213,10'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:214,14'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:214,13'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:215,13'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:216,14'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:216,13'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:217,13'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:218,14'
              BranchSideFuncs:
                - array_idx_i.7191
                - 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.7191
            - BranchSide:      'ioloop-epoll.c:226,3'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:223,9'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:224,6'
              BranchSideFuncs:
                - array_idx_i.7191
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:225,4'
              BranchSideFuncs:
                - array_idx_i.7191
                - 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: 301
      functionLinenumberEnd: 303
      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:302,13'
          Dst:             array_count_i
        - Src:             './array.h:303,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.7209
            - BranchSide:      'ioloop-epoll.c:155,6'
              BranchSideFuncs:
                - p_free_internal.7209
        - 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.7209
                - __errno_location
                - i_panic
            - BranchSide:      'ioloop-epoll.c:154,2'
              BranchSideFuncs:
                - p_free_internal.7209
        - Branch String:   'ioloop-epoll.c:149,24'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:149,27'
              BranchSideFuncs:
                - __errno_location
                - i_error
                - p_free_internal.7209
                - i_panic
            - BranchSide:      'ioloop-epoll.c:152,19'
              BranchSideFuncs:
                - i_error
                - p_free_internal.7209
        - 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.7209
        - Branch String:   'ioloop-epoll.c:155,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:159,3'
              BranchSideFuncs:
                - p_free_internal.7209
            - BranchSide:      'ioloop-epoll.c:161,2'
              BranchSideFuncs:
                - p_free_internal.7209
      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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 336
      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:334,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.7213
                - p_malloc.7214
                - ioloop_iolist_add
                - epoll_event_mask
                - epoll_ctl
                - array_append_space_i.7210
                - __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.7210
                - __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.7210
        - 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.7210
            - BranchSide:      'ioloop-epoll.c:120,7'
              BranchSideFuncs:
                - array_append_space_i.7210
        - 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.7210
      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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 158
      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:157,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.7209
                - close
                - array_free_i.7221
                - array_free_i.7221
                - p_free_internal.7209
                - i_error
            - BranchSide:      'ioloop-epoll.c:53,12'
              BranchSideFuncs:
                - close
                - array_free_i.7221
                - array_free_i.7221
                - p_free_internal.7209
                - i_error
        - Branch String:   'ioloop-epoll.c:53,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:54,3'
              BranchSideFuncs:
                - i_error
                - array_free_i.7221
                - array_free_i.7221
                - p_free_internal.7209
            - BranchSide:      'ioloop-epoll.c:55,2'
              BranchSideFuncs:
                - array_free_i.7221
                - array_free_i.7221
                - p_free_internal.7209
      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: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7190
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7190
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,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: 196
      functionLinenumberEnd: 197
      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: 133
      functionLinenumberEnd: 136
      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: 188
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          45
      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
        - var_expand_extensions_deinit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib.c:189,2'
          Branch Sides:
            - BranchSide:      'lib.c:189,2'
              BranchSideFuncs:
                - lib_atexit_run
                - ipwd_deinit
                - hostpid_deinit
                - var_expand_extensions_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:189,2'
              BranchSideFuncs:
                - lib_atexit_run
                - ipwd_deinit
                - hostpid_deinit
                - var_expand_extensions_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:189,2'
          Branch Sides:
            - BranchSide:      'lib.c:189,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib.c:189,2'
              BranchSideFuncs:
                - lib_atexit_run
                - ipwd_deinit
                - hostpid_deinit
                - var_expand_extensions_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:189,2'
          Dst:             i_panic
        - Src:             'lib.c:191,2'
          Dst:             lib_atexit_run
        - Src:             'lib.c:192,2'
          Dst:             ipwd_deinit
        - Src:             'lib.c:193,2'
          Dst:             hostpid_deinit
        - Src:             'lib.c:194,2'
          Dst:             var_expand_extensions_deinit
        - Src:             'lib.c:195,2'
          Dst:             event_filter_deinit
        - Src:             'lib.c:196,2'
          Dst:             data_stack_deinit_event
        - Src:             'lib.c:197,2'
          Dst:             lib_event_deinit
        - Src:             'lib.c:198,2'
          Dst:             restrict_access_deinit
        - Src:             'lib.c:199,2'
          Dst:             i_close_fd_path
        - Src:             'lib.c:200,2'
          Dst:             data_stack_deinit
        - Src:             'lib.c:201,2'
          Dst:             failures_deinit
        - Src:             'lib.c:202,2'
          Dst:             process_title_deinit
        - Src:             'lib.c:203,2'
          Dst:             random_deinit
    - functionName:    lib_atexit_run
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 116
      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:    2
      BranchProfiles:
        - Branch String:   'lib.c:108,32'
          Branch Sides:
            - BranchSide:      'lib.c:110,6'
              BranchSideFuncs:
                - array_is_created_i.7286
                - array_sort_i
                - array_free_i.7287
            - BranchSide:      'lib.c:110,6'
              BranchSideFuncs:
                - array_is_created_i.7286
                - array_sort_i
                - array_free_i.7287
        - Branch String:   'lib.c:110,6'
          Branch Sides:
            - BranchSide:      'lib.c:110,6'
              BranchSideFuncs:
                - array_sort_i
                - array_free_i.7287
            - BranchSide:      'lib.c:111,3'
              BranchSideFuncs:
                - array_sort_i
                - array_free_i.7287
        - Branch String:   'lib.c:112,3'
          Branch Sides:
            - BranchSide:      'lib.c:113,6'
              BranchSideFuncs:
                - array_free_i.7287
            - BranchSide:      'lib.c:114,3'
              BranchSideFuncs:
                - array_free_i.7287
      Callsites:
        - Src:             'lib.c:110,6'
          Dst:             array_is_created_i
        - Src:             'lib.c:111,3'
          Dst:             array_sort_i
        - Src:             'lib.c:111,3'
          Dst:             atexit_callback_priority_cmp
        - Src:             'lib.c:114,3'
          Dst:             array_free_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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: 102
      functionLinenumberEnd: 103
      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: 156
      functionLinenumberEnd: 158
      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:157,2'
          Dst:             buffer_free
    - functionName:    lib_is_initialized
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 184
      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: 148
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          37
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib.c:152,7'
          Branch Sides:
            - BranchSide:      'lib.c:152,7'
              BranchSideFuncs:
                - strlen
                - write
                - abort
            - BranchSide:      'lib.c:152,7'
              BranchSideFuncs:
                - strlen
                - write
                - abort
        - Branch String:   'lib.c:152,6'
          Branch Sides:
            - BranchSide:      'lib.c:153,15'
              BranchSideFuncs: []
            - BranchSide:      'lib.c:159,1'
              BranchSideFuncs: []
        - Branch String:   'lib.c:154,7'
          Branch Sides:
            - BranchSide:      'lib.c:156,3'
              BranchSideFuncs:
                - abort
            - BranchSide:      'lib.c:157,3'
              BranchSideFuncs:
                - abort
      Callsites:
        - Src:             'lib.c:154,35'
          Dst:             strlen
        - Src:             'lib.c:154,7'
          Dst:             write
        - Src:             'lib.c:157,3'
          Dst:             abort
    - functionName:    lib_open_non_stdio_dev_null
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 134
      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:120,16'
          Branch Sides:
            - BranchSide:      'lib.c:120,16'
              BranchSideFuncs:
                - open
                - fd_close_on_exec
                - dup
                - i_fatal
                - i_fatal
            - BranchSide:      'lib.c:120,16'
              BranchSideFuncs:
                - open
                - fd_close_on_exec
                - dup
                - i_fatal
                - i_fatal
        - Branch String:   'lib.c:121,6'
          Branch Sides:
            - BranchSide:      'lib.c:122,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib.c:127,2'
              BranchSideFuncs:
                - fd_close_on_exec
                - dup
                - i_fatal
        - Branch String:   'lib.c:127,2'
          Branch Sides:
            - BranchSide:      'lib.c:128,21'
              BranchSideFuncs:
                - dup
                - fd_close_on_exec
                - i_fatal
            - BranchSide:      'lib.c:133,19'
              BranchSideFuncs:
                - fd_close_on_exec
        - Branch String:   'lib.c:129,7'
          Branch Sides:
            - BranchSide:      'lib.c:127,2'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib.c:130,4'
              BranchSideFuncs:
                - i_fatal
      Callsites:
        - Src:             'lib.c:120,16'
          Dst:             open
        - Src:             'lib.c:122,3'
          Dst:             i_fatal
        - Src:             'lib.c:128,17'
          Dst:             dup
        - Src:             'lib.c:130,4'
          Dst:             i_fatal
        - Src:             'lib.c:133,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: 162
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          41
      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
        - var_expand_extensions_init
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib.c:163,2'
          Branch Sides:
            - BranchSide:      'lib.c:163,2'
              BranchSideFuncs:
                - random_init
                - data_stack_init
                - hostpid_init
                - lib_open_non_stdio_dev_null
                - lib_event_init
                - event_filter_init
                - var_expand_extensions_init
                - lib_set_clean_exit
                - atexit
                - i_panic
            - BranchSide:      'lib.c:163,2'
              BranchSideFuncs:
                - random_init
                - data_stack_init
                - hostpid_init
                - lib_open_non_stdio_dev_null
                - lib_event_init
                - event_filter_init
                - var_expand_extensions_init
                - lib_set_clean_exit
                - atexit
                - i_panic
        - Branch String:   'lib.c:163,2'
          Branch Sides:
            - BranchSide:      'lib.c:163,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib.c:163,2'
              BranchSideFuncs:
                - random_init
                - data_stack_init
                - hostpid_init
                - lib_open_non_stdio_dev_null
                - lib_event_init
                - event_filter_init
                - var_expand_extensions_init
                - lib_set_clean_exit
                - atexit
      Callsites:
        - Src:             'lib.c:163,2'
          Dst:             i_panic
        - Src:             'lib.c:164,2'
          Dst:             random_init
        - Src:             'lib.c:165,2'
          Dst:             data_stack_init
        - Src:             'lib.c:166,2'
          Dst:             hostpid_init
        - Src:             'lib.c:167,2'
          Dst:             lib_open_non_stdio_dev_null
        - Src:             'lib.c:168,2'
          Dst:             lib_event_init
        - Src:             'lib.c:169,2'
          Dst:             event_filter_init
        - Src:             'lib.c:170,2'
          Dst:             var_expand_extensions_init
        - Src:             'lib.c:176,2'
          Dst:             lib_set_clean_exit
        - Src:             'lib.c:177,2'
          Dst:             atexit
        - Src:             'lib.c:177,2'
          Dst:             lib_atexit_handler
    - functionName:    lib_set_clean_exit
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - set
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      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: 331
      functionLinenumberEnd: 336
      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:334,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      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:251,13'
          Dst:             array_count_i
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7275
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7275
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    lib_atexit_priority
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 98
      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:83,6'
          Branch Sides:
            - BranchSide:      'lib.c:84,3'
              BranchSideFuncs:
                - array_get_i.7300
                - array_append_space_i.7299
                - i_panic
            - BranchSide:      'lib.c:87,15'
              BranchSideFuncs:
                - array_get_i.7300
                - array_append_space_i.7299
                - i_panic
        - Branch String:   'lib.c:88,3'
          Branch Sides:
            - BranchSide:      'lib.c:0,0'
              BranchSideFuncs:
                - array_append_space_i.7299
                - i_panic
            - BranchSide:      'lib.c:89,8'
              BranchSideFuncs:
                - array_append_space_i.7299
                - i_panic
        - Branch String:   'lib.c:89,8'
          Branch Sides:
            - BranchSide:      'lib.c:90,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib.c:93,3'
              BranchSideFuncs:
                - array_append_space_i.7299
                - i_panic
        - Branch String:   'lib.c:90,5'
          Branch Sides:
            - BranchSide:      'lib.c:90,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib.c:91,5'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib.c:83,7'
          Dst:             array_is_created_i
        - Src:             'lib.c:84,3'
          Dst:             array_create_i
        - Src:             'lib.c:87,15'
          Dst:             array_get_i
        - Src:             'lib.c:90,5'
          Dst:             i_panic
        - Src:             'lib.c:95,7'
          Dst:             array_append_space_i
    - functionName:    lib_atexit
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 75
      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:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib.c:74,2'
          Dst:             lib_atexit_priority
    - functionName:    i_getopt_reset
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 70
      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: 49
      functionLinenumberEnd: 59
      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:    3
      BranchProfiles:
        - Branch String:   'lib.c:50,6'
          Branch Sides:
            - BranchSide:      'lib.c:51,3'
              BranchSideFuncs: []
            - BranchSide:      'lib.c:52,11'
              BranchSideFuncs:
                - __errno_location
                - i_error
        - Branch String:   'lib.c:52,11'
          Branch Sides:
            - BranchSide:      'lib.c:53,3'
              BranchSideFuncs: []
            - BranchSide:      'lib.c:56,4'
              BranchSideFuncs:
                - i_error
      Callsites:
        - Src:             'lib.c:50,6'
          Dst:             unlink
        - Src:             'lib.c:52,11'
          Dst:             __errno_location
        - Src:             'lib.c:55,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: 37
      functionLinenumberEnd: 44
      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:    5
      BranchProfiles:
        - Branch String:   'lib.c:38,6'
          Branch Sides:
            - BranchSide:      'lib.c:40,4'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'lib.c:43,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib.c:38,6'
          Dst:             unlink
        - Src:             'lib.c:39,3'
          Dst:             i_error
    - functionName:    lib_exit
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 144
      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:143,2'
          Dst:             lib_set_clean_exit
        - Src:             'lib.c:144,2'
          Dst:             exit
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - 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: 1496
      functionLinenumberEnd: 1518
      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:1501,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1503,9'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1506,2'
              BranchSideFuncs:
                - array_create_i.7586
                - t_strdup_printf
                - p_strdup
                - array_append_i.7587
        - Branch String:   'lib-event.c:1507,25'
          Branch Sides:
            - BranchSide:      'lib-event.c:1507,28'
              BranchSideFuncs:
                - t_strdup_printf
                - p_strdup
                - array_append_i.7587
            - BranchSide:      'lib-event.c:1507,2'
              BranchSideFuncs:
                - t_strdup_printf
                - p_strdup
                - array_append_i.7587
        - Branch String:   'lib-event.c:1507,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1508,30'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.7587
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1511,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'lib-event.c:1511,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1513,9'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1516,12'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1501,6'
          Dst:             str_to_uint
        - Src:             'lib-event.c:1502,14'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1506,2'
          Dst:             array_create_i
        - Src:             'lib-event.c:1508,21'
          Dst:             p_strdup
        - Src:             'lib-event.c:1509,3'
          Dst:             array_append_i
        - Src:             'lib-event.c:1512,14'
          Dst:             t_strdup_printf
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7589
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7589
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      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: 1523
      functionLinenumberEnd: 1583
      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:1527,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1528,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1531,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:1532,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1533,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1536,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:1536,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1538,3'
              BranchSideFuncs:
                - str_to_intmax
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1547,7'
              BranchSideFuncs:
                - p_strdup
                - null_strcmp
            - BranchSide:      'lib-event.c:1556,3'
              BranchSideFuncs:
                - event_import_tv
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1566,3'
              BranchSideFuncs:
                - net_addr2ip
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1575,29'
              BranchSideFuncs:
                - event_import_strlist
            - BranchSide:      'lib-event.c:1579,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'lib-event.c:1539,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1542,6'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1545,3'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1547,55'
          Branch Sides:
            - BranchSide:      'lib-event.c:1548,19'
              BranchSideFuncs:
                - null_strcmp
                - p_strdup
            - BranchSide:      'lib-event.c:1552,3'
              BranchSideFuncs:
                - p_strdup
        - Branch String:   'lib-event.c:1547,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1550,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1552,3'
              BranchSideFuncs:
                - p_strdup
        - Branch String:   'lib-event.c:1557,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1560,10'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1563,7'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1567,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1570,6'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1573,3'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1575,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1576,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1577,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1531,30'
          Dst:             event_get_field
        - Src:             'lib-event.c:1539,7'
          Dst:             str_to_intmax
        - Src:             'lib-event.c:1540,15'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1548,7'
          Dst:             null_strcmp
        - Src:             'lib-event.c:1553,22'
          Dst:             p_strdup
        - Src:             'lib-event.c:1557,8'
          Dst:             event_import_tv
        - Src:             'lib-event.c:1559,15'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1567,7'
          Dst:             net_addr2ip
        - Src:             'lib-event.c:1568,15'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1575,8'
          Dst:             event_import_strlist
        - Src:             'lib-event.c:1579,3'
          Dst:             i_unreached
    - functionName:    event_get_field
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1048
      functionLinenumberEnd: 1061
      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:1052,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1053,8'
              BranchSideFuncs:
                - array_is_created_i.7600
                - array_create_i.7586
                - array_append_space_i.7601
                - p_strdup
                - event_set_changed
            - BranchSide:      'lib-event.c:1057,13'
              BranchSideFuncs:
                - event_set_changed
        - Branch String:   'lib-event.c:1053,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1054,4'
              BranchSideFuncs:
                - array_append_space_i.7601
                - p_strdup
                - event_set_changed
            - BranchSide:      'lib-event.c:1055,11'
              BranchSideFuncs:
                - array_append_space_i.7601
                - p_strdup
                - event_set_changed
      Callsites:
        - Src:             'lib-event.c:1051,10'
          Dst:             event_find_field_nonrecursive
        - Src:             'lib-event.c:1053,8'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1054,4'
          Dst:             array_create_i
        - Src:             'lib-event.c:1055,11'
          Dst:             array_append_space_i
        - Src:             'lib-event.c:1056,16'
          Dst:             p_strdup
        - Src:             'lib-event.c:1060,2'
          Dst:             event_set_changed
    - functionName:    event_import_tv
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1473
      functionLinenumberEnd: 1491
      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:1476,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1477,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1481,6'
              BranchSideFuncs:
                - str_to_uint
        - Branch String:   'lib-event.c:1481,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1482,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1485,18'
              BranchSideFuncs:
                - str_to_uint
        - Branch String:   'lib-event.c:1485,41'
          Branch Sides:
            - BranchSide:      'lib-event.c:1485,44'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1486,4'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1485,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1486,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1489,18'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1476,6'
          Dst:             str_to_time
        - Src:             'lib-event.c:1485,6'
          Dst:             str_to_uint
    - functionName:    event_find_field_nonrecursive
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 950
      functionLinenumberEnd: 961
      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:953,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:954,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - strcmp
            - BranchSide:      'lib-event.c:956,2'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - strcmp
        - Branch String:   'lib-event.c:956,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:957,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'lib-event.c:960,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:957,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:958,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:959,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'lib-event.c:953,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:956,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'lib-event.c:957,7'
          Dst:             strcmp
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 336
      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:334,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    event_set_changed
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 125
      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:122,28'
          Branch Sides:
            - BranchSide:      'lib-event.c:123,6'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:124,3'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:122,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:122,6'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:124,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_category_add_to_array
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 824
      functionLinenumberEnd: 830
      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:827,2'
          Dst:             array_append_i
        - Src:             'lib-event.c:828,2'
          Dst:             array_append_i
    - functionName:    event_category_find_internal
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 805
      functionLinenumberEnd: 814
      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:808,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:808,2'
              BranchSideFuncs:
                - i_memcpy.7602
                - strcmp
            - BranchSide:      'lib-event.c:808,2'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7602
        - Branch String:   'lib-event.c:808,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:809,14'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:813,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:809,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:810,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:811,2'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7602
      Callsites:
        - Src:             'lib-event.c:808,2'
          Dst:             i_memcpy
        - Src:             'lib-event.c:809,7'
          Dst:             strcmp
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:    9
      BranchProfiles:
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    event_copy_parent_defaults
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - parent
      BBCount:         1
      ICount:          76
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 158
      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:157,2'
          Dst:             buffer_free
    - functionName:    lib_event_deinit
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1892
      functionLinenumberEnd: 1913
      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:1893,34'
          Branch Sides:
            - BranchSide:      'lib-event.c:1895,2'
              BranchSideFuncs:
                - event_unset_global_debug_log_filter
                - event_unset_global_debug_send_filter
                - event_unset_global_core_log_filter
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - p_free_internal.7610
                - p_free_internal.7610
                - i_memcpy.7602
                - i_warning
            - BranchSide:      'lib-event.c:1895,2'
              BranchSideFuncs:
                - event_unset_global_debug_log_filter
                - event_unset_global_debug_send_filter
                - event_unset_global_core_log_filter
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - p_free_internal.7610
                - p_free_internal.7610
                - i_memcpy.7602
                - i_warning
        - Branch String:   'lib-event.c:1898,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1900,6'
              BranchSideFuncs:
                - i_warning
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - p_free_internal.7610
                - p_free_internal.7610
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:1904,2'
              BranchSideFuncs:
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - p_free_internal.7610
                - p_free_internal.7610
                - i_memcpy.7602
        - Branch String:   'lib-event.c:1904,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1904,2'
              BranchSideFuncs:
                - i_memcpy.7602
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - p_free_internal.7610
                - p_free_internal.7610
            - BranchSide:      'lib-event.c:1904,2'
              BranchSideFuncs:
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - p_free_internal.7610
                - p_free_internal.7610
                - i_memcpy.7602
        - Branch String:   'lib-event.c:1904,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1905,3'
              BranchSideFuncs:
                - p_free_internal.7610
                - p_free_internal.7610
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:1908,2'
              BranchSideFuncs:
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
                - array_free_i.7606
      Callsites:
        - Src:             'lib-event.c:1895,2'
          Dst:             event_unset_global_debug_log_filter
        - Src:             'lib-event.c:1896,2'
          Dst:             event_unset_global_debug_send_filter
        - Src:             'lib-event.c:1897,2'
          Dst:             event_unset_global_core_log_filter
        - Src:             'lib-event.c:1899,3'
          Dst:             i_warning
        - Src:             'lib-event.c:1904,2'
          Dst:             i_memcpy
        - Src:             'lib-event.c:1905,3'
          Dst:             p_free_internal
        - Src:             'lib-event.c:1906,3'
          Dst:             p_free_internal
        - Src:             'lib-event.c:1908,2'
          Dst:             array_free_i
        - Src:             'lib-event.c:1909,2'
          Dst:             array_free_i
        - Src:             'lib-event.c:1910,2'
          Dst:             array_free_i
        - Src:             'lib-event.c:1911,2'
          Dst:             array_free_i
        - Src:             'lib-event.c:1912,2'
          Dst:             array_free_i
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    lib_event_init
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1884
      functionLinenumberEnd: 1889
      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:1885,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1885,2'
              BranchSideFuncs:
                - array_create_i.7586
                - array_create_i.7586
                - array_create_i.7586
                - array_create_i.7586
            - BranchSide:      'lib-event.c:1885,2'
              BranchSideFuncs:
                - array_create_i.7586
                - array_create_i.7586
                - array_create_i.7586
                - array_create_i.7586
      Callsites:
        - Src:             'lib-event.c:1885,2'
          Dst:             array_create_i
        - Src:             'lib-event.c:1886,2'
          Dst:             array_create_i
        - Src:             'lib-event.c:1887,2'
          Dst:             array_create_i
        - Src:             'lib-event.c:1888,2'
          Dst:             array_create_i
    - functionName:    event_enable_user_cpu_usecs
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1879
      functionLinenumberEnd: 1881
      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:1880,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: 1851
      functionLinenumberEnd: 1854
      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:1852,16'
          Branch Sides:
            - BranchSide:      'lib-event.c:1852,16'
              BranchSideFuncs:
                - last_passthrough_event
            - BranchSide:      'lib-event.c:1852,24'
              BranchSideFuncs:
                - last_passthrough_event
      Callsites:
        - Src:             'lib-event.c:1852,24'
          Dst:             last_passthrough_event
    - functionName:    event_passthrough_clear_field
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1845
      functionLinenumberEnd: 1847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1846,20'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1846,2'
          Dst:             event_field_clear
    - functionName:    event_field_clear
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1214
      functionLinenumberEnd: 1216
      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:1215,2'
          Dst:             event_add_str
    - functionName:    event_passthrough_set_append_log_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1730
      functionLinenumberEnd: 1732
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1731,30'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1731,2'
          Dst:             event_set_append_log_prefix
    - functionName:    event_passthrough_replace_log_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1737
      functionLinenumberEnd: 1739
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1738,27'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1738,2'
          Dst:             event_replace_log_prefix
    - functionName:    event_passthrough_set_name
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1744
      functionLinenumberEnd: 1746
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1745,17'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1745,2'
          Dst:             event_set_name
    - functionName:    event_passthrough_set_source
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1752
      functionLinenumberEnd: 1755
      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:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1753,19'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1753,2'
          Dst:             event_set_source
    - functionName:    event_passthrough_set_always_log_source
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1760
      functionLinenumberEnd: 1762
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:1761,30'
          Branch Sides:
            - BranchSide:      'lib-event.c:1761,30'
              BranchSideFuncs:
                - last_passthrough_event
                - event_set_always_log_source
            - BranchSide:      'lib-event.c:1761,30'
              BranchSideFuncs:
                - last_passthrough_event
                - event_set_always_log_source
      Callsites:
        - Src:             'lib-event.c:1761,30'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1761,2'
          Dst:             event_set_always_log_source
    - functionName:    event_passthrough_add_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1767
      functionLinenumberEnd: 1769
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - categories
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1768,23'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1768,2'
          Dst:             event_add_categories
    - functionName:    event_passthrough_add_category
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1774
      functionLinenumberEnd: 1776
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - category
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1775,21'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1775,2'
          Dst:             event_add_category
    - functionName:    event_passthrough_add_fields
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1781
      functionLinenumberEnd: 1783
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fields
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1782,19'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1782,2'
          Dst:             event_add_fields
    - functionName:    event_passthrough_add_str
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1788
      functionLinenumberEnd: 1790
      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:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1789,16'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1789,2'
          Dst:             event_add_str
    - functionName:    event_passthrough_add_int
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1810
      functionLinenumberEnd: 1812
      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:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1811,16'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1811,2'
          Dst:             event_add_int
    - functionName:    event_passthrough_add_int_nonzero
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1817
      functionLinenumberEnd: 1819
      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:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1818,24'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1818,2'
          Dst:             event_add_int_nonzero
    - functionName:    event_passthrough_add_timeval
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1824
      functionLinenumberEnd: 1826
      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:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1825,20'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1825,2'
          Dst:             event_add_timeval
    - functionName:    event_passthrough_add_ip
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1831
      functionLinenumberEnd: 1833
      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:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1832,15'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1832,2'
          Dst:             event_add_ip
    - functionName:    event_passthrough_inc_int
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1838
      functionLinenumberEnd: 1840
      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:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1839,16'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1839,2'
          Dst:             event_inc_int
    - functionName:    event_passthrough_strlist_append
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1795
      functionLinenumberEnd: 1797
      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:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1796,23'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1796,2'
          Dst:             event_strlist_append
    - functionName:    event_passthrough_strlist_replace
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1803
      functionLinenumberEnd: 1805
      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:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1804,24'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1804,2'
          Dst:             event_strlist_replace
    - functionName:    event_strlist_replace
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1108
      functionLinenumberEnd: 1114
      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:1112,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1113,24'
              BranchSideFuncs:
                - event_strlist_append
            - BranchSide:      'lib-event.c:1114,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1109,30'
          Dst:             event_get_field
        - Src:             'lib-event.c:1113,3'
          Dst:             event_strlist_append
    - functionName:    event_strlist_append
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1086
      functionLinenumberEnd: 1103
      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:    5
      BranchProfiles:
        - Branch String:   'lib-event.c:1089,58'
          Branch Sides:
            - BranchSide:      'lib-event.c:1090,7'
              BranchSideFuncs:
                - array_create_i.7586
                - p_strdup
                - array_lsearch_i
                - array_append_i.7587
            - BranchSide:      'lib-event.c:1091,3'
              BranchSideFuncs:
                - array_create_i.7586
                - p_strdup
                - array_lsearch_i
                - array_append_i.7587
        - Branch String:   'lib-event.c:1089,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1091,3'
              BranchSideFuncs:
                - p_strdup
                - array_lsearch_i
                - array_append_i.7587
            - BranchSide:      'lib-event.c:1096,6'
              BranchSideFuncs:
                - p_strdup
                - array_lsearch_i
                - array_append_i.7587
        - Branch String:   'lib-event.c:1096,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1097,10'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1099,29'
              BranchSideFuncs:
                - p_strdup
                - array_lsearch_i
                - array_append_i.7587
        - Branch String:   'lib-event.c:1100,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1101,3'
              BranchSideFuncs:
                - array_append_i.7587
            - BranchSide:      'lib-event.c:1102,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1087,30'
          Dst:             event_get_field
        - Src:             'lib-event.c:1090,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1092,3'
          Dst:             array_create_i
        - Src:             'lib-event.c:1099,20'
          Dst:             p_strdup
        - Src:             'lib-event.c:1100,6'
          Dst:             array_lsearch_i
        - Src:             'lib-event.c:1100,6'
          Dst:             i_strcmp_p
        - Src:             'lib-event.c:1101,3'
          Dst:             array_append_i
    - functionName:    event_inc_int
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1150
      functionLinenumberEnd: 1160
      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:1154,20'
          Branch Sides:
            - BranchSide:      'lib-event.c:1154,23'
              BranchSideFuncs:
                - event_add_int
            - BranchSide:      'lib-event.c:1155,24'
              BranchSideFuncs:
                - event_add_int
        - Branch String:   'lib-event.c:1154,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1155,24'
              BranchSideFuncs:
                - event_add_int
            - BranchSide:      'lib-event.c:1157,25'
              BranchSideFuncs:
                - event_set_changed
      Callsites:
        - Src:             'lib-event.c:1153,10'
          Dst:             event_find_field_nonrecursive
        - Src:             'lib-event.c:1155,10'
          Dst:             event_add_int
        - Src:             'lib-event.c:1158,2'
          Dst:             event_set_changed
    - functionName:    event_add_int
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1131
      functionLinenumberEnd: 1137
      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:1134,10'
          Dst:             event_get_field
    - functionName:    event_add_ip
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1176
      functionLinenumberEnd: 1191
      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:1179,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1182,34'
              BranchSideFuncs:
                - event_find_field_recursive
                - event_field_clear
            - BranchSide:      'lib-event.c:1187,26'
              BranchSideFuncs:
                - event_get_field
        - Branch String:   'lib-event.c:1182,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1183,22'
              BranchSideFuncs:
                - event_field_clear
            - BranchSide:      'lib-event.c:1184,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1182,7'
          Dst:             event_find_field_recursive
        - Src:             'lib-event.c:1183,4'
          Dst:             event_field_clear
        - Src:             'lib-event.c:1187,10'
          Dst:             event_get_field
    - functionName:    event_find_field_recursive
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 965
      functionLinenumberEnd: 982
      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:969,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:970,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:971,11'
              BranchSideFuncs:
                - event_get_global
                - event_find_field_nonrecursive
                - event_find_field_nonrecursive
        - Branch String:   'lib-event.c:972,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:969,46'
              BranchSideFuncs:
                - event_find_field_nonrecursive
                - event_get_global
                - event_find_field_nonrecursive
            - BranchSide:      'lib-event.c:975,10'
              BranchSideFuncs:
                - event_get_global
                - event_find_field_nonrecursive
        - Branch String:   'lib-event.c:976,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:977,46'
              BranchSideFuncs:
                - event_find_field_nonrecursive
            - BranchSide:      'lib-event.c:981,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:977,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:978,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:979,11'
              BranchSideFuncs:
                - event_find_field_nonrecursive
      Callsites:
        - Src:             'lib-event.c:969,16'
          Dst:             event_find_field_nonrecursive
        - Src:             'lib-event.c:975,10'
          Dst:             event_get_global
        - Src:             'lib-event.c:977,16'
          Dst:             event_find_field_nonrecursive
    - functionName:    event_get_global
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 545
      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: 1165
      functionLinenumberEnd: 1171
      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:1168,10'
          Dst:             event_get_field
    - functionName:    event_add_int_nonzero
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1146
      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:1143,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1144,24'
              BranchSideFuncs:
                - event_add_int
            - BranchSide:      'lib-event.c:1145,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1144,10'
          Dst:             event_add_int
    - functionName:    event_add_str
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1066
      functionLinenumberEnd: 1082
      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:    39
      BranchProfiles:
        - Branch String:   'lib-event.c:1069,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1073,34'
              BranchSideFuncs:
                - event_find_field_recursive
                - event_get_field
                - p_strdup
            - BranchSide:      'lib-event.c:1078,26'
              BranchSideFuncs:
                - event_get_field
                - p_strdup
        - Branch String:   'lib-event.c:1073,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1074,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1075,9'
              BranchSideFuncs:
                - event_get_field
                - p_strdup
      Callsites:
        - Src:             'lib-event.c:1073,7'
          Dst:             event_find_field_recursive
        - Src:             'lib-event.c:1078,10'
          Dst:             event_get_field
        - Src:             'lib-event.c:1080,21'
          Dst:             p_strdup
    - functionName:    event_add_fields
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1196
      functionLinenumberEnd: 1210
      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:1197,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1198,7'
              BranchSideFuncs:
                - event_add_int
                - event_add_ip
                - event_add_timeval
                - event_add_str
            - BranchSide:      'lib-event.c:1210,9'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1198,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1199,18'
              BranchSideFuncs:
                - event_add_str
                - event_add_int
                - event_add_ip
                - event_add_timeval
            - BranchSide:      'lib-event.c:1200,12'
              BranchSideFuncs:
                - event_add_int
                - event_add_str
                - event_add_ip
                - event_add_timeval
        - Branch String:   'lib-event.c:1200,12'
          Branch Sides:
            - BranchSide:      'lib-event.c:1201,22'
              BranchSideFuncs:
                - event_add_timeval
                - event_add_int
                - event_add_ip
                - event_add_str
            - BranchSide:      'lib-event.c:1203,14'
              BranchSideFuncs:
                - event_add_int
                - event_add_timeval
                - event_add_str
                - event_add_ip
        - Branch String:   'lib-event.c:1203,14'
          Branch Sides:
            - BranchSide:      'lib-event.c:1204,17'
              BranchSideFuncs:
                - event_add_ip
                - event_add_int
                - event_add_timeval
                - event_add_str
            - BranchSide:      'lib-event.c:1206,18'
              BranchSideFuncs:
                - event_add_int
                - event_add_ip
                - event_add_timeval
                - event_add_str
      Callsites:
        - Src:             'lib-event.c:1199,4'
          Dst:             event_add_str
        - Src:             'lib-event.c:1201,4'
          Dst:             event_add_timeval
        - Src:             'lib-event.c:1204,4'
          Dst:             event_add_ip
        - Src:             'lib-event.c:1206,4'
          Dst:             event_add_int
    - functionName:    event_add_category
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 943
      functionLinenumberEnd: 945
      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:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:945,9'
          Dst:             event_add_categories
    - functionName:    event_add_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 925
      functionLinenumberEnd: 938
      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:928,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:929,3'
              BranchSideFuncs:
                - event_set_changed
                - event_recalculate_debug_level.7625
                - event_category_register
                - event_find_category
                - array_append_i.7587
            - BranchSide:      'lib-event.c:931,20'
              BranchSideFuncs:
                - event_set_changed
                - event_recalculate_debug_level.7625
                - event_category_register
                - event_find_category
                - array_append_i.7587
        - Branch String:   'lib-event.c:931,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:932,44'
              BranchSideFuncs:
                - event_category_register
                - event_find_category
                - array_append_i.7587
                - event_set_changed
                - event_recalculate_debug_level.7625
            - BranchSide:      'lib-event.c:936,20'
              BranchSideFuncs:
                - event_set_changed
                - event_recalculate_debug_level.7625
        - Branch String:   'lib-event.c:933,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:934,4'
              BranchSideFuncs:
                - event_set_changed
                - event_recalculate_debug_level.7625
                - event_category_register
                - event_find_category
                - array_append_i.7587
            - BranchSide:      'lib-event.c:935,2'
              BranchSideFuncs:
                - event_set_changed
                - event_recalculate_debug_level.7625
                - event_category_register
                - event_find_category
                - array_append_i.7587
      Callsites:
        - Src:             'lib-event.c:928,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:929,3'
          Dst:             array_create_i
        - Src:             'lib-event.c:932,20'
          Dst:             event_category_register
        - Src:             'lib-event.c:933,8'
          Dst:             event_find_category
        - Src:             'lib-event.c:934,4'
          Dst:             array_append_i
        - Src:             'lib-event.c:936,2'
          Dst:             event_set_changed
        - Src:             'lib-event.c:937,2'
          Dst:             event_recalculate_debug_level
    - functionName:    event_category_register
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 834
      functionLinenumberEnd: 903
      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:839,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:840,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:843,6'
              BranchSideFuncs:
                - event_category_find_internal
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
                - i_panic
                - malloc_multiply_check.7627
                - p_malloc.7628
                - i_strdup
                - event_category_add_to_array
                - event_category_register
        - Branch String:   'lib-event.c:843,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:844,34'
              BranchSideFuncs:
                - event_category_register
                - event_category_find_internal
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
                - i_panic
                - malloc_multiply_check.7627
                - p_malloc.7628
                - i_strdup
                - event_category_add_to_array
            - BranchSide:      'lib-event.c:855,42'
              BranchSideFuncs:
                - event_category_find_internal
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
                - i_panic
                - malloc_multiply_check.7627
                - p_malloc.7628
                - i_strdup
                - event_category_add_to_array
        - Branch String:   'lib-event.c:856,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:858,14'
              BranchSideFuncs:
                - malloc_multiply_check.7627
                - p_malloc.7628
                - i_strdup
                - event_category_add_to_array
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:872,8'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
                - i_panic
        - Branch String:   'lib-event.c:859,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:860,23'
              BranchSideFuncs:
                - i_strdup
                - event_category_add_to_array
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:861,29'
              BranchSideFuncs:
                - i_strdup
                - event_category_add_to_array
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
        - Branch String:   'lib-event.c:872,34'
          Branch Sides:
            - BranchSide:      'lib-event.c:873,8'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
                - i_panic
            - BranchSide:      'lib-event.c:886,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
        - Branch String:   'lib-event.c:872,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:875,36'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:886,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
        - Branch String:   'lib-event.c:893,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:895,11'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:898,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
        - Branch String:   'lib-event.c:898,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:898,2'
              BranchSideFuncs:
                - i_memcpy.7602
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'lib-event.c:898,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7602
                - i_panic
        - Branch String:   'lib-event.c:898,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:898,58'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7602
                - i_panic
            - BranchSide:      'lib-event.c:902,10'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:900,4'
          Branch Sides:
            - BranchSide:      'lib-event.c:900,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:900,4'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
      Callsites:
        - Src:             'lib-event.c:844,10'
          Dst:             event_category_register
        - Src:             'lib-event.c:855,13'
          Dst:             event_category_find_internal
        - Src:             'lib-event.c:858,14'
          Dst:             malloc_multiply_check
        - Src:             'lib-event.c:858,14'
          Dst:             p_malloc
        - Src:             'lib-event.c:861,20'
          Dst:             i_strdup
        - Src:             'lib-event.c:867,3'
          Dst:             event_category_add_to_array
        - Src:             'lib-event.c:878,4'
          Dst:             i_panic
        - Src:             'lib-event.c:898,2'
          Dst:             i_memcpy
        - Src:             'lib-event.c:898,58'
          Dst:             t_push
        - Src:             'lib-event.c:900,4'
          Dst:             t_pop
        - Src:             'lib-event.c:900,4'
          Dst:             i_panic
    - functionName:    event_find_category
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 920
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - category
      BBCount:         17
      ICount:          113
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - 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:915,2'
              BranchSideFuncs:
                - i_memcpy.7602
        - Branch String:   'lib-event.c:915,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:915,2'
              BranchSideFuncs:
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:915,2'
              BranchSideFuncs:
                - i_memcpy.7602
        - Branch String:   'lib-event.c:915,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:916,7'
              BranchSideFuncs:
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:919,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:916,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:917,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:918,2'
              BranchSideFuncs:
                - i_memcpy.7602
      Callsites:
        - Src:             'lib-event.c:913,2'
          Dst:             i_panic
        - Src:             'lib-event.c:915,2'
          Dst:             i_memcpy
    - functionName:    event_recalculate_debug_level
      functionSourceFile: '/src/dovecot/src/lib/./lib-event-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 113
      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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    event_set_always_log_source
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 743
      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: 731
      functionLinenumberEnd: 737
      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:732,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:732,6'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'lib-event.c:733,28'
              BranchSideFuncs:
                - p_strdup
        - Branch String:   'lib-event.c:733,28'
          Branch Sides:
            - BranchSide:      'lib-event.c:733,44'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:734,13'
              BranchSideFuncs:
                - p_strdup
      Callsites:
        - Src:             'lib-event.c:732,6'
          Dst:             strcmp
        - Src:             'lib-event.c:734,4'
          Dst:             p_strdup
    - functionName:    event_set_name
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 725
      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:723,2'
          Dst:             p_free_internal
        - Src:             'lib-event.c:724,24'
          Dst:             i_strdup
    - functionName:    event_replace_log_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 665
      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:665,9'
          Dst:             event_set_log_prefix
    - functionName:    event_set_log_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 654
      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:641,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:643,32'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'lib-event.c:647,7'
              BranchSideFuncs:
                - i_strdup
                - p_free_internal.7610
        - Branch String:   'lib-event.c:647,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:648,4'
              BranchSideFuncs:
                - p_free_internal.7610
                - i_strdup
            - BranchSide:      'lib-event.c:650,4'
              BranchSideFuncs:
                - i_strdup
      Callsites:
        - Src:             'lib-event.c:643,23'
          Dst:             p_strdup
        - Src:             'lib-event.c:648,4'
          Dst:             p_free_internal
        - Src:             'lib-event.c:651,23'
          Dst:             i_strdup
    - functionName:    event_set_append_log_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 660
      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:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:660,9'
          Dst:             event_set_log_prefix
    - functionName:    event_category_unregister_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1713
      functionLinenumberEnd: 1725
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         9
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - array_delete_i
        - i_unreached
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:1716,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1717,8'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7642
            - BranchSide:      'lib-event.c:1725,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'lib-event.c:1717,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1718,17'
              BranchSideFuncs:
                - array_delete_i.7642
            - BranchSide:      'lib-event.c:1724,2'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7642
      Callsites:
        - Src:             'lib-event.c:1721,4'
          Dst:             array_delete_i
        - Src:             'lib-event.c:1725,2'
          Dst:             i_unreached
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 244
      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:242,2'
          Dst:             buffer_delete
    - functionName:    event_category_register_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1708
      functionLinenumberEnd: 1710
      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:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1709,2'
          Dst:             array_append_i
    - functionName:    event_unregister_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1693
      functionLinenumberEnd: 1704
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         9
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - array_delete_i
        - i_unreached
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:1696,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1697,8'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7642
            - BranchSide:      'lib-event.c:1704,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'lib-event.c:1697,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1698,17'
              BranchSideFuncs:
                - array_delete_i.7642
            - BranchSide:      'lib-event.c:1703,2'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7642
      Callsites:
        - Src:             'lib-event.c:1700,4'
          Dst:             array_delete_i
        - Src:             'lib-event.c:1704,2'
          Dst:             i_unreached
    - functionName:    event_register_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1688
      functionLinenumberEnd: 1690
      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:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1689,2'
          Dst:             array_append_i
    - functionName:    event_import_arg
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1589
      functionLinenumberEnd: 1654
      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:1595,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1597,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1601,35'
              BranchSideFuncs:
                - event_category_find_registered
                - array_is_created_i.7600
                - array_create_i.7586
                - event_find_category
                - array_append_i.7587
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1614,24'
              BranchSideFuncs:
                - event_import_tv
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1623,3'
              BranchSideFuncs:
                - p_free_internal.7610
                - i_strdup
            - BranchSide:      'lib-event.c:1629,7'
              BranchSideFuncs:
                - str_to_uint
                - event_set_source
            - BranchSide:      'lib-event.c:1646,7'
              BranchSideFuncs:
                - event_import_field
            - BranchSide:      'lib-event.c:1646,7'
              BranchSideFuncs:
                - event_import_field
            - BranchSide:      'lib-event.c:1646,7'
              BranchSideFuncs:
                - event_import_field
            - BranchSide:      'lib-event.c:1646,7'
              BranchSideFuncs:
                - event_import_field
            - BranchSide:      'lib-event.c:1646,7'
              BranchSideFuncs:
                - event_import_field
            - BranchSide:      'lib-event.c:1652,11'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1602,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1604,36'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1607,8'
              BranchSideFuncs:
                - array_is_created_i.7600
                - array_create_i.7586
                - event_find_category
                - array_append_i.7587
        - Branch String:   'lib-event.c:1607,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1608,4'
              BranchSideFuncs:
                - event_find_category
                - array_append_i.7587
            - BranchSide:      'lib-event.c:1609,28'
              BranchSideFuncs:
                - event_find_category
                - array_append_i.7587
        - Branch String:   'lib-event.c:1609,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1610,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1611,3'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1614,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1617,33'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1620,7'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1629,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1630,5'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1633,19'
              BranchSideFuncs:
                - str_to_uint
                - event_set_source
        - Branch String:   'lib-event.c:1633,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1634,5'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1637,20'
              BranchSideFuncs:
                - event_set_source
        - Branch String:   'lib-event.c:1647,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1648,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1649,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1601,4'
          Dst:             event_category_find_registered
        - Src:             'lib-event.c:1603,15'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1607,8'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1608,4'
          Dst:             array_create_i
        - Src:             'lib-event.c:1609,8'
          Dst:             event_find_category
        - Src:             'lib-event.c:1610,4'
          Dst:             array_append_i
        - Src:             'lib-event.c:1614,8'
          Dst:             event_import_tv
        - Src:             'lib-event.c:1616,15'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1623,3'
          Dst:             p_free_internal
        - Src:             'lib-event.c:1624,25'
          Dst:             i_strdup
        - Src:             'lib-event.c:1633,7'
          Dst:             str_to_uint
        - Src:             'lib-event.c:1637,3'
          Dst:             event_set_source
        - Src:             'lib-event.c:1647,8'
          Dst:             event_import_field
    - functionName:    event_category_find_registered
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 793
      functionLinenumberEnd: 801
      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:796,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:796,2'
              BranchSideFuncs:
                - i_memcpy.7602
                - strcmp
            - BranchSide:      'lib-event.c:796,2'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7602
        - Branch String:   'lib-event.c:796,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:797,14'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:800,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:797,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:798,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:799,2'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7602
      Callsites:
        - Src:             'lib-event.c:796,2'
          Dst:             i_memcpy
        - Src:             'lib-event.c:797,7'
          Dst:             strcmp
    - functionName:    array_clear_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 190
      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:189,2'
          Dst:             buffer_set_used_size
    - functionName:    event_import_unescaped
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1658
      functionLinenumberEnd: 1685
      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:1664,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1665,3'
              BranchSideFuncs:
                - array_clear_i.7655
                - event_import_tv
                - t_strdup_printf
                - event_import_arg
            - BranchSide:      'lib-event.c:1668,6'
              BranchSideFuncs:
                - event_import_tv
                - t_strdup_printf
                - event_import_arg
        - Branch String:   'lib-event.c:1668,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1669,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1672,23'
              BranchSideFuncs:
                - event_import_tv
                - t_strdup_printf
                - event_import_arg
        - Branch String:   'lib-event.c:1672,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1673,56'
              BranchSideFuncs:
                - event_import_arg
            - BranchSide:      'lib-event.c:1676,7'
              BranchSideFuncs:
                - event_import_arg
        - Branch String:   'lib-event.c:1679,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1680,25'
              BranchSideFuncs:
                - event_import_arg
            - BranchSide:      'lib-event.c:1684,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1680,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1681,4'
              BranchSideFuncs:
                - event_import_arg
            - BranchSide:      'lib-event.c:1682,7'
              BranchSideFuncs:
                - event_import_arg
      Callsites:
        - Src:             'lib-event.c:1664,6'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1665,3'
          Dst:             array_clear_i
        - Src:             'lib-event.c:1672,7'
          Dst:             event_import_tv
        - Src:             'lib-event.c:1673,14'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1680,8'
          Dst:             event_import_arg
    - functionName:    event_export_field_value
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1377
      functionLinenumberEnd: 1415
      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:1378,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1378,2'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1380,3'
              BranchSideFuncs:
                - str_append_c.7658
                - str_append_tabescaped
                - str_append_c.7658
                - str_append_tabescaped
            - BranchSide:      'lib-event.c:1386,3'
              BranchSideFuncs:
                - str_append_c.7658
                - str_append_tabescaped
                - str_printfa
            - BranchSide:      'lib-event.c:1391,3'
              BranchSideFuncs:
                - str_append_c.7658
                - str_append_tabescaped
                - str_printfa
            - BranchSide:      'lib-event.c:1398,3'
              BranchSideFuncs:
                - str_append_c.7658
                - str_append_tabescaped
                - net_ip2addr
                - str_printfa
            - BranchSide:      'lib-event.c:1405,4'
              BranchSideFuncs:
                - array_get_i.7662
                - str_append_c.7658
                - str_append_tabescaped
                - str_printfa
                - str_append_c.7658
                - str_append_tabescaped
        - Branch String:   'lib-event.c:1409,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:1410,4'
              BranchSideFuncs:
                - str_append_c.7658
                - str_append_tabescaped
            - BranchSide:      'lib-event.c:1414,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1380,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1381,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:1386,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1387,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1388,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1391,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1392,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1393,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1398,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1399,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1400,29'
          Dst:             net_ip2addr
        - Src:             'lib-event.c:1400,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1405,4'
          Dst:             array_get_i
        - Src:             'lib-event.c:1406,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1407,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1408,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1410,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:1411,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: 250
      functionLinenumberEnd: 252
      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:251,13'
          Dst:             array_count_i
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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: 1368
      functionLinenumberEnd: 1373
      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:1371,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1371,6'
              BranchSideFuncs:
                - event_unref
            - BranchSide:      'lib-event.c:1372,3'
              BranchSideFuncs:
                - event_unref
      Callsites:
        - Src:             'lib-event.c:1370,2'
          Dst:             p_free_internal
        - Src:             'lib-event.c:1372,3'
          Dst:             event_unref
    - functionName:    event_unref
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 499
      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:    25
      BranchProfiles:
        - Branch String:   'lib-event.c:479,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:480,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:481,3'
              BranchSideFuncs:
                - event_call_callbacks_noargs
                - p_free_internal.7610
                - event_unref
                - pool_unref.7671
                - p_free_internal.7610
                - i_panic
                - i_panic
        - Branch String:   'lib-event.c:483,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:483,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:484,8'
              BranchSideFuncs:
                - event_call_callbacks_noargs
                - p_free_internal.7610
                - event_unref
                - pool_unref.7671
                - p_free_internal.7610
                - i_panic
        - Branch String:   'lib-event.c:484,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:485,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:486,2'
              BranchSideFuncs:
                - event_call_callbacks_noargs
                - p_free_internal.7610
                - event_unref
                - pool_unref.7671
                - p_free_internal.7610
                - i_panic
        - Branch String:   'lib-event.c:486,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:486,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:488,30'
              BranchSideFuncs:
                - event_call_callbacks_noargs
                - p_free_internal.7610
                - event_unref
                - pool_unref.7671
                - p_free_internal.7610
        - Branch String:   'lib-event.c:490,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:491,26'
              BranchSideFuncs:
                - p_free_internal.7610
                - event_unref
                - pool_unref.7671
                - p_free_internal.7610
            - BranchSide:      'lib-event.c:492,6'
              BranchSideFuncs:
                - p_free_internal.7610
                - event_unref
                - pool_unref.7671
                - p_free_internal.7610
        - Branch String:   'lib-event.c:492,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:493,3'
              BranchSideFuncs:
                - p_free_internal.7610
                - p_free_internal.7610
                - event_unref
                - pool_unref.7671
            - BranchSide:      'lib-event.c:494,2'
              BranchSideFuncs:
                - p_free_internal.7610
                - event_unref
                - pool_unref.7671
        - Branch String:   'lib-event.c:497,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:497,2'
              BranchSideFuncs:
                - pool_unref.7671
            - BranchSide:      'lib-event.c:497,2'
              BranchSideFuncs:
                - pool_unref.7671
        - Branch String:   'lib-event.c:497,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:497,2'
              BranchSideFuncs:
                - pool_unref.7671
            - BranchSide:      'lib-event.c:498,14'
              BranchSideFuncs:
                - pool_unref.7671
      Callsites:
        - Src:             'lib-event.c:483,2'
          Dst:             i_panic
        - Src:             'lib-event.c:486,2'
          Dst:             i_panic
        - Src:             'lib-event.c:488,2'
          Dst:             event_call_callbacks_noargs
        - Src:             'lib-event.c:493,3'
          Dst:             p_free_internal
        - Src:             'lib-event.c:494,2'
          Dst:             p_free_internal
        - Src:             'lib-event.c:495,2'
          Dst:             event_unref
        - Src:             'lib-event.c:498,2'
          Dst:             pool_unref
    - functionName:    event_call_callbacks_noargs
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 162
      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:160,8'
          Dst:             event_call_callbacks
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      './mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_call_callbacks
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 148
      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:          136
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - i_memcpy
        - i_panic
        - t_pop
        - t_push
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:133,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:134,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:136,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
        - Branch String:   'lib-event.c:136,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:136,2'
              BranchSideFuncs:
                - i_memcpy.7602
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'lib-event.c:136,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7602
                - i_panic
        - Branch String:   'lib-event.c:136,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:139,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7602
                - i_panic
            - BranchSide:      'lib-event.c:147,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:141,5'
          Branch Sides:
            - BranchSide:      'lib-event.c:141,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:141,5'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
        - Branch String:   'lib-event.c:142,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:144,4'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:146,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7602
      Callsites:
        - Src:             'lib-event.c:136,2'
          Dst:             i_memcpy
        - Src:             'lib-event.c:139,3'
          Dst:             t_push
        - Src:             'lib-event.c:141,5'
          Dst:             t_pop
        - Src:             'lib-event.c:141,5'
          Dst:             i_panic
    - functionName:    event_vsend
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1346
      functionLinenumberEnd: 1365
      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:1350,42'
          Branch Sides:
            - BranchSide:      'lib-event.c:1351,6'
              BranchSideFuncs:
                - get_self_rusage
                - timeval_diff_usecs
                - event_add_int
                - event_call_callbacks
                - event_send_abort
                - i_log_typev
            - BranchSide:      'lib-event.c:1353,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:1350,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1353,3'
              BranchSideFuncs:
                - get_self_rusage
                - timeval_diff_usecs
                - event_add_int
                - event_call_callbacks
                - event_send_abort
                - i_log_typev
            - BranchSide:      'lib-event.c:1358,27'
              BranchSideFuncs:
                - event_call_callbacks
                - event_send_abort
                - i_log_typev
        - Branch String:   'lib-event.c:1356,42'
          Branch Sides:
            - BranchSide:      'lib-event.c:1356,54'
              BranchSideFuncs:
                - event_add_int
                - event_call_callbacks
                - event_send_abort
                - i_log_typev
            - BranchSide:      'lib-event.c:1356,3'
              BranchSideFuncs:
                - event_add_int
                - event_call_callbacks
                - event_send_abort
                - i_log_typev
        - Branch String:   'lib-event.c:1358,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1358,6'
              BranchSideFuncs:
                - event_send_abort
                - i_log_typev
            - BranchSide:      'lib-event.c:1360,7'
              BranchSideFuncs:
                - event_send_abort
                - i_log_typev
        - Branch String:   'lib-event.c:1360,35'
          Branch Sides:
            - BranchSide:      'lib-event.c:1361,7'
              BranchSideFuncs:
                - i_log_typev
                - event_send_abort
            - BranchSide:      'lib-event.c:1362,16'
              BranchSideFuncs:
                - i_log_typev
                - event_send_abort
        - Branch String:   'lib-event.c:1360,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1362,16'
              BranchSideFuncs:
                - i_log_typev
                - event_send_abort
            - BranchSide:      'lib-event.c:1363,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'lib-event.c:1347,2'
          Dst:             i_gettimeofday
        - Src:             'lib-event.c:1353,3'
          Dst:             get_self_rusage
        - Src:             'lib-event.c:1354,21'
          Dst:             timeval_diff_usecs
        - Src:             'lib-event.c:1356,3'
          Dst:             event_add_int
        - Src:             'lib-event.c:1358,6'
          Dst:             event_call_callbacks
        - Src:             'lib-event.c:1362,4'
          Dst:             i_log_typev
        - Src:             'lib-event.c:1364,2'
          Dst:             event_send_abort
    - functionName:    event_send
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1336
      functionLinenumberEnd: 1342
      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:1340,2'
          Dst:             event_vsend
    - functionName:    event_categories_iterate_deinit
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1332
      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:1325,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1326,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1327,3'
              BranchSideFuncs:
                - hash_table_iterate_deinit
                - hash_table_destroy
                - p_free_internal.7610
      Callsites:
        - Src:             'lib-event.c:1329,2'
          Dst:             hash_table_iterate_deinit
        - Src:             'lib-event.c:1330,2'
          Dst:             hash_table_destroy
        - Src:             'lib-event.c:1331,2'
          Dst:             p_free_internal
    - functionName:    event_categories_iterate
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1311
      functionLinenumberEnd: 1319
      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:1314,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1315,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1318,9'
              BranchSideFuncs:
                - hash_table_iterate
      Callsites:
        - Src:             'lib-event.c:1318,9'
          Dst:             hash_table_iterate
    - functionName:    insert_category
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1275
      functionLinenumberEnd: 1282
      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:1280,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1280,6'
              BranchSideFuncs:
                - insert_category
            - BranchSide:      'lib-event.c:1281,25'
              BranchSideFuncs:
                - insert_category
      Callsites:
        - Src:             'lib-event.c:1277,2'
          Dst:             hash_table_update
        - Src:             'lib-event.c:1281,3'
          Dst:             insert_category
    - functionName:    event_categories_iterate_init
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1286
      functionLinenumberEnd: 1307
      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:1292,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1293,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1295,9'
              BranchSideFuncs:
                - malloc_multiply_check.7627
                - p_malloc.7628
                - hash_table_create_direct
                - hash_table_iterate_init
                - insert_category
        - Branch String:   'lib-event.c:1301,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1302,19'
              BranchSideFuncs:
                - insert_category
                - hash_table_iterate_init
            - BranchSide:      'lib-event.c:1304,15'
              BranchSideFuncs:
                - hash_table_iterate_init
      Callsites:
        - Src:             'lib-event.c:1291,9'
          Dst:             event_get_categories
        - Src:             'lib-event.c:1295,9'
          Dst:             malloc_multiply_check
        - Src:             'lib-event.c:1295,9'
          Dst:             p_malloc
        - Src:             'lib-event.c:1297,2'
          Dst:             hash_table_create_direct
        - Src:             'lib-event.c:1302,3'
          Dst:             insert_category
        - Src:             'lib-event.c:1304,15'
          Dst:             hash_table_iterate_init
    - functionName:    event_get_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1264
      functionLinenumberEnd: 1270
      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:1265,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1266,4'
              BranchSideFuncs:
                - array_get_i.7662
            - BranchSide:      'lib-event.c:1269,9'
              BranchSideFuncs:
                - array_get_i.7662
      Callsites:
        - Src:             'lib-event.c:1265,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1269,9'
          Dst:             array_get_i
    - functionName:    event_get_fields
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1254
      functionLinenumberEnd: 1260
      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:1255,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1256,4'
              BranchSideFuncs:
                - array_get_i.7662
            - BranchSide:      'lib-event.c:1259,9'
              BranchSideFuncs:
                - array_get_i.7662
      Callsites:
        - Src:             'lib-event.c:1255,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1259,9'
          Dst:             array_get_i
    - functionName:    event_get_last_duration
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1241
      functionLinenumberEnd: 1250
      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:1242,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1243,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1246,39'
              BranchSideFuncs:
                - timeval_diff_usecs
                - i_panic
        - Branch String:   'lib-event.c:1248,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1248,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:1249,22'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1246,19'
          Dst:             timeval_diff_usecs
        - Src:             'lib-event.c:1248,2'
          Dst:             i_panic
    - functionName:    event_get_last_send_time
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1234
      functionLinenumberEnd: 1236
      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: 1229
      functionLinenumberEnd: 1231
      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: 1224
      functionLinenumberEnd: 1225
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_get_parent
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1219
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_strlist_copy_recursive
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1120
      functionLinenumberEnd: 1126
      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:1123,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1123,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:1123,2'
              BranchSideFuncs:
                - event_get_recursive_strlist
      Callsites:
        - Src:             'lib-event.c:1121,2'
          Dst:             event_strlist_append
        - Src:             'lib-event.c:1122,30'
          Dst:             event_get_field
        - Src:             'lib-event.c:1123,2'
          Dst:             i_panic
        - Src:             'lib-event.c:1124,2'
          Dst:             event_get_recursive_strlist
    - functionName:    event_get_recursive_strlist
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 987
      functionLinenumberEnd: 1009
      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:991,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:992,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:994,40'
              BranchSideFuncs:
                - event_find_field_nonrecursive
                - event_get_recursive_strlist
                - array_lsearch_i
                - array_append_i.7587
                - p_strdup
                - i_memcpy.7602
        - Branch String:   'lib-event.c:995,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:996,7'
              BranchSideFuncs:
                - event_get_recursive_strlist
                - array_lsearch_i
                - array_append_i.7587
                - p_strdup
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:1008,30'
              BranchSideFuncs:
                - event_get_recursive_strlist
        - Branch String:   'lib-event.c:996,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:998,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1000,3'
              BranchSideFuncs:
                - event_get_recursive_strlist
                - array_lsearch_i
                - array_append_i.7587
                - p_strdup
                - i_memcpy.7602
        - Branch String:   'lib-event.c:1000,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:1000,3'
              BranchSideFuncs:
                - i_memcpy.7602
                - event_get_recursive_strlist
                - array_lsearch_i
                - array_append_i.7587
                - p_strdup
            - BranchSide:      'lib-event.c:1000,3'
              BranchSideFuncs:
                - event_get_recursive_strlist
                - array_lsearch_i
                - i_memcpy.7602
                - array_append_i.7587
                - p_strdup
        - Branch String:   'lib-event.c:1000,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:1001,8'
              BranchSideFuncs:
                - array_lsearch_i
                - event_get_recursive_strlist
                - i_memcpy.7602
                - array_append_i.7587
                - p_strdup
            - BranchSide:      'lib-event.c:1007,2'
              BranchSideFuncs:
                - event_get_recursive_strlist
        - Branch String:   'lib-event.c:1001,8'
          Branch Sides:
            - BranchSide:      'lib-event.c:1002,9'
              BranchSideFuncs:
                - array_append_i.7587
                - event_get_recursive_strlist
                - array_lsearch_i
                - i_memcpy.7602
                - p_strdup
            - BranchSide:      'lib-event.c:1006,3'
              BranchSideFuncs:
                - event_get_recursive_strlist
                - array_lsearch_i
                - array_append_i.7587
                - p_strdup
                - i_memcpy.7602
        - Branch String:   'lib-event.c:1002,9'
          Branch Sides:
            - BranchSide:      'lib-event.c:1003,21'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.7587
                - event_get_recursive_strlist
                - array_lsearch_i
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:1004,5'
              BranchSideFuncs:
                - array_append_i.7587
                - event_get_recursive_strlist
                - array_lsearch_i
                - p_strdup
                - i_memcpy.7602
      Callsites:
        - Src:             'lib-event.c:994,10'
          Dst:             event_find_field_nonrecursive
        - Src:             'lib-event.c:1000,3'
          Dst:             i_memcpy
        - Src:             'lib-event.c:1001,8'
          Dst:             array_lsearch_i
        - Src:             'lib-event.c:1001,8'
          Dst:             i_strcmp_p
        - Src:             'lib-event.c:1003,12'
          Dst:             p_strdup
        - Src:             'lib-event.c:1004,5'
          Dst:             array_append_i
        - Src:             'lib-event.c:1008,2'
          Dst:             event_get_recursive_strlist
    - functionName:    event_find_field_recursive_str
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1013
      functionLinenumberEnd: 1044
      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:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:1017,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1018,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1020,10'
              BranchSideFuncs:
                - pool_datastack_create
                - array_create_i.7586
                - 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:1020,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1022,10'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1024,33'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1027,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1030,23'
              BranchSideFuncs:
                - net_ip2addr
            - BranchSide:      'lib-event.c:1032,28'
              BranchSideFuncs:
                - pool_datastack_create
                - array_create_i.7586
                - event_get_recursive_strlist
                - event_get_global
                - event_get_recursive_strlist
                - p_array_const_string_join
            - BranchSide:      'lib-event.c:1043,2'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'lib-event.c:1016,10'
          Dst:             event_find_field_recursive
        - Src:             'lib-event.c:1024,10'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1026,10'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1030,10'
          Dst:             net_ip2addr
        - Src:             'lib-event.c:1033,3'
          Dst:             pool_datastack_create
        - Src:             'lib-event.c:1033,3'
          Dst:             array_create_i
        - Src:             'lib-event.c:1037,3'
          Dst:             event_get_recursive_strlist
        - Src:             'lib-event.c:1038,31'
          Dst:             event_get_global
        - Src:             'lib-event.c:1038,3'
          Dst:             event_get_recursive_strlist
        - Src:             'lib-event.c:1040,10'
          Dst:             p_array_const_string_join
        - Src:             'lib-event.c:1043,2'
          Dst:             i_unreached
    - functionName:    event_get_registered_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 818
      functionLinenumberEnd: 819
      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:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:819,9'
          Dst:             array_get_i
    - functionName:    event_get_ptr
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 790
      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:    7
      BranchProfiles:
        - Branch String:   'lib-event.c:783,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:784,3'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'lib-event.c:785,2'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'lib-event.c:785,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:786,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'lib-event.c:789,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:786,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:787,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:788,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'lib-event.c:783,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:786,7'
          Dst:             strcmp
    - functionName:    event_set_ptr
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 759
      functionLinenumberEnd: 777
      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:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:762,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:763,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - array_append_space_i.7601
                - p_strdup
                - strcmp
            - BranchSide:      'lib-event.c:766,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - array_append_space_i.7601
                - p_strdup
                - strcmp
        - Branch String:   'lib-event.c:766,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:0,0'
              BranchSideFuncs:
                - strcmp
                - array_append_space_i.7601
                - p_strdup
            - BranchSide:      'lib-event.c:767,15'
              BranchSideFuncs:
                - strcmp
                - array_append_space_i.7601
                - p_strdup
        - Branch String:   'lib-event.c:767,8'
          Branch Sides:
            - BranchSide:      'lib-event.c:768,16'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:771,3'
              BranchSideFuncs:
                - array_append_space_i.7601
                - p_strdup
                - strcmp
      Callsites:
        - Src:             'lib-event.c:762,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:763,3'
          Dst:             array_create_i
        - Src:             'lib-event.c:766,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'lib-event.c:767,8'
          Dst:             strcmp
        - Src:             'lib-event.c:773,6'
          Dst:             array_append_space_i
        - Src:             'lib-event.c:774,11'
          Dst:             p_strdup
    - functionName:    event_get_min_log_level
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 755
      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: 747
      functionLinenumberEnd: 750
      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:749,2'
          Dst:             event_recalculate_debug_level
    - functionName:    event_unset_log_message_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 718
      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:713,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:713,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:714,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'lib-event.c:714,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:714,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:714,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:713,2'
          Dst:             i_panic
        - Src:             'lib-event.c:714,2'
          Dst:             i_panic
    - functionName:    event_disable_callbacks
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 704
      functionLinenumberEnd: 706
      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: 697
      functionLinenumberEnd: 700
      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: 681
      functionLinenumberEnd: 689
      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:682,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:683,3'
              BranchSideFuncs:
                - p_free_internal.7610
            - BranchSide:      'lib-event.c:685,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:683,3'
          Dst:             p_free_internal
    - functionName:    event_drop_parent_log_prefixes
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 670
      functionLinenumberEnd: 672
      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:    2
      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: 583
      functionLinenumberEnd: 593
      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:586,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:587,8'
              BranchSideFuncs:
                - __ctype_b_loc
            - BranchSide:      'lib-event.c:592,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:587,17'
          Branch Sides:
            - BranchSide:      'lib-event.c:587,21'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:588,4'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:587,30'
          Branch Sides:
            - BranchSide:      'lib-event.c:587,34'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:588,4'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:587,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:588,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:589,7'
              BranchSideFuncs:
                - __ctype_b_loc
        - Branch String:   'lib-event.c:589,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:590,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:591,2'
              BranchSideFuncs:
                - __ctype_b_loc
      Callsites:
        - Src:             'lib-event.c:589,7'
          Dst:             __ctype_b_loc
    - functionName:    event_reason_code_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 597
      functionLinenumberEnd: 633
      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:600,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:600,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:601,2'
              BranchSideFuncs:
                - event_reason_code_module_validate
                - i_panic
                - event_reason_code_module_validate
                - i_panic
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7697
                - str_append_c.7658
                - str_append.7697
                - str_c
                - i_panic
                - str_append_c.7658
                - tolower
                - str_append_c.7658
                - i_panic
        - Branch String:   'lib-event.c:601,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:601,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:603,41'
              BranchSideFuncs:
                - event_reason_code_module_validate
                - i_panic
                - event_reason_code_module_validate
                - i_panic
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7697
                - str_append_c.7658
                - str_append.7697
                - str_c
                - i_panic
                - str_append_c.7658
                - tolower
                - str_append_c.7658
        - Branch String:   'lib-event.c:603,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:605,27'
              BranchSideFuncs:
                - event_reason_code_module_validate
                - i_panic
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7697
                - str_append_c.7658
                - str_append.7697
                - str_c
                - i_panic
                - str_append_c.7658
                - tolower
                - str_append_c.7658
            - BranchSide:      'lib-event.c:607,41'
              BranchSideFuncs:
                - event_reason_code_module_validate
                - i_panic
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7697
                - str_append_c.7658
                - str_append.7697
                - str_c
                - i_panic
                - str_append_c.7658
                - tolower
                - str_append_c.7658
        - Branch String:   'lib-event.c:607,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:609,32'
              BranchSideFuncs:
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7697
                - str_append_c.7658
                - str_append.7697
                - str_c
                - i_panic
                - str_append_c.7658
                - tolower
                - str_append_c.7658
            - BranchSide:      'lib-event.c:612,35'
              BranchSideFuncs:
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7697
                - str_append_c.7658
                - str_append.7697
                - str_c
                - i_panic
                - str_append_c.7658
                - tolower
                - str_append_c.7658
        - Branch String:   'lib-event.c:618,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:619,12'
              BranchSideFuncs:
                - i_panic
                - str_append_c.7658
                - str_c
                - tolower
                - str_append_c.7658
            - BranchSide:      'lib-event.c:633,15'
              BranchSideFuncs:
                - str_c
        - Branch String:   'lib-event.c:619,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:622,4'
              BranchSideFuncs:
                - str_append_c.7658
                - str_c
                - i_panic
                - tolower
                - str_append_c.7658
            - BranchSide:      'lib-event.c:622,4'
              BranchSideFuncs:
                - str_append_c.7658
                - str_c
                - i_panic
                - tolower
                - str_append_c.7658
            - BranchSide:      'lib-event.c:627,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:629,4'
              BranchSideFuncs:
                - tolower
                - str_append_c.7658
                - str_c
                - i_panic
                - str_append_c.7658
      Callsites:
        - Src:             'lib-event.c:600,2'
          Dst:             i_panic
        - Src:             'lib-event.c:601,2'
          Dst:             i_panic
        - Src:             'lib-event.c:603,7'
          Dst:             event_reason_code_module_validate
        - Src:             'lib-event.c:604,3'
          Dst:             i_panic
        - Src:             'lib-event.c:607,7'
          Dst:             event_reason_code_module_validate
        - Src:             'lib-event.c:608,3'
          Dst:             i_panic
        - Src:             'lib-event.c:612,28'
          Dst:             strlen
        - Src:             'lib-event.c:613,7'
          Dst:             strlen
        - Src:             'lib-event.c:613,29'
          Dst:             strlen
        - Src:             'lib-event.c:612,18'
          Dst:             t_str_new
        - Src:             'lib-event.c:614,2'
          Dst:             str_append
        - Src:             'lib-event.c:615,2'
          Dst:             str_append_c
        - Src:             'lib-event.c:616,2'
          Dst:             str_append
        - Src:             'lib-event.c:622,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:625,4'
          Dst:             i_panic
        - Src:             'lib-event.c:629,4'
          Dst:             tolower
        - Src:             'lib-event.c:629,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:633,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: 578
      functionLinenumberEnd: 579
      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:579,9'
          Dst:             event_reason_code_prefix
    - functionName:    event_reason_end
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 564
      functionLinenumberEnd: 575
      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:567,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:568,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:569,19'
              BranchSideFuncs:
                - event_pop_global
                - event_unref
                - p_free_internal.7610
                - i_panic
        - Branch String:   'lib-event.c:572,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:572,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:573,15'
              BranchSideFuncs:
                - event_unref
                - p_free_internal.7610
      Callsites:
        - Src:             'lib-event.c:569,2'
          Dst:             event_pop_global
        - Src:             'lib-event.c:572,2'
          Dst:             i_panic
        - Src:             'lib-event.c:573,2'
          Dst:             event_unref
        - Src:             'lib-event.c:574,2'
          Dst:             p_free_internal
    - functionName:    event_pop_global
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 540
      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:521,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:521,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:522,2'
              BranchSideFuncs:
                - io_loop_get_active_global_root
                - array_is_created_i.7600
                - array_count_i.7664
                - array_get_i.7662
                - array_delete_i.7642
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'lib-event.c:522,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:522,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:526,2'
              BranchSideFuncs:
                - io_loop_get_active_global_root
                - array_is_created_i.7600
                - array_count_i.7664
                - array_get_i.7662
                - array_delete_i.7642
                - i_panic
                - i_panic
        - Branch String:   'lib-event.c:526,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:526,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:528,7'
              BranchSideFuncs:
                - array_is_created_i.7600
                - array_count_i.7664
                - array_get_i.7662
                - array_delete_i.7642
                - i_panic
        - Branch String:   'lib-event.c:528,45'
          Branch Sides:
            - BranchSide:      'lib-event.c:529,6'
              BranchSideFuncs:
                - array_count_i.7664
                - array_get_i.7662
                - array_delete_i.7642
                - i_panic
            - BranchSide:      'lib-event.c:530,24'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:528,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:530,24'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:534,4'
              BranchSideFuncs:
                - array_get_i.7662
                - array_delete_i.7642
                - i_panic
        - Branch String:   'lib-event.c:536,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:536,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:537,26'
              BranchSideFuncs:
                - array_delete_i.7642
      Callsites:
        - Src:             'lib-event.c:521,2'
          Dst:             i_panic
        - Src:             'lib-event.c:522,2'
          Dst:             i_panic
        - Src:             'lib-event.c:526,2'
          Dst:             io_loop_get_active_global_root
        - Src:             'lib-event.c:526,2'
          Dst:             i_panic
        - Src:             'lib-event.c:528,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:529,6'
          Dst:             array_count_i
        - Src:             'lib-event.c:534,4'
          Dst:             array_get_i
        - Src:             'lib-event.c:536,3'
          Dst:             i_panic
        - Src:             'lib-event.c:538,3'
          Dst:             array_delete_i
    - functionName:    event_reason_begin
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 552
      functionLinenumberEnd: 560
      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_get_global
        - event_push_global
        - event_strlist_append
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:555,11'
          Dst:             malloc_multiply_check
        - Src:             'lib-event.c:555,11'
          Dst:             p_malloc
        - Src:             'lib-event.c:556,31'
          Dst:             event_get_global
        - Src:             'lib-event.c:556,18'
          Dst:             event_create
        - Src:             'lib-event.c:558,2'
          Dst:             event_strlist_append
        - Src:             'lib-event.c:559,2'
          Dst:             event_push_global
    - functionName:    event_create
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 438
      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:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:436,10'
          Dst:             event_create_internal
        - Src:             'lib-event.c:437,8'
          Dst:             event_call_callbacks_noargs
    - functionName:    event_push_global
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 516
      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:508,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:508,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:510,6'
              BranchSideFuncs:
                - array_is_created_i.7600
                - array_create_i.7586
                - array_append_i.7587
        - Branch String:   'lib-event.c:510,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:510,6'
              BranchSideFuncs:
                - array_is_created_i.7600
                - array_create_i.7586
                - array_append_i.7587
            - BranchSide:      'lib-event.c:511,8'
              BranchSideFuncs:
                - array_is_created_i.7600
                - array_create_i.7586
                - array_append_i.7587
        - Branch String:   'lib-event.c:511,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:512,4'
              BranchSideFuncs:
                - array_append_i.7587
            - BranchSide:      'lib-event.c:513,3'
              BranchSideFuncs:
                - array_append_i.7587
      Callsites:
        - Src:             'lib-event.c:508,2'
          Dst:             i_panic
        - Src:             'lib-event.c:511,8'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:512,4'
          Dst:             array_create_i
        - Src:             'lib-event.c:513,3'
          Dst:             array_append_i
    - functionName:    event_create_internal
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 427
      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:421,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:422,19'
              BranchSideFuncs:
                - event_ref
                - event_copy_parent_defaults
            - BranchSide:      'lib-event.c:426,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:426,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:426,2'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:426,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:409,16'
          Dst:             pool_alloconly_create
        - Src:             'lib-event.c:411,10'
          Dst:             malloc_multiply_check
        - Src:             'lib-event.c:411,10'
          Dst:             p_malloc
        - Src:             'lib-event.c:417,2'
          Dst:             i_gettimeofday
        - Src:             'lib-event.c:418,27'
          Dst:             p_strdup
        - Src:             'lib-event.c:423,3'
          Dst:             event_ref
        - Src:             'lib-event.c:424,3'
          Dst:             event_copy_parent_defaults
    - functionName:    event_ref
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 472
      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:    7
      BranchProfiles:
        - Branch String:   'lib-event.c:469,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:469,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:469,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:469,2'
          Dst:             i_panic
    - functionName:    events_get_head
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_create_passthrough
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 464
      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:446,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:447,7'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:462,28'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:447,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:449,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:452,17'
              BranchSideFuncs:
                - event_create
                - i_memcpy.7602
      Callsites:
        - Src:             'lib-event.c:449,4'
          Dst:             i_panic
        - Src:             'lib-event.c:453,4'
          Dst:             event_create
        - Src:             'lib-event.c:459,3'
          Dst:             i_memcpy
    - functionName:    replace_parent_ref
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 299
      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:290,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:291,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:293,6'
              BranchSideFuncs:
                - event_unref
                - event_ref
        - Branch String:   'lib-event.c:293,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:294,13'
              BranchSideFuncs:
                - event_ref
                - event_unref
            - BranchSide:      'lib-event.c:296,15'
              BranchSideFuncs:
                - event_unref
      Callsites:
        - Src:             'lib-event.c:294,3'
          Dst:             event_ref
        - Src:             'lib-event.c:296,2'
          Dst:             event_unref
    - functionName:    event_minimize
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 402
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         39
      ICount:          209
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - array_is_created_i
        - event_dup
        - event_flatten_recurse
        - event_ref
        - replace_parent_ref
        - timeval_cmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:358,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:359,20'
              BranchSideFuncs:
                - event_ref
            - BranchSide:      'lib-event.c:362,16'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
                - timeval_cmp
        - Branch String:   'lib-event.c:363,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:364,7'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
                - timeval_cmp
            - BranchSide:      'lib-event.c:374,13'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
        - Branch String:   'lib-event.c:364,34'
          Branch Sides:
            - BranchSide:      'lib-event.c:365,20'
              BranchSideFuncs:
                - timeval_cmp
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
            - BranchSide:      'lib-event.c:369,19'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
        - Branch String:   'lib-event.c:364,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:367,4'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
                - timeval_cmp
            - BranchSide:      'lib-event.c:369,19'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
        - Branch String:   'lib-event.c:375,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:376,7'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
            - BranchSide:      'lib-event.c:388,7'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
        - Branch String:   'lib-event.c:376,34'
          Branch Sides:
            - BranchSide:      'lib-event.c:377,9'
              BranchSideFuncs:
                - array_is_created_i.7600
                - array_is_created_i.7600
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
            - BranchSide:      'lib-event.c:383,16'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
        - Branch String:   'lib-event.c:377,40'
          Branch Sides:
            - BranchSide:      'lib-event.c:378,8'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
            - BranchSide:      'lib-event.c:379,9'
              BranchSideFuncs:
                - array_is_created_i.7600
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
        - Branch String:   'lib-event.c:378,38'
          Branch Sides:
            - BranchSide:      'lib-event.c:379,9'
              BranchSideFuncs:
                - array_is_created_i.7600
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
            - BranchSide:      'lib-event.c:383,16'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
        - Branch String:   'lib-event.c:379,44'
          Branch Sides:
            - BranchSide:      'lib-event.c:380,8'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
            - BranchSide:      'lib-event.c:381,4'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
        - Branch String:   'lib-event.c:376,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:381,4'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7600
                - array_is_created_i.7600
            - BranchSide:      'lib-event.c:383,16'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
        - Branch String:   'lib-event.c:388,39'
          Branch Sides:
            - BranchSide:      'lib-event.c:389,7'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
            - BranchSide:      'lib-event.c:392,24'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
        - Branch String:   'lib-event.c:388,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:390,20'
              BranchSideFuncs:
                - event_ref
            - BranchSide:      'lib-event.c:392,24'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
      Callsites:
        - Src:             'lib-event.c:359,10'
          Dst:             event_ref
        - Src:             'lib-event.c:365,7'
          Dst:             timeval_cmp
        - Src:             'lib-event.c:377,9'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:379,9'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:390,10'
          Dst:             event_ref
        - Src:             'lib-event.c:392,14'
          Dst:             event_dup
        - Src:             'lib-event.c:395,2'
          Dst:             event_flatten_recurse
        - Src:             'lib-event.c:396,2'
          Dst:             replace_parent_ref
        - Src:             'lib-event.c:399,2'
          Dst:             replace_parent_ref
    - functionName:    event_dup
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 243
      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:240,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:241,48'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:242,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:235,3'
          Dst:             event_create_internal
        - Src:             'lib-event.c:237,18'
          Dst:             t_str_new
        - Src:             'lib-event.c:239,2'
          Dst:             event_export
        - Src:             'lib-event.c:240,25'
          Dst:             str_c
        - Src:             'lib-event.c:240,7'
          Dst:             event_import
        - Src:             'lib-event.c:241,42'
          Dst:             str_c
        - Src:             'lib-event.c:241,3'
          Dst:             i_panic
    - functionName:    event_flatten_recurse
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 260
      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:255,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:255,6'
              BranchSideFuncs:
                - event_flatten_recurse
                - event_copy_categories
                - event_copy_fields
            - BranchSide:      'lib-event.c:256,25'
              BranchSideFuncs:
                - event_flatten_recurse
                - event_copy_categories
                - event_copy_fields
      Callsites:
        - Src:             'lib-event.c:256,3'
          Dst:             event_flatten_recurse
        - Src:             'lib-event.c:258,2'
          Dst:             event_copy_categories
        - Src:             'lib-event.c:259,2'
          Dst:             event_copy_fields
    - functionName:    event_copy_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 171
      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:169,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:170,22'
              BranchSideFuncs:
                - event_add_category
            - BranchSide:      'lib-event.c:171,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:168,3'
          Dst:             event_get_categories
        - Src:             'lib-event.c:170,3'
          Dst:             event_add_category
    - functionName:    event_copy_fields
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 204
      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:179,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:180,3'
              BranchSideFuncs:
                - array_get_i.7662
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
            - BranchSide:      'lib-event.c:181,2'
              BranchSideFuncs:
                - array_get_i.7662
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
        - Branch String:   'lib-event.c:181,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:181,2'
              BranchSideFuncs:
                - array_get_i.7662
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
            - BranchSide:      'lib-event.c:182,11'
              BranchSideFuncs:
                - array_get_i.7662
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
        - Branch String:   'lib-event.c:182,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:184,18'
              BranchSideFuncs:
                - event_add_str
                - array_get_i.7662
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
            - BranchSide:      'lib-event.c:187,18'
              BranchSideFuncs:
                - event_add_int
                - array_get_i.7662
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_str
            - BranchSide:      'lib-event.c:190,22'
              BranchSideFuncs:
                - event_add_timeval
                - array_get_i.7662
                - event_strlist_append
                - event_add_ip
                - event_add_int
                - event_add_str
            - BranchSide:      'lib-event.c:193,17'
              BranchSideFuncs:
                - event_add_ip
                - array_get_i.7662
                - event_strlist_append
                - event_add_timeval
                - event_add_int
                - event_add_str
            - BranchSide:      'lib-event.c:196,13'
              BranchSideFuncs:
                - array_get_i.7662
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
                - event_strlist_append
            - BranchSide:      'lib-event.c:201,4'
              BranchSideFuncs:
                - array_get_i.7662
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
        - Branch String:   'lib-event.c:197,4'
          Branch Sides:
            - BranchSide:      'lib-event.c:198,26'
              BranchSideFuncs:
                - event_strlist_append
                - array_get_i.7662
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
            - BranchSide:      'lib-event.c:199,4'
              BranchSideFuncs:
                - array_get_i.7662
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
      Callsites:
        - Src:             'lib-event.c:179,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:184,4'
          Dst:             event_add_str
        - Src:             'lib-event.c:187,4'
          Dst:             event_add_int
        - Src:             'lib-event.c:190,4'
          Dst:             event_add_timeval
        - Src:             'lib-event.c:193,4'
          Dst:             event_add_ip
        - Src:             'lib-event.c:196,13'
          Dst:             array_get_i
        - Src:             'lib-event.c:198,5'
          Dst:             event_strlist_append
    - functionName:    event_export
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1418
      functionLinenumberEnd: 1463
      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:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:1425,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1426,3'
              BranchSideFuncs:
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - str_printfa
                - array_is_created_i.7600
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - i_memcpy.7602
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - str_printfa
                - str_append_c.7658
                - str_append_c.7658
            - BranchSide:      'lib-event.c:1431,6'
              BranchSideFuncs:
                - array_is_created_i.7600
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - i_memcpy.7602
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - str_printfa
                - str_append_c.7658
                - str_append_c.7658
        - Branch String:   'lib-event.c:1431,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1432,3'
              BranchSideFuncs:
                - str_append_c.7658
                - str_append_c.7658
                - array_is_created_i.7600
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - i_memcpy.7602
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - str_printfa
            - BranchSide:      'lib-event.c:1435,6'
              BranchSideFuncs:
                - array_is_created_i.7600
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - i_memcpy.7602
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - str_printfa
        - Branch String:   'lib-event.c:1435,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1436,15'
              BranchSideFuncs:
                - str_printfa
                - array_is_created_i.7600
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - i_memcpy.7602
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
            - BranchSide:      'lib-event.c:1441,6'
              BranchSideFuncs:
                - array_is_created_i.7600
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - i_memcpy.7602
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
        - Branch String:   'lib-event.c:1441,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1442,3'
              BranchSideFuncs:
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - array_is_created_i.7600
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:1447,6'
              BranchSideFuncs:
                - array_is_created_i.7600
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - i_memcpy.7602
        - Branch String:   'lib-event.c:1447,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1449,3'
              BranchSideFuncs:
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:1456,6'
              BranchSideFuncs:
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
        - Branch String:   'lib-event.c:1449,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:1449,3'
              BranchSideFuncs:
                - i_memcpy.7602
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
            - BranchSide:      'lib-event.c:1449,3'
              BranchSideFuncs:
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - i_memcpy.7602
        - Branch String:   'lib-event.c:1449,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:1450,4'
              BranchSideFuncs:
                - str_append_c.7658
                - str_append_c.7658
                - str_append_tabescaped
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
                - i_memcpy.7602
            - BranchSide:      'lib-event.c:1454,2'
              BranchSideFuncs:
                - array_is_created_i.7600
                - str_append_c.7658
                - event_export_field_value
        - Branch String:   'lib-event.c:1456,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1456,6'
              BranchSideFuncs:
                - str_append_c.7658
                - event_export_field_value
            - BranchSide:      'lib-event.c:1458,3'
              BranchSideFuncs:
                - str_append_c.7658
                - event_export_field_value
        - Branch String:   'lib-event.c:1458,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:1459,4'
              BranchSideFuncs:
                - str_append_c.7658
                - event_export_field_value
            - BranchSide:      'lib-event.c:1462,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1420,2'
          Dst:             str_printfa
        - Src:             'lib-event.c:1426,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1427,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1428,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1429,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1432,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1433,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1436,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1442,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1443,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1444,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1447,6'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1449,3'
          Dst:             i_memcpy
        - Src:             'lib-event.c:1450,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:1451,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:1452,4'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1456,6'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1459,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:1460,4'
          Dst:             event_export_field_value
    - functionName:    event_import
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1466
      functionLinenumberEnd: 1468
      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:1467,39'
          Dst:             t_strsplit_tabescaped
        - Src:             'lib-event.c:1467,9'
          Dst:             event_import_unescaped
    - functionName:    event_flatten
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 286
      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:268,26'
          Branch Sides:
            - BranchSide:      'lib-event.c:268,29'
              BranchSideFuncs:
                - event_create_internal
                - event_set_name
                - event_flatten_recurse
                - event_flatten_recurse
                - event_ref
            - BranchSide:      'lib-event.c:273,36'
              BranchSideFuncs:
                - event_create_internal
                - event_set_name
                - event_flatten_recurse
                - event_flatten_recurse
        - Branch String:   'lib-event.c:268,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:269,20'
              BranchSideFuncs:
                - event_ref
            - BranchSide:      'lib-event.c:273,36'
              BranchSideFuncs:
                - event_create_internal
                - event_set_name
                - event_flatten_recurse
                - event_flatten_recurse
        - Branch String:   'lib-event.c:277,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:278,25'
              BranchSideFuncs:
                - event_flatten_recurse
                - event_flatten_recurse
            - BranchSide:      'lib-event.c:279,24'
              BranchSideFuncs:
                - event_flatten_recurse
      Callsites:
        - Src:             'lib-event.c:269,10'
          Dst:             event_ref
        - Src:             'lib-event.c:273,8'
          Dst:             event_create_internal
        - Src:             'lib-event.c:275,8'
          Dst:             event_set_name
        - Src:             'lib-event.c:278,3'
          Dst:             event_flatten_recurse
        - Src:             'lib-event.c:279,2'
          Dst:             event_flatten_recurse
    - functionName:    event_has_all_fields
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 230
      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:223,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:224,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_find_field_nonrecursive
            - BranchSide:      'lib-event.c:225,2'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_find_field_nonrecursive
        - Branch String:   'lib-event.c:225,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:226,37'
              BranchSideFuncs:
                - event_find_field_nonrecursive
            - BranchSide:      'lib-event.c:229,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:226,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:227,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:228,2'
              BranchSideFuncs:
                - event_find_field_nonrecursive
      Callsites:
        - Src:             'lib-event.c:223,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:225,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'lib-event.c:226,7'
          Dst:             event_find_field_nonrecursive
    - functionName:    event_has_all_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 218
      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:209,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:210,3'
              BranchSideFuncs:
                - array_is_created_i.7600
                - buffer_get_modifiable_data
                - event_find_category
            - BranchSide:      'lib-event.c:211,7'
              BranchSideFuncs:
                - array_is_created_i.7600
                - buffer_get_modifiable_data
                - event_find_category
        - Branch String:   'lib-event.c:211,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:212,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_find_category
            - BranchSide:      'lib-event.c:213,2'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_find_category
        - Branch String:   'lib-event.c:213,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:214,28'
              BranchSideFuncs:
                - event_find_category
            - BranchSide:      'lib-event.c:217,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:214,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:215,4'
              BranchSideFuncs:
                - event_find_category
            - BranchSide:      'lib-event.c:216,2'
              BranchSideFuncs:
                - event_find_category
      Callsites:
        - Src:             'lib-event.c:209,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:211,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:213,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'lib-event.c:214,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:    2
      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:    10
      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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      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: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7839
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7839
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 244
      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:242,2'
          Dst:             buffer_delete
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      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:251,13'
          Dst:             array_count_i
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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.7842
                - array_idx_set_i
                - i_panic
            - BranchSide:      'lib-signals.c:317,8'
              BranchSideFuncs:
                - array_get_i.7842
                - 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: 172
      functionLinenumberEnd: 173
      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:258,19'
          Branch Sides:
            - BranchSide:      'lib-signals.c:261,7'
              BranchSideFuncs:
                - array_is_created_i.7844
                - array_count_i.7843
                - array_get_i.7842
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:261,7'
              BranchSideFuncs:
                - array_is_created_i.7844
                - array_count_i.7843
                - array_get_i.7842
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:261,51'
          Branch Sides:
            - BranchSide:      'lib-signals.c:262,6'
              BranchSideFuncs:
                - array_count_i.7843
                - array_get_i.7842
                - array_delete_i.7841
                - array_get_i.7842
                - 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.7842
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:266,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:266,2'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:268,8'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - 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.7841
                - array_get_i.7842
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:271,3'
          Branch Sides:
            - BranchSide:      'lib-signals.c:273,4'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:286,8'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - 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.7841
                - array_get_i.7842
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:274,35'
          Branch Sides:
            - BranchSide:      'lib-signals.c:275,9'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:276,5'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:274,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:276,5'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:277,8'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:277,20'
          Branch Sides:
            - BranchSide:      'lib-signals.c:278,8'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:283,4'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:277,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:279,14'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:283,4'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:286,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:289,4'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:292,2'
              BranchSideFuncs:
                - array_delete_i.7841
                - array_get_i.7842
                - 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.7834
                - 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.7834
                - 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.7834
                - 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.7834
        - Branch String:   'lib-signals.c:350,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:351,3'
              BranchSideFuncs:
                - i_memcpy.7834
                - 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:    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.7853
                - p_malloc.7854
                - lib_signals_init_io
            - BranchSide:      'lib-signals.c:216,7'
              BranchSideFuncs:
                - malloc_multiply_check.7853
                - p_malloc.7854
                - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 158
      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:157,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:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:710,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:712,9'
              BranchSideFuncs:
                - array_is_created_i.7844
                - i_panic
                - array_free_i.7858
                - close
                - close
                - i_error
                - i_error
                - i_panic
                - lib_signals_clear_handlers_and_ignore
            - BranchSide:      'lib-signals.c:712,9'
              BranchSideFuncs:
                - array_is_created_i.7844
                - i_panic
                - array_free_i.7858
                - 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.7844
                - i_panic
                - array_free_i.7858
                - 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.7844
                - i_panic
                - array_free_i.7858
                - 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.7844
                - i_panic
                - array_free_i.7858
                - close
                - close
                - i_error
                - i_error
                - i_panic
            - BranchSide:      'lib-signals.c:715,2'
              BranchSideFuncs:
                - array_is_created_i.7844
                - i_panic
                - array_free_i.7858
                - 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.7844
                - i_panic
                - array_free_i.7858
                - 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.7844
                - i_panic
                - array_free_i.7858
                - i_error
                - i_error
            - BranchSide:      'lib-signals.c:726,6'
              BranchSideFuncs:
                - array_is_created_i.7844
                - i_panic
                - array_free_i.7858
        - Branch String:   'lib-signals.c:719,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:720,4'
              BranchSideFuncs:
                - i_error
                - close
                - array_is_created_i.7844
                - i_panic
                - array_free_i.7858
                - i_error
            - BranchSide:      'lib-signals.c:721,13'
              BranchSideFuncs:
                - close
                - array_is_created_i.7844
                - i_panic
                - array_free_i.7858
                - i_error
        - Branch String:   'lib-signals.c:721,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:722,4'
              BranchSideFuncs:
                - i_error
                - array_is_created_i.7844
                - i_panic
                - array_free_i.7858
            - BranchSide:      'lib-signals.c:723,35'
              BranchSideFuncs:
                - array_is_created_i.7844
                - i_panic
                - array_free_i.7858
        - Branch String:   'lib-signals.c:726,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:727,3'
              BranchSideFuncs:
                - array_free_i.7858
                - 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.7857
                - 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.7857
        - 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.7857
        - Branch String:   'lib-signals.c:237,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:237,2'
              BranchSideFuncs:
                - p_free_internal.7857
            - BranchSide:      'lib-signals.c:237,2'
              BranchSideFuncs:
                - p_free_internal.7857
        - Branch String:   'lib-signals.c:237,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:237,2'
              BranchSideFuncs:
                - p_free_internal.7857
            - BranchSide:      'lib-signals.c:238,2'
              BranchSideFuncs:
                - p_free_internal.7857
      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:    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:422,25'
          Branch Sides:
            - BranchSide:      'lib-signals.c:424,6'
              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:297,24'
          Branch Sides:
            - BranchSide:      'lib-signals.c:299,7'
              BranchSideFuncs:
                - array_is_created_i.7844
                - array_count_i.7843
                - lib_signals_ioloop_find
                - io_set_pending
            - BranchSide:      'lib-signals.c:299,7'
              BranchSideFuncs:
                - array_is_created_i.7844
                - array_count_i.7843
                - 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.7843
                - 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:    2
      BranchProfiles:
        - Branch String:   'lib-signals.c:695,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:697,22'
              BranchSideFuncs:
                - io_loop_add_switch_callback
                - io_loop_add_destroy_callback
                - lib_signals_set
            - BranchSide:      'lib-signals.c:697,22'
              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:    3
      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:    5
      BranchProfiles:
        - Branch String:   'lib-signals.c:516,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:516,2'
              BranchSideFuncs:
                - malloc_multiply_check.7853
                - p_malloc.7854
                - 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.7853
                - p_malloc.7854
                - 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.7853
                - p_malloc.7854
                - 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.7853
                - p_malloc.7854
                - 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.7853
                - p_malloc.7854
                - 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.7853
                - p_malloc.7854
                - 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.7853
                - p_malloc.7854
                - 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.7853
                - p_malloc.7854
                - 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:    4
      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:463,25'
          Branch Sides:
            - BranchSide:      'lib-signals.c:465,11'
              BranchSideFuncs:
                - lib_signals_ioloop_unref
            - BranchSide:      'lib-signals.c:465,11'
              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:    1
      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:    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.7935
      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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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.7935
                - 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.7935
                - 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.7935
      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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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.7944
                - p_malloc.7946
      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: 133
      functionLinenumberEnd: 136
      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: 156
      functionLinenumberEnd: 158
      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:157,2'
          Dst:             buffer_free
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      './mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    pool_external_refs_unref
      functionSourceFile: '/src/dovecot/src/lib/mempool.c'
      linkageType:     externalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 44
      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:38,6'
          Branch Sides:
            - BranchSide:      'mempool.c:38,6'
              BranchSideFuncs:
                - array_free_i.7980
                - pool_unref.7981
                - i_memcpy.7982
            - BranchSide:      'mempool.c:40,3'
              BranchSideFuncs:
                - array_free_i.7980
                - pool_unref.7981
                - i_memcpy.7982
        - Branch String:   'mempool.c:40,3'
          Branch Sides:
            - BranchSide:      'mempool.c:40,3'
              BranchSideFuncs:
                - i_memcpy.7982
                - array_free_i.7980
                - pool_unref.7981
            - BranchSide:      'mempool.c:40,3'
              BranchSideFuncs:
                - array_free_i.7980
                - pool_unref.7981
                - i_memcpy.7982
        - Branch String:   'mempool.c:40,3'
          Branch Sides:
            - BranchSide:      'mempool.c:41,4'
              BranchSideFuncs:
                - pool_unref.7981
                - array_free_i.7980
                - i_memcpy.7982
            - BranchSide:      'mempool.c:42,3'
              BranchSideFuncs:
                - array_free_i.7980
      Callsites:
        - Src:             'mempool.c:38,6'
          Dst:             array_is_created_i
        - Src:             'mempool.c:40,3'
          Dst:             i_memcpy
        - Src:             'mempool.c:41,4'
          Dst:             pool_unref
        - Src:             'mempool.c:42,3'
          Dst:             array_free_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      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: 159
      functionLinenumberEnd: 161
      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: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7979
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7979
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    pool_add_external_ref
      functionSourceFile: '/src/dovecot/src/lib/mempool.c'
      linkageType:     externalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - ref_pool
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - pool_ref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'mempool.c:30,6'
          Branch Sides:
            - BranchSide:      'mempool.c:30,6'
              BranchSideFuncs:
                - array_append_i.7991
                - pool_ref.7990
            - BranchSide:      'mempool.c:31,3'
              BranchSideFuncs:
                - array_create_i.7992
                - array_append_i.7991
                - pool_ref.7990
      Callsites:
        - Src:             'mempool.c:30,7'
          Dst:             array_is_created_i
        - Src:             'mempool.c:31,3'
          Dst:             array_create_i
        - Src:             'mempool.c:32,2'
          Dst:             array_append_i
        - Src:             'mempool.c:33,2'
          Dst:             pool_ref
    - functionName:    p_get_max_easy_alloc_size
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 150
      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.7995
                - 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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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: 513
      functionLinenumberEnd: 517
      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: 488
      functionLinenumberEnd: 510
      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:497,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: 485
      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:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - pool_alloconly_malloc
        - pool_alloconly_try_grow
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:470,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:471,10'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:473,13'
              BranchSideFuncs:
                - pool_alloconly_try_grow
                - pool_alloconly_malloc
                - i_memcpy.8045
        - Branch String:   'mempool-alloconly.c:476,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:478,35'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:484,9'
              BranchSideFuncs: []
        - Branch String:   'mempool-alloconly.c:479,7'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:480,4'
              BranchSideFuncs:
                - i_memcpy.8045
            - BranchSide:      'mempool-alloconly.c:481,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-alloconly.c:476,7'
          Dst:             pool_alloconly_try_grow
        - Src:             'mempool-alloconly.c:478,13'
          Dst:             pool_alloconly_malloc
        - Src:             'mempool-alloconly.c:480,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:    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: 535
      functionLinenumberEnd: 545
      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:541,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:541,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-alloconly.c:543,15'
              BranchSideFuncs: []
        - Branch String:   'mempool-alloconly.c:543,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:544,11'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:545,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-alloconly.c:541,2'
          Dst:             i_panic
    - functionName:    pool_alloconly_get_total_used_size
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     externalLinkage
      functionLinenumber: 521
      functionLinenumberEnd: 531
      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:527,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:527,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-alloconly.c:529,15'
              BranchSideFuncs: []
        - Branch String:   'mempool-alloconly.c:529,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:530,11'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:531,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-alloconly.c:527,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:    20
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:247,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:248,24'
              BranchSideFuncs:
                - nearest_power
                - block_alloc
                - malloc_multiply_check.8058
                - p_malloc.8059
                - i_panic
            - BranchSide:      'mempool-alloconly.c:249,22'
              BranchSideFuncs:
                - block_alloc
                - malloc_multiply_check.8058
                - p_malloc.8059
                - 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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    pool_data_stack_get_max_easy_alloc_size
      functionSourceFile: '/src/dovecot/src/lib/mempool-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 190
      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:190,9'
          Dst:             t_get_bytes_available
    - functionName:    pool_data_stack_clear
      functionSourceFile: '/src/dovecot/src/lib/mempool-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 185
      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: 181
      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:         14
      ICount:          101
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - i_panic
        - t_malloc_no0
        - t_try_realloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-datastack.c:166,6'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:167,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-datastack.c:169,6'
              BranchSideFuncs:
                - t_try_realloc
                - t_malloc_no0
                - i_memcpy.8089
        - Branch String:   'mempool-datastack.c:169,6'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:170,10'
              BranchSideFuncs: []
            - BranchSide:      'mempool-datastack.c:172,21'
              BranchSideFuncs:
                - t_try_realloc
                - t_malloc_no0
                - i_memcpy.8089
        - Branch String:   'mempool-datastack.c:172,6'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:173,26'
              BranchSideFuncs: []
            - BranchSide:      'mempool-datastack.c:179,18'
              BranchSideFuncs: []
        - Branch String:   'mempool-datastack.c:174,7'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:175,4'
              BranchSideFuncs:
                - i_memcpy.8089
            - BranchSide:      'mempool-datastack.c:176,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-datastack.c:167,3'
          Dst:             i_panic
        - Src:             'mempool-datastack.c:172,7'
          Dst:             t_try_realloc
        - Src:             'mempool-datastack.c:173,13'
          Dst:             t_malloc_no0
        - Src:             'mempool-datastack.c:175,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:    30
      BranchProfiles:
        - Branch String:   'mempool-datastack.c:99,25'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:99,25'
              BranchSideFuncs:
                - malloc_multiply_check.8102
                - t_malloc0
            - BranchSide:      'mempool-datastack.c:101,10'
              BranchSideFuncs:
                - malloc_multiply_check.8102
                - 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:    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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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: 134
      functionLinenumberEnd: 135
      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:135,9'
          Dst:             t_get_bytes_available
    - functionName:    pool_unsafe_data_stack_clear
      functionSourceFile: '/src/dovecot/src/lib/mempool-unsafe-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      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: 126
      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:         12
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - t_malloc_no0
        - t_try_realloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-unsafe-datastack.c:114,6'
          Branch Sides:
            - BranchSide:      'mempool-unsafe-datastack.c:115,10'
              BranchSideFuncs: []
            - BranchSide:      'mempool-unsafe-datastack.c:117,21'
              BranchSideFuncs:
                - t_try_realloc
                - t_malloc_no0
                - i_memcpy.8155
        - Branch String:   'mempool-unsafe-datastack.c:117,6'
          Branch Sides:
            - BranchSide:      'mempool-unsafe-datastack.c:118,26'
              BranchSideFuncs: []
            - BranchSide:      'mempool-unsafe-datastack.c:124,18'
              BranchSideFuncs: []
        - Branch String:   'mempool-unsafe-datastack.c:119,7'
          Branch Sides:
            - BranchSide:      'mempool-unsafe-datastack.c:120,4'
              BranchSideFuncs:
                - i_memcpy.8155
            - BranchSide:      'mempool-unsafe-datastack.c:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-unsafe-datastack.c:117,7'
          Dst:             t_try_realloc
        - Src:             'mempool-unsafe-datastack.c:118,13'
          Dst:             t_malloc_no0
        - Src:             'mempool-unsafe-datastack.c:120,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: 111
      functionLinenumberEnd: 145
      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:119,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:120,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:122,2'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
                - strcmp
        - Branch String:   'module-dir.c:122,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:123,17'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
                - strcmp
            - BranchSide:      'module-dir.c:144,2'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:124,3'
          Branch Sides:
            - BranchSide:      'module-dir.c:125,16'
              BranchSideFuncs:
                - strncmp
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strcmp
            - BranchSide:      'module-dir.c:130,7'
              BranchSideFuncs:
                - strlen
                - strncmp
                - strcmp
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
        - Branch String:   'module-dir.c:125,42'
          Branch Sides:
            - BranchSide:      'module-dir.c:126,9'
              BranchSideFuncs:
                - strcmp
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
            - BranchSide:      'module-dir.c:129,3'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
                - strcmp
        - Branch String:   'module-dir.c:126,30'
          Branch Sides:
            - BranchSide:      'module-dir.c:127,16'
              BranchSideFuncs:
                - strlen
                - strncmp
                - strcmp
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
            - BranchSide:      'module-dir.c:128,5'
              BranchSideFuncs:
                - strlen
                - strncmp
                - strcmp
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
        - Branch String:   'module-dir.c:125,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:128,5'
              BranchSideFuncs:
                - strlen
                - strncmp
                - strcmp
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
            - BranchSide:      'module-dir.c:129,3'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
                - strcmp
        - Branch String:   'module-dir.c:130,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:131,13'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
            - BranchSide:      'module-dir.c:143,2'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
                - strcmp
        - Branch String:   'module-dir.c:134,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:135,17'
              BranchSideFuncs:
                - str_printfa
                - str_c
            - BranchSide:      'module-dir.c:140,21'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'module-dir.c:118,8'
          Dst:             t_strconcat
        - Src:             'module-dir.c:117,9'
          Dst:             dlsym
        - Src:             'module-dir.c:123,9'
          Dst:             strlen
        - Src:             'module-dir.c:125,8'
          Dst:             strncmp
        - Src:             'module-dir.c:127,9'
          Dst:             strcmp
        - Src:             'module-dir.c:131,13'
          Dst:             t_str_new
        - Src:             'module-dir.c:132,4'
          Dst:             str_printfa
        - Src:             'module-dir.c:135,5'
          Dst:             str_printfa
        - Src:             'module-dir.c:140,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: 78
      functionLinenumberEnd: 104
      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:82,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:83,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:85,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:87,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:88,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:90,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:91,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:92,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:94,11'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_printfa
                - str_printfa
                - str_c
                - str_printfa
        - Branch String:   'module-dir.c:97,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:98,15'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_c
            - BranchSide:      'module-dir.c:100,15'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_c
      Callsites:
        - Src:             'module-dir.c:85,16'
          Dst:             t_strconcat
        - Src:             'module-dir.c:86,15'
          Dst:             dlsym
        - Src:             'module-dir.c:90,10'
          Dst:             t_strsplit
        - Src:             'module-dir.c:91,6'
          Dst:             str_array_find
        - Src:             'module-dir.c:94,11'
          Dst:             t_str_new
        - Src:             'module-dir.c:95,2'
          Dst:             str_printfa
        - Src:             'module-dir.c:98,3'
          Dst:             str_printfa
        - Src:             'module-dir.c:100,3'
          Dst:             str_printfa
        - Src:             'module-dir.c:101,2'
          Dst:             str_printfa
        - Src:             'module-dir.c:102,13'
          Dst:             str_c
    - functionName:    versions_equal
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 180
      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:173,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:174,8'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:179,2'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:174,21'
          Branch Sides:
            - BranchSide:      'module-dir.c:174,25'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:175,4'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:174,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:175,4'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:176,7'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    get_symbol
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 57
      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:53,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:54,34'
              BranchSideFuncs:
                - module_get_symbol_quiet
            - BranchSide:      'module-dir.c:56,27'
              BranchSideFuncs:
                - module_get_symbol
      Callsites:
        - Src:             'module-dir.c:54,10'
          Dst:             module_get_symbol_quiet
        - Src:             'module-dir.c:56,9'
          Dst:             module_get_symbol
    - functionName:    module_get_symbol_quiet
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 31
      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:29,8'
          Dst:             dlerror
        - Src:             'module-dir.c:31,9'
          Dst:             dlsym
    - functionName:    module_get_symbol
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 48
      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:40,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:40,6'
              BranchSideFuncs:
                - dlerror
                - i_error
            - BranchSide:      'module-dir.c:41,11'
              BranchSideFuncs:
                - dlerror
                - i_error
        - Branch String:   'module-dir.c:42,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:44,5'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'module-dir.c:47,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'module-dir.c:39,8'
          Dst:             module_get_symbol_quiet
        - Src:             'module-dir.c:41,11'
          Dst:             dlerror
        - Src:             'module-dir.c:43,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    quiet_dlopen
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 150
      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:150,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: 196
      functionLinenumberEnd: 197
      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: 133
      functionLinenumberEnd: 136
      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: 187
      functionLinenumberEnd: 276
      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:196,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:197,25'
              BranchSideFuncs:
                - quiet_dlopen
                - malloc_multiply_check.8276
                - p_malloc.8269
                - 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:209,19'
              BranchSideFuncs:
                - dlopen
                - malloc_multiply_check.8276
                - p_malloc.8269
                - 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:198,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:199,8'
              BranchSideFuncs:
                - dlerror
                - i_debug
            - BranchSide:      'module-dir.c:208,2'
              BranchSideFuncs:
                - malloc_multiply_check.8276
                - p_malloc.8269
                - 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:199,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:204,6'
              BranchSideFuncs:
                - dlerror
                - i_debug
            - BranchSide:      'module-dir.c:206,4'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:217,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:218,5'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:222,3'
              BranchSideFuncs:
                - malloc_multiply_check.8276
                - p_malloc.8269
                - 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:230,19'
          Branch Sides:
            - BranchSide:      'module-dir.c:230,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:231,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:232,29'
          Branch Sides:
            - BranchSide:      'module-dir.c:233,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:243,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:232,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:236,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:243,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:251,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:252,3'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
            - BranchSide:      'module-dir.c:254,7'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
        - Branch String:   'module-dir.c:254,28'
          Branch Sides:
            - BranchSide:      'module-dir.c:254,31'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
            - BranchSide:      'module-dir.c:255,6'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
        - Branch String:   'module-dir.c:254,55'
          Branch Sides:
            - BranchSide:      'module-dir.c:255,6'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
            - BranchSide:      'module-dir.c:259,51'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
        - Branch String:   'module-dir.c:254,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:258,4'
              BranchSideFuncs:
                - t_strdup_printf
                - i_debug
                - module_free
            - BranchSide:      'module-dir.c:259,51'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
        - Branch String:   'module-dir.c:259,13'
          Branch Sides:
            - BranchSide:      'module-dir.c:261,55'
              BranchSideFuncs:
                - module_check_missing_plugin_dependencies
                - i_debug
                - module_free
            - BranchSide:      'module-dir.c:261,2'
              BranchSideFuncs:
                - i_debug
                - module_free
        - Branch String:   'module-dir.c:266,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:267,3'
              BranchSideFuncs:
                - module_free
            - BranchSide:      'module-dir.c:272,6'
              BranchSideFuncs:
                - i_debug
        - Branch String:   'module-dir.c:272,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:273,32'
              BranchSideFuncs:
                - i_debug
            - BranchSide:      'module-dir.c:274,14'
              BranchSideFuncs: []
      Callsites:
        - Src:             'module-dir.c:197,12'
          Dst:             quiet_dlopen
        - Src:             'module-dir.c:204,12'
          Dst:             dlerror
        - Src:             'module-dir.c:200,5'
          Dst:             i_debug
        - Src:             'module-dir.c:209,12'
          Dst:             dlopen
        - Src:             'module-dir.c:212,10'
          Dst:             dlerror
        - Src:             'module-dir.c:211,15'
          Dst:             t_strdup_printf
        - Src:             'module-dir.c:216,13'
          Dst:             dlopen
        - Src:             'module-dir.c:225,11'
          Dst:             malloc_multiply_check
        - Src:             'module-dir.c:225,11'
          Dst:             p_malloc
        - Src:             'module-dir.c:226,17'
          Dst:             i_strdup
        - Src:             'module-dir.c:227,17'
          Dst:             i_strdup
        - Src:             'module-dir.c:231,22'
          Dst:             t_strconcat
        - Src:             'module-dir.c:231,3'
          Dst:             get_symbol
        - Src:             'module-dir.c:233,7'
          Dst:             versions_equal
        - Src:             'module-dir.c:234,14'
          Dst:             t_strdup_printf
        - Src:             'module-dir.c:237,3'
          Dst:             module_free
        - Src:             'module-dir.c:243,22'
          Dst:             t_strconcat
        - Src:             'module-dir.c:243,3'
          Dst:             get_symbol
        - Src:             'module-dir.c:246,22'
          Dst:             t_strconcat
        - Src:             'module-dir.c:246,3'
          Dst:             get_symbol
        - Src:             'module-dir.c:249,22'
          Dst:             t_strconcat
        - Src:             'module-dir.c:249,3'
          Dst:             get_symbol
        - Src:             'module-dir.c:256,14'
          Dst:             t_strdup_printf
        - Src:             'module-dir.c:259,14'
          Dst:             module_check_wrong_binary_dependency
        - Src:             'module-dir.c:261,14'
          Dst:             module_check_missing_plugin_dependencies
        - Src:             'module-dir.c:268,3'
          Dst:             module_free
        - Src:             'module-dir.c:273,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:    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:    module_free
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 73
      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:61,29'
          Branch Sides:
            - BranchSide:      'module-dir.c:61,32'
              BranchSideFuncs:
                - getenv
                - p_free_internal.8288
                - p_free_internal.8288
                - p_free_internal.8288
                - dlclose
                - i_error
            - BranchSide:      'module-dir.c:66,6'
              BranchSideFuncs:
                - getenv
                - p_free_internal.8288
                - p_free_internal.8288
                - p_free_internal.8288
                - dlclose
                - i_error
        - Branch String:   'module-dir.c:61,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:62,3'
              BranchSideFuncs:
                - getenv
                - p_free_internal.8288
                - p_free_internal.8288
                - p_free_internal.8288
                - dlclose
                - i_error
            - BranchSide:      'module-dir.c:66,6'
              BranchSideFuncs:
                - getenv
                - p_free_internal.8288
                - p_free_internal.8288
                - p_free_internal.8288
                - dlclose
                - i_error
        - Branch String:   'module-dir.c:66,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:67,15'
              BranchSideFuncs:
                - dlclose
                - p_free_internal.8288
                - p_free_internal.8288
                - p_free_internal.8288
                - i_error
            - BranchSide:      'module-dir.c:70,2'
              BranchSideFuncs:
                - p_free_internal.8288
                - p_free_internal.8288
                - p_free_internal.8288
        - Branch String:   'module-dir.c:67,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:68,38'
              BranchSideFuncs:
                - i_error
                - p_free_internal.8288
                - p_free_internal.8288
                - p_free_internal.8288
            - BranchSide:      'module-dir.c:69,2'
              BranchSideFuncs:
                - p_free_internal.8288
                - p_free_internal.8288
                - p_free_internal.8288
      Callsites:
        - Src:             'module-dir.c:66,6'
          Dst:             getenv
        - Src:             'module-dir.c:67,7'
          Dst:             dlclose
        - Src:             'module-dir.c:68,4'
          Dst:             i_error
        - Src:             'module-dir.c:70,2'
          Dst:             p_free_internal
        - Src:             'module-dir.c:71,2'
          Dst:             p_free_internal
        - Src:             'module-dir.c:72,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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    module_is_loaded
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 340
      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:340,9'
          Dst:             module_dir_find
    - functionName:    module_dir_find
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 336
      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:328,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:329,15'
              BranchSideFuncs:
                - strncmp
                - strcmp
            - BranchSide:      'module-dir.c:335,2'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:329,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:330,8'
              BranchSideFuncs:
                - strcmp
                - strncmp
            - BranchSide:      'module-dir.c:334,2'
              BranchSideFuncs:
                - strncmp
                - strcmp
        - Branch String:   'module-dir.c:330,34'
          Branch Sides:
            - BranchSide:      'module-dir.c:331,15'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:332,12'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:330,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:332,12'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:333,3'
              BranchSideFuncs:
                - strncmp
                - strcmp
      Callsites:
        - Src:             'module-dir.c:326,15'
          Dst:             strlen
        - Src:             'module-dir.c:329,7'
          Dst:             strncmp
        - Src:             'module-dir.c:331,8'
          Dst:             strcmp
    - functionName:    module_want_load
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 304
      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:290,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:291,8'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'module-dir.c:294,6'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'module-dir.c:291,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:292,4'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'module-dir.c:293,2'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'module-dir.c:294,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:295,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:297,2'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'module-dir.c:297,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:298,15'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'module-dir.c:303,2'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:298,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:299,5'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:302,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'module-dir.c:298,7'
          Dst:             strcmp
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      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:251,13'
          Dst:             array_count_i
    - functionName:    module_name_cmp
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 284
      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:282,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:283,8'
              BranchSideFuncs:
                - strncmp
                - str_begins_builtin_success.8293
                - strcmp
            - BranchSide:      'module-dir.c:283,8'
              BranchSideFuncs:
                - str_begins_builtin_success.8293
                - strncmp
                - str_begins_builtin_success.8293
                - strcmp
        - Branch String:   'module-dir.c:283,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:283,8'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'module-dir.c:283,8'
              BranchSideFuncs:
                - str_begins_builtin_success.8293
                - strcmp
      Callsites:
        - Src:             'module-dir.c:282,8'
          Dst:             strncmp
        - Src:             'module-dir.c:282,8'
          Dst:             str_begins_builtin_success
        - Src:             'module-dir.c:283,8'
          Dst:             strncmp
        - Src:             'module-dir.c:283,8'
          Dst:             str_begins_builtin_success
        - Src:             'module-dir.c:284,9'
          Dst:             strcmp
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib/./strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 114
      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: 164
      functionLinenumberEnd: 167
      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:165,6'
          Branch Sides:
            - BranchSide:      './mempool.h:165,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:166,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    check_duplicates
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 321
      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:314,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:314,30'
              BranchSideFuncs:
                - t_push
                - module_file_get_name
                - strcmp
                - t_pop
                - i_panic
                - i_fatal
            - BranchSide:      'module-dir.c:321,1'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:317,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:319,5'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'module-dir.c:320,4'
              BranchSideFuncs:
                - t_pop
                - t_push
                - module_file_get_name
                - strcmp
                - i_fatal
                - i_panic
        - Branch String:   'module-dir.c:320,4'
          Branch Sides:
            - BranchSide:      'module-dir.c:320,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:320,4'
              BranchSideFuncs:
                - t_push
                - module_file_get_name
                - strcmp
                - t_pop
                - i_panic
                - i_fatal
      Callsites:
        - Src:             'module-dir.c:312,14'
          Dst:             module_file_get_name
        - Src:             'module-dir.c:313,12'
          Dst:             array_get_i
        - Src:             'module-dir.c:314,30'
          Dst:             t_push
        - Src:             'module-dir.c:315,9'
          Dst:             module_file_get_name
        - Src:             'module-dir.c:317,7'
          Dst:             strcmp
        - Src:             'module-dir.c:318,4'
          Dst:             i_fatal
        - Src:             'module-dir.c:320,4'
          Dst:             t_pop
        - Src:             'module-dir.c:320,4'
          Dst:             i_panic
    - functionName:    module_file_get_name
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 678
      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:664,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:666,11'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
            - BranchSide:      'module-dir.c:666,11'
              BranchSideFuncs:
                - str_begins_builtin_success.8293
                - strstr
                - t_strdup_until
        - Branch String:   'module-dir.c:666,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:667,8'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
            - BranchSide:      'module-dir.c:670,7'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
        - Branch String:   'module-dir.c:667,16'
          Branch Sides:
            - BranchSide:      'module-dir.c:667,20'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
            - BranchSide:      'module-dir.c:668,4'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
        - Branch String:   'module-dir.c:667,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:668,4'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
            - BranchSide:      'module-dir.c:669,2'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
        - Branch String:   'module-dir.c:670,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:671,11'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
            - BranchSide:      'module-dir.c:673,13'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
        - Branch String:   'module-dir.c:674,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:675,10'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:677,24'
              BranchSideFuncs:
                - t_strdup_until
      Callsites:
        - Src:             'module-dir.c:664,8'
          Dst:             strncmp
        - Src:             'module-dir.c:664,8'
          Dst:             str_begins_builtin_success
        - Src:             'module-dir.c:673,6'
          Dst:             strstr
        - Src:             'module-dir.c:677,9'
          Dst:             t_strdup_until
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.8272
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.8272
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,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: 681
      functionLinenumberEnd: 687
      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:685,14'
          Branch Sides:
            - BranchSide:      'module-dir.c:685,24'
              BranchSideFuncs:
                - strcmp
                - t_strndup
            - BranchSide:      'module-dir.c:685,14'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:685,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:685,6'
              BranchSideFuncs:
                - t_strndup
            - BranchSide:      'module-dir.c:686,20'
              BranchSideFuncs:
                - t_strndup
      Callsites:
        - Src:             'module-dir.c:684,8'
          Dst:             strlen
        - Src:             'module-dir.c:685,17'
          Dst:             strcmp
        - Src:             'module-dir.c:686,10'
          Dst:             t_strndup
    - functionName:    module_get_plugin_name
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 691
      functionLinenumberEnd: 692
      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:692,9'
          Dst:             module_name_drop_suffix
    - functionName:    module_dir_load
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 656
      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:656,9'
          Dst:             module_dir_load_missing
    - functionName:    module_dir_load_missing
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 531
      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:524,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:524,6'
              BranchSideFuncs:
                - i_error
                - i_fatal
            - BranchSide:      'module-dir.c:526,7'
              BranchSideFuncs:
                - i_error
                - i_fatal
        - Branch String:   'module-dir.c:526,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:527,18'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'module-dir.c:529,18'
              BranchSideFuncs:
                - i_error
      Callsites:
        - Src:             'module-dir.c:524,6'
          Dst:             module_dir_try_load_missing
        - Src:             'module-dir.c:527,4'
          Dst:             i_fatal
        - Src:             'module-dir.c:529,4'
          Dst:             i_error
    - functionName:    module_dir_try_load_missing
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 513
      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:         14
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - module_dir_load_real
        - module_names_fix
        - p_free_internal
        - t_pop
        - t_push
        - t_strdup
        - t_strsplit_spaces
      functionUses:    2
      BranchProfiles:
        - Branch String:   'module-dir.c:504,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:505,28'
              BranchSideFuncs:
                - t_strsplit_spaces
                - module_names_fix
                - module_dir_load_real
                - t_pop
                - t_strdup
                - p_free_internal.8288
                - i_panic
            - BranchSide:      'module-dir.c:509,30'
              BranchSideFuncs:
                - module_dir_load_real
                - t_pop
                - t_strdup
                - p_free_internal.8288
                - i_panic
        - Branch String:   'module-dir.c:510,4'
          Branch Sides:
            - BranchSide:      'module-dir.c:510,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:510,4'
              BranchSideFuncs:
                - t_strdup
                - p_free_internal.8288
      Callsites:
        - Src:             'module-dir.c:501,2'
          Dst:             t_push
        - Src:             'module-dir.c:505,10'
          Dst:             t_strsplit_spaces
        - Src:             'module-dir.c:506,4'
          Dst:             module_names_fix
        - Src:             'module-dir.c:509,9'
          Dst:             module_dir_load_real
        - Src:             'module-dir.c:510,4'
          Dst:             t_pop
        - Src:             'module-dir.c:510,4'
          Dst:             i_panic
        - Src:             'module-dir.c:511,13'
          Dst:             t_strdup
        - Src:             'module-dir.c:512,2'
          Dst:             p_free_internal
    - functionName:    module_names_fix
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - module_names
      BBCount:         17
      ICount:          121
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - i_strcmp_p
        - module_file_get_name
        - qsort
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:347,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:348,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:352,9'
              BranchSideFuncs:
                - qsort
                - strcmp
                - module_file_get_name
        - Branch String:   'module-dir.c:352,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:353,42'
              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,2'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:358,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:359,24'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'module-dir.c:360,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'module-dir.c:353,21'
          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
        - 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.8300
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - __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.8300
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - __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.8300
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - __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.8300
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - __errno_location
                - i_panic
                - i_strdup_printf
                - __errno_location
            - BranchSide:      'module-dir.c:401,17'
              BranchSideFuncs:
                - opendir
                - pool_alloconly_create
                - array_create_i.8300
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - __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.8300
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - __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.8295
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
                - i_strdup_printf
                - i_panic
            - BranchSide:      'module-dir.c:433,6'
              BranchSideFuncs:
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - 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.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - i_panic
            - BranchSide:      'module-dir.c:422,14'
              BranchSideFuncs:
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - 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.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - i_panic
            - BranchSide:      'module-dir.c:424,4'
              BranchSideFuncs:
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - 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.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - i_panic
            - BranchSide:      'module-dir.c:426,3'
              BranchSideFuncs:
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8295
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - 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.8295
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - 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.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
            - BranchSide:      'module-dir.c:435,15'
              BranchSideFuncs:
                - closedir
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - 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.8291
                - pool_unref.8294
                - 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.8294
                - i_strdup_printf
            - BranchSide:      'module-dir.c:437,7'
              BranchSideFuncs:
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
        - 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.8291
                - pool_unref.8294
                - 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.8294
            - BranchSide:      'module-dir.c:437,7'
              BranchSideFuncs:
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
        - Branch String:   'module-dir.c:437,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:438,3'
              BranchSideFuncs:
                - pool_unref.8294
            - BranchSide:      'module-dir.c:442,2'
              BranchSideFuncs:
                - array_sort_i
                - array_get_i.8291
                - pool_unref.8294
                - 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.8294
                - 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.8294
                - 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.8294
                - 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.8294
                - 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.8294
                - 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.8294
                - 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.8294
                - 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.8294
                - 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.8294
                - 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.8294
                - 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.8294
                - 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.8294
                - 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.8294
                - 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: 584
      functionLinenumberEnd: 597
      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:    2
      BranchProfiles:
        - Branch String:   'module-dir.c:591,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:592,10'
              BranchSideFuncs:
                - module_free
            - BranchSide:      'module-dir.c:596,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'module-dir.c:589,2'
          Dst:             module_dir_deinit
        - Src:             'module-dir.c:593,3'
          Dst:             module_free
    - functionName:    module_dir_deinit
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 581
      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:553,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:554,7'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8276
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:558,6'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8276
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:554,30'
          Branch Sides:
            - BranchSide:      'module-dir.c:554,33'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8276
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:556,2'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8276
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:554,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:555,9'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8276
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:556,2'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8276
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:558,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:559,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:562,2'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8276
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:564,3'
          Branch Sides:
            - BranchSide:      'module-dir.c:565,8'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:572,10'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:565,31'
          Branch Sides:
            - BranchSide:      'module-dir.c:565,34'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:569,13'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:565,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:566,22'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:569,13'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:572,3'
          Branch Sides:
            - BranchSide:      'module-dir.c:573,13'
              BranchSideFuncs:
                - t_push
                - t_pop
                - t_pop
                - i_panic
                - i_panic
            - BranchSide:      'module-dir.c:580,4'
              BranchSideFuncs:
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:577,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:577,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:577,6'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:580,4'
          Branch Sides:
            - BranchSide:      'module-dir.c:580,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:580,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'module-dir.c:562,2'
          Dst:             t_push
        - Src:             'module-dir.c:563,9'
          Dst:             malloc_multiply_check
        - Src:             'module-dir.c:563,9'
          Dst:             t_malloc0
        - Src:             'module-dir.c:575,4'
          Dst:             t_push
        - Src:             'module-dir.c:577,6'
          Dst:             t_pop
        - Src:             'module-dir.c:577,6'
          Dst:             i_panic
        - Src:             'module-dir.c:580,4'
          Dst:             t_pop
        - Src:             'module-dir.c:580,4'
          Dst:             i_panic
    - functionName:    module_dir_init
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 546
      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:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:538,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:539,8'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:546,1'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:539,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:540,4'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:545,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:541,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:541,30'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:544,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:543,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:543,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:543,6'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
      Callsites:
        - Src:             'module-dir.c:541,30'
          Dst:             t_push
        - Src:             'module-dir.c:543,6'
          Dst:             t_pop
        - Src:             'module-dir.c:543,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,17'
              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,17'
          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:    7
      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.8451
                - i_memcpy.8451
        - Branch String:   'net.c:141,6'
          Branch Sides:
            - BranchSide:      'net.c:142,3'
              BranchSideFuncs:
                - i_memcpy.8451
            - BranchSide:      'net.c:144,3'
              BranchSideFuncs:
                - i_memcpy.8451
      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:    47
      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,44'
              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,38'
          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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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:    2
      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.8451
            - BranchSide:      'net.c:1099,13'
              BranchSideFuncs:
                - memcmp
                - i_memcpy.8451
        - Branch String:   'net.c:1099,6'
          Branch Sides:
            - BranchSide:      'net.c:1100,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1102,2'
              BranchSideFuncs:
                - i_memcpy.8451
      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:    2
      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:    7
      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:1009,32'
              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:    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:    2
      BranchProfiles:  []
      Callsites:       []
    - 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.8451
            - BranchSide:      'net.c:159,13'
              BranchSideFuncs:
                - i_memcpy.8451
        - Branch String:   'net.c:159,13'
          Branch Sides:
            - BranchSide:      'net.c:160,3'
              BranchSideFuncs:
                - i_memcpy.8451
            - BranchSide:      'net.c:162,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:157,3'
          Dst:             i_memcpy
        - Src:             'net.c:160,3'
          Dst:             i_memcpy
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - 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:
        - 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:    4
      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:    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:    3
      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.8491
                - t_malloc0
                - freeaddrinfo
                - sin_get_ip
                - i_panic
                - i_panic
                - malloc_multiply_check.8491
                - t_malloc0
            - BranchSide:      'net.c:696,2'
              BranchSideFuncs:
                - getaddrinfo
                - net_handle_gai_error
                - malloc_multiply_check.8491
                - 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.8491
                - t_malloc0
            - BranchSide:      'net.c:696,2'
              BranchSideFuncs:
                - getaddrinfo
                - net_handle_gai_error
                - malloc_multiply_check.8491
                - 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,18'
              BranchSideFuncs:
                - malloc_multiply_check.8491
                - 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.8491
                - t_malloc0
                - freeaddrinfo
                - sin_get_ip
                - i_panic
            - BranchSide:      'net.c:711,2'
              BranchSideFuncs:
                - malloc_multiply_check.8491
                - 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,22'
              BranchSideFuncs:
                - malloc_multiply_check.8491
                - 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,16'
          Dst:             malloc_multiply_check
        - Src:             'net.c:714,16'
          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:    1
      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:    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,17'
              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,17'
          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:
        - 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: 141
      functionLinenumberEnd: 143
      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:142,2'
          Branch Sides:
            - BranchSide:      './lib.h:142,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:142,2'
              BranchSideFuncs:
                - i_rand_limit
      Callsites:
        - Src:             './lib.h:142,2'
          Dst:             i_panic
        - Src:             './lib.h:143,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.8512
                - net_connect_unix
                - __errno_location
            - BranchSide:      'net.c:364,10'
              BranchSideFuncs:
                - i_rand_minmax
                - usleep
                - i_gettimeofday
                - timeval_diff_msecs.8512
                - 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.8512
                - 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.8512
                - __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:    nfs_flush_file_handle_cache_dir
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - path
        - try_parent
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nfs_flush_chown_uid
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'nfs-workarounds.c:307,2'
          Dst:             nfs_flush_chown_uid
    - functionName:    nfs_flush_chown_uid
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
      BBCount:         17
      ICount:          99
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - chmod
        - i_error
        - nfs_flush_file_handle_cache_parent_dir
        - stat
      functionUses:    2
      BranchProfiles:
        - Branch String:   'nfs-workarounds.c:166,6'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:168,2'
              BranchSideFuncs:
                - chmod
                - __errno_location
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache_parent_dir
            - BranchSide:      'nfs-workarounds.c:169,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache_parent_dir
        - Branch String:   'nfs-workarounds.c:169,7'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:171,4'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:173,7'
              BranchSideFuncs:
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache_parent_dir
        - Branch String:   'nfs-workarounds.c:173,7'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:174,43'
              BranchSideFuncs:
                - nfs_flush_file_handle_cache_parent_dir
            - BranchSide:      'nfs-workarounds.c:177,55'
              BranchSideFuncs:
                - i_error
        - Branch String:   'nfs-workarounds.c:182,6'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:182,6'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache_parent_dir
            - BranchSide:      'nfs-workarounds.c:183,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache_parent_dir
        - Branch String:   'nfs-workarounds.c:183,7'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:185,4'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:187,7'
              BranchSideFuncs:
                - __errno_location
                - i_error
                - nfs_flush_file_handle_cache_parent_dir
        - Branch String:   'nfs-workarounds.c:187,7'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:188,43'
              BranchSideFuncs:
                - nfs_flush_file_handle_cache_parent_dir
            - BranchSide:      'nfs-workarounds.c:192,5'
              BranchSideFuncs:
                - i_error
      Callsites:
        - Src:             'nfs-workarounds.c:166,6'
          Dst:             stat
        - Src:             'nfs-workarounds.c:169,7'
          Dst:             __errno_location
        - Src:             'nfs-workarounds.c:173,7'
          Dst:             __errno_location
        - Src:             'nfs-workarounds.c:174,4'
          Dst:             nfs_flush_file_handle_cache_parent_dir
        - Src:             'nfs-workarounds.c:177,3'
          Dst:             i_error
        - Src:             'nfs-workarounds.c:182,6'
          Dst:             chmod
        - Src:             'nfs-workarounds.c:183,7'
          Dst:             __errno_location
        - Src:             'nfs-workarounds.c:187,7'
          Dst:             __errno_location
        - Src:             'nfs-workarounds.c:188,4'
          Dst:             nfs_flush_file_handle_cache_parent_dir
        - Src:             'nfs-workarounds.c:191,3'
          Dst:             i_error
    - functionName:    nfs_flush_file_handle_cache_parent_dir
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
      BBCount:         12
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - nfs_flush_file_handle_cache_dir
        - strrchr
        - t_pop
        - t_push
        - t_strdup_until
      functionUses:    4
      BranchProfiles:
        - Branch String:   'nfs-workarounds.c:373,7'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:374,10'
              BranchSideFuncs:
                - nfs_flush_file_handle_cache_dir
                - t_pop
                - i_panic
            - BranchSide:      'nfs-workarounds.c:376,57'
              BranchSideFuncs:
                - t_strdup_until
                - nfs_flush_file_handle_cache_dir
                - t_pop
                - i_panic
        - Branch String:   'nfs-workarounds.c:378,4'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:378,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'nfs-workarounds.c:378,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'nfs-workarounds.c:371,6'
          Dst:             strrchr
        - Src:             'nfs-workarounds.c:372,2'
          Dst:             t_push
        - Src:             'nfs-workarounds.c:374,10'
          Dst:             nfs_flush_file_handle_cache_dir
        - Src:             'nfs-workarounds.c:376,42'
          Dst:             t_strdup_until
        - Src:             'nfs-workarounds.c:376,10'
          Dst:             nfs_flush_file_handle_cache_dir
        - Src:             'nfs-workarounds.c:378,4'
          Dst:             t_pop
        - Src:             'nfs-workarounds.c:378,4'
          Dst:             i_panic
    - functionName:    chmod
      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:    nfs_flush_fcntl
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - path
        - fd
      BBCount:         10
      ICount:          80
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - alarm
        - fcntl
        - i_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'nfs-workarounds.c:237,6'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:238,3'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:244,5'
              BranchSideFuncs:
                - alarm
                - fcntl
                - alarm
                - fcntl
                - __errno_location
                - i_error
        - Branch String:   'nfs-workarounds.c:253,6'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:254,7'
              BranchSideFuncs:
                - __errno_location
                - i_error
            - BranchSide:      'nfs-workarounds.c:262,5'
              BranchSideFuncs:
                - fcntl
        - Branch String:   'nfs-workarounds.c:254,7'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:255,19'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:258,61'
              BranchSideFuncs:
                - i_error
      Callsites:
        - Src:             'nfs-workarounds.c:249,2'
          Dst:             alarm
        - Src:             'nfs-workarounds.c:250,8'
          Dst:             fcntl
        - Src:             'nfs-workarounds.c:251,2'
          Dst:             alarm
        - Src:             'nfs-workarounds.c:254,7'
          Dst:             __errno_location
        - Src:             'nfs-workarounds.c:258,3'
          Dst:             i_error
        - Src:             'nfs-workarounds.c:263,8'
          Dst:             fcntl
    - functionName:    nfs_flush_read_cache_unlocked
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     externalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - path
        - fd
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nfs_flush_attr_cache_fd_locked
        - nfs_flush_fcntl
      functionUses:    0
      BranchProfiles:
        - Branch String:   'nfs-workarounds.c:401,6'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:401,6'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:402,34'
              BranchSideFuncs:
                - nfs_flush_attr_cache_fd_locked
      Callsites:
        - Src:             'nfs-workarounds.c:401,7'
          Dst:             nfs_flush_fcntl
        - Src:             'nfs-workarounds.c:402,3'
          Dst:             nfs_flush_attr_cache_fd_locked
    - functionName:    nfs_flush_attr_cache_fd_locked
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     externalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - path
        - fd
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nfs_flush_read_cache_locked
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     externalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - path
        - fd
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nfs_flush_file_handle_cache
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     externalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nfs_flush_file_handle_cache_parent_dir
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'nfs-workarounds.c:383,2'
          Dst:             nfs_flush_file_handle_cache_parent_dir
    - functionName:    nfs_flush_attr_cache_maybe_locked
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     externalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nfs_flush_chown_uid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'nfs-workarounds.c:287,2'
          Dst:             nfs_flush_chown_uid
    - functionName:    nfs_flush_attr_cache_unlocked
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     externalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - i_close_fd_path
        - nfs_flush_file_handle_cache_parent_dir
        - open
      functionUses:    1
      BranchProfiles:
        - Branch String:   'nfs-workarounds.c:274,6'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:275,3'
              BranchSideFuncs:
                - i_close_fd_path
            - BranchSide:      'nfs-workarounds.c:276,11'
              BranchSideFuncs:
                - __errno_location
                - nfs_flush_file_handle_cache_parent_dir
        - Branch String:   'nfs-workarounds.c:276,11'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:278,2'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:281,42'
              BranchSideFuncs:
                - nfs_flush_file_handle_cache_parent_dir
      Callsites:
        - Src:             'nfs-workarounds.c:273,7'
          Dst:             open
        - Src:             'nfs-workarounds.c:275,3'
          Dst:             i_close_fd_path
        - Src:             'nfs-workarounds.c:276,11'
          Dst:             __errno_location
        - Src:             'nfs-workarounds.c:281,3'
          Dst:             nfs_flush_file_handle_cache_parent_dir
    - functionName:    nfs_safe_link
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     externalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - oldpath
        - newpath
        - links1
      BBCount:         18
      ICount:          102
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - link
        - stat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'nfs-workarounds.c:122,6'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:123,12'
              BranchSideFuncs:
                - link
                - __errno_location
                - stat
                - __errno_location
            - BranchSide:      'nfs-workarounds.c:128,11'
              BranchSideFuncs:
                - link
                - __errno_location
                - stat
                - __errno_location
        - Branch String:   'nfs-workarounds.c:123,7'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:124,4'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:125,24'
              BranchSideFuncs:
                - link
                - __errno_location
                - stat
                - __errno_location
        - Branch String:   'nfs-workarounds.c:128,6'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:130,3'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:134,13'
              BranchSideFuncs:
                - __errno_location
                - stat
                - __errno_location
        - Branch String:   'nfs-workarounds.c:138,6'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:139,3'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:140,9'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'nfs-workarounds.c:140,6'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:141,3'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'nfs-workarounds.c:144,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'nfs-workarounds.c:123,7'
          Dst:             stat
        - Src:             'nfs-workarounds.c:128,6'
          Dst:             link
        - Src:             'nfs-workarounds.c:134,13'
          Dst:             __errno_location
        - Src:             'nfs-workarounds.c:138,6'
          Dst:             stat
        - Src:             'nfs-workarounds.c:141,3'
          Dst:             __errno_location
    - functionName:    link
      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:    nfs_safe_lstat_callback
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - context
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - lstat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'nfs-workarounds.c:109,9'
          Dst:             lstat
    - functionName:    nfs_safe_lstat
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     externalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - buf
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nfs_safe_do
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'nfs-workarounds.c:114,9'
          Dst:             nfs_safe_do
        - Src:             'nfs-workarounds.c:114,9'
          Dst:             nfs_safe_lstat_callback
    - functionName:    nfs_safe_do
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - callback
        - context
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - nfs_flush_file_handle_cache
      functionUses:    3
      BranchProfiles:
        - Branch String:   'nfs-workarounds.c:56,30'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:56,33'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:57,25'
              BranchSideFuncs: []
        - Branch String:   'nfs-workarounds.c:56,49'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:56,52'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:57,25'
              BranchSideFuncs: []
        - Branch String:   'nfs-workarounds.c:56,21'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:57,25'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:62,31'
              BranchSideFuncs:
                - nfs_flush_file_handle_cache
                - __errno_location
      Callsites:
        - Src:             'nfs-workarounds.c:56,33'
          Dst:             __errno_location
        - Src:             'nfs-workarounds.c:62,3'
          Dst:             nfs_flush_file_handle_cache
    - functionName:    nfs_safe_stat_callback
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - context
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'nfs-workarounds.c:97,9'
          Dst:             stat
    - functionName:    nfs_safe_stat
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     externalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - buf
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nfs_safe_do
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'nfs-workarounds.c:102,9'
          Dst:             nfs_safe_do
        - Src:             'nfs-workarounds.c:102,9'
          Dst:             nfs_safe_stat_callback
    - functionName:    nfs_safe_open_callback
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - context
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - open
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'nfs-workarounds.c:76,12'
          Dst:             open
    - functionName:    nfs_safe_open
      functionSourceFile: '/src/dovecot/src/lib/nfs-workarounds.c'
      linkageType:     externalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - path
        - flags
      BBCount:         10
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - nfs_safe_do
      functionUses:    0
      BranchProfiles:
        - Branch String:   'nfs-workarounds.c:84,9'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:84,9'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'nfs-workarounds.c:86,14'
              BranchSideFuncs:
                - nfs_safe_do
        - Branch String:   'nfs-workarounds.c:87,6'
          Branch Sides:
            - BranchSide:      'nfs-workarounds.c:88,3'
              BranchSideFuncs: []
            - BranchSide:      'nfs-workarounds.c:90,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'nfs-workarounds.c:84,9'
          Dst:             i_panic
        - Src:             'nfs-workarounds.c:87,6'
          Dst:             nfs_safe_do
        - Src:             'nfs-workarounds.c:87,6'
          Dst:             nfs_safe_open_callback
    - functionName:    i_stream_read_bytes
      functionSourceFile: '/src/dovecot/src/lib/./istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 225
      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:224,2'
          Branch Sides:
            - BranchSide:      './istream.h:224,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './istream.h:224,2'
              BranchSideFuncs:
                - i_stream_read_data
      Callsites:
        - Src:             './istream.h:224,2'
          Dst:             i_panic
        - Src:             './istream.h:225,9'
          Dst:             i_stream_read_data
    - functionName:    o_stream_create_passthrough
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 807
      functionLinenumberEnd: 811
      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_get_fd
        - p_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:810,11'
          Dst:             malloc_multiply_check
        - Src:             'ostream.c:810,11'
          Dst:             p_malloc
        - Src:             'ostream.c:811,41'
          Dst:             o_stream_get_fd
        - Src:             'ostream.c:811,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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: 719
      functionLinenumberEnd: 774
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - _stream
        - parent
        - fd
      BBCount:         48
      ICount:          350
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - io_stream_init
        - o_stream_ref
      functionUses:    5
      BranchProfiles:
        - Branch String:   'ostream.c:724,6'
          Branch Sides:
            - BranchSide:      'ostream.c:725,31'
              BranchSideFuncs:
                - o_stream_ref
                - io_stream_init
            - BranchSide:      'ostream.c:736,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:736,6'
          Branch Sides:
            - BranchSide:      'ostream.c:737,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:738,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:738,6'
          Branch Sides:
            - BranchSide:      'ostream.c:739,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:740,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:740,6'
          Branch Sides:
            - BranchSide:      'ostream.c:741,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:745,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:745,6'
          Branch Sides:
            - BranchSide:      'ostream.c:746,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:747,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:747,6'
          Branch Sides:
            - BranchSide:      'ostream.c:748,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:749,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:749,6'
          Branch Sides:
            - BranchSide:      'ostream.c:750,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:753,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:753,6'
          Branch Sides:
            - BranchSide:      'ostream.c:754,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:755,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:755,6'
          Branch Sides:
            - BranchSide:      'ostream.c:756,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:758,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:758,6'
          Branch Sides:
            - BranchSide:      'ostream.c:759,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:762,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:762,6'
          Branch Sides:
            - BranchSide:      'ostream.c:763,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:764,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:764,6'
          Branch Sides:
            - BranchSide:      'ostream.c:765,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:766,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:766,6'
          Branch Sides:
            - BranchSide:      'ostream.c:767,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:768,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:768,6'
          Branch Sides:
            - BranchSide:      'ostream.c:769,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:770,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:770,6'
          Branch Sides:
            - BranchSide:      'ostream.c:770,6'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:771,3'
              BranchSideFuncs:
                - io_stream_init
      Callsites:
        - Src:             'ostream.c:727,3'
          Dst:             o_stream_ref
        - Src:             'ostream.c:773,2'
          Dst:             io_stream_init
    - functionName:    o_stream_ref
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 90
      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:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:89,2'
          Dst:             io_stream_ref
    - functionName:    o_stream_default_close
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 533
      functionLinenumberEnd: 540
      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:538,6'
          Branch Sides:
            - BranchSide:      'ostream.c:538,6'
              BranchSideFuncs:
                - o_stream_close
            - BranchSide:      'ostream.c:539,18'
              BranchSideFuncs:
                - o_stream_close
      Callsites:
        - Src:             'ostream.c:537,8'
          Dst:             o_stream_flush
        - Src:             'ostream.c:539,3'
          Dst:             o_stream_close
    - functionName:    o_stream_default_destroy
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 548
      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:547,2'
          Dst:             o_stream_unref
    - functionName:    o_stream_default_set_max_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 560
      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:557,6'
          Branch Sides:
            - BranchSide:      'ostream.c:557,6'
              BranchSideFuncs:
                - o_stream_set_max_buffer_size
            - BranchSide:      'ostream.c:558,32'
              BranchSideFuncs:
                - o_stream_set_max_buffer_size
      Callsites:
        - Src:             'ostream.c:558,3'
          Dst:             o_stream_set_max_buffer_size
    - functionName:    o_stream_default_cork
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 575
      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:565,6'
          Branch Sides:
            - BranchSide:      'ostream.c:566,7'
              BranchSideFuncs:
                - o_stream_cork
            - BranchSide:      'ostream.c:569,25'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_uncork
        - Branch String:   'ostream.c:566,7'
          Branch Sides:
            - BranchSide:      'ostream.c:567,18'
              BranchSideFuncs:
                - o_stream_cork
            - BranchSide:      'ostream.c:568,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:567,4'
          Dst:             o_stream_cork
        - Src:             'ostream.c:569,9'
          Dst:             o_stream_flush
        - Src:             'ostream.c:573,4'
          Dst:             o_stream_uncork
    - functionName:    o_stream_default_flush
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 629
      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:625,6'
          Branch Sides:
            - BranchSide:      'ostream.c:626,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:628,31'
              BranchSideFuncs:
                - o_stream_flush_parent
      Callsites:
        - Src:             'ostream.c:628,9'
          Dst:             o_stream_flush_parent
    - functionName:    o_stream_default_set_flush_callback
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 641
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
        - callback
        - context
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_set_flush_callback
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:636,6'
          Branch Sides:
            - BranchSide:      'ostream.c:636,6'
              BranchSideFuncs:
                - o_stream_set_flush_callback
            - BranchSide:      'ostream.c:637,31'
              BranchSideFuncs:
                - o_stream_set_flush_callback
      Callsites:
        - Src:             'ostream.c:637,3'
          Dst:             o_stream_set_flush_callback
    - functionName:    o_stream_default_set_flush_pending
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 648
      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:646,6'
          Branch Sides:
            - BranchSide:      'ostream.c:646,6'
              BranchSideFuncs:
                - o_stream_set_flush_pending
            - BranchSide:      'ostream.c:647,30'
              BranchSideFuncs:
                - o_stream_set_flush_pending
      Callsites:
        - Src:             'ostream.c:647,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: 652
      functionLinenumberEnd: 657
      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:653,6'
          Branch Sides:
            - BranchSide:      'ostream.c:654,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:656,40'
              BranchSideFuncs:
                - o_stream_get_buffer_used_size
      Callsites:
        - Src:             'ostream.c:656,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: 661
      functionLinenumberEnd: 668
      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:667,9'
          Branch Sides:
            - BranchSide:      'ostream.c:667,9'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:668,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:665,16'
          Dst:             o_stream_get_buffer_used_size
    - functionName:    o_stream_default_seek
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 676
      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: 682
      functionLinenumberEnd: 691
      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:685,6'
          Branch Sides:
            - BranchSide:      'ostream.c:686,35'
              BranchSideFuncs:
                - o_stream_copy_error_from_parent
            - BranchSide:      'ostream.c:689,28'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:685,13'
          Dst:             o_stream_sendv
        - Src:             'ostream.c:686,3'
          Dst:             o_stream_copy_error_from_parent
    - functionName:    o_stream_default_write_at
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 699
      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: 705
      functionLinenumberEnd: 706
      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:706,9'
          Dst:             io_stream_copy
    - functionName:    o_stream_default_switch_ioloop_to
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 715
      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:713,6'
          Branch Sides:
            - BranchSide:      'ostream.c:713,6'
              BranchSideFuncs:
                - o_stream_switch_ioloop_to
            - BranchSide:      'ostream.c:714,29'
              BranchSideFuncs:
                - o_stream_switch_ioloop_to
      Callsites:
        - Src:             'ostream.c:714,3'
          Dst:             o_stream_switch_ioloop_to
    - functionName:    o_stream_switch_ioloop_to
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 524
      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:521,2'
          Dst:             io_stream_switch_ioloop_to
    - functionName:    io_stream_copy
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 515
      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:501,2'
          Branch Sides:
            - BranchSide:      'ostream.c:502,18'
              BranchSideFuncs:
                - o_stream_sendv
                - i_stream_skip
                - i_stream_read_more.8743
                - i_stream_have_bytes_left
            - BranchSide:      'ostream.c:510,6'
              BranchSideFuncs:
                - i_stream_have_bytes_left
        - Branch String:   'ostream.c:503,7'
          Branch Sides:
            - BranchSide:      'ostream.c:504,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:505,12'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_read_more.8743
                - i_stream_have_bytes_left
                - o_stream_sendv
        - Branch String:   'ostream.c:510,6'
          Branch Sides:
            - BranchSide:      'ostream.c:511,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:512,31'
              BranchSideFuncs:
                - i_stream_have_bytes_left
        - Branch String:   'ostream.c:512,6'
          Branch Sides:
            - BranchSide:      'ostream.c:513,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:514,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:501,9'
          Dst:             i_stream_read_more
        - Src:             'ostream.c:503,14'
          Dst:             o_stream_sendv
        - Src:             'ostream.c:507,3'
          Dst:             i_stream_skip
        - Src:             'ostream.c:512,6'
          Dst:             i_stream_have_bytes_left
    - functionName:    i_stream_read_more
      functionSourceFile: '/src/dovecot/src/lib/./istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 234
      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:233,2'
          Branch Sides:
            - BranchSide:      './istream.h:233,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './istream.h:233,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './istream.h:232,12'
          Dst:             i_stream_read_bytes
        - Src:             './istream.h:233,2'
          Dst:             i_panic
    - functionName:    o_stream_sendv
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 318
      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:313,6'
          Branch Sides:
            - BranchSide:      'ostream.c:313,6'
              BranchSideFuncs:
                - o_stream_sendv_int
                - __errno_location
            - BranchSide:      'ostream.c:313,6'
              BranchSideFuncs:
                - o_stream_sendv_int
                - __errno_location
        - Branch String:   'ostream.c:313,6'
          Branch Sides:
            - BranchSide:      'ostream.c:314,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:317,28'
              BranchSideFuncs:
                - o_stream_sendv_int
      Callsites:
        - Src:             'ostream.c:314,3'
          Dst:             __errno_location
        - Src:             'ostream.c:317,9'
          Dst:             o_stream_sendv_int
    - functionName:    o_stream_sendv_int
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 306
      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:286,2'
          Branch Sides:
            - BranchSide:      'ostream.c:287,17'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
            - BranchSide:      'ostream.c:288,6'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:288,6'
          Branch Sides:
            - BranchSide:      'ostream.c:289,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:291,2'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:291,2'
          Branch Sides:
            - BranchSide:      'ostream.c:291,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:292,8'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:293,6'
          Branch Sides:
            - BranchSide:      'ostream.c:294,3'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
            - BranchSide:      'ostream.c:295,6'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:295,6'
          Branch Sides:
            - BranchSide:      'ostream.c:296,7'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
            - BranchSide:      'ostream.c:305,9'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:296,7'
          Branch Sides:
            - BranchSide:      'ostream.c:297,4'
              BranchSideFuncs:
                - __errno_location
                - i_panic
            - BranchSide:      'ostream.c:300,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream.c:297,4'
          Branch Sides:
            - BranchSide:      'ostream.c:297,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:298,12'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'ostream.c:300,4'
          Branch Sides:
            - BranchSide:      'ostream.c:300,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:301,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:291,2'
          Dst:             i_panic
        - Src:             'ostream.c:297,4'
          Dst:             i_panic
        - Src:             'ostream.c:298,4'
          Dst:             __errno_location
        - Src:             'ostream.c:300,4'
          Dst:             i_panic
    - functionName:    o_stream_copy_error_from_parent
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 588
      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:582,2'
          Branch Sides:
            - BranchSide:      'ostream.c:582,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:584,23'
              BranchSideFuncs:
                - o_stream_close
        - Branch String:   'ostream.c:586,6'
          Branch Sides:
            - BranchSide:      'ostream.c:586,6'
              BranchSideFuncs:
                - o_stream_close
            - BranchSide:      'ostream.c:587,18'
              BranchSideFuncs:
                - o_stream_close
      Callsites:
        - Src:             'ostream.c:582,2'
          Dst:             i_panic
        - Src:             'ostream.c:587,3'
          Dst:             o_stream_close
    - functionName:    o_stream_close
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 132
      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:130,6'
          Branch Sides:
            - BranchSide:      'ostream.c:130,6'
              BranchSideFuncs:
                - o_stream_close_full
            - BranchSide:      'ostream.c:131,23'
              BranchSideFuncs:
                - o_stream_close_full
      Callsites:
        - Src:             'ostream.c:131,3'
          Dst:             o_stream_close_full
    - functionName:    o_stream_close_full
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parents
      BBCount:         18
      ICount:          119
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - io_stream_close
        - o_stream_flush
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream.c:58,6'
          Branch Sides:
            - BranchSide:      'ostream.c:59,3'
              BranchSideFuncs:
                - io_stream_close
                - i_panic
            - BranchSide:      'ostream.c:61,7'
              BranchSideFuncs:
                - io_stream_close
        - Branch String:   'ostream.c:59,3'
          Branch Sides:
            - BranchSide:      'ostream.c:59,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:61,7'
              BranchSideFuncs:
                - io_stream_close
        - Branch String:   'ostream.c:61,22'
          Branch Sides:
            - BranchSide:      'ostream.c:61,26'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:71,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:61,6'
          Branch Sides:
            - BranchSide:      'ostream.c:66,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:71,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:71,6'
          Branch Sides:
            - BranchSide:      'ostream.c:71,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:72,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:58,6'
          Dst:             o_stream_flush
        - Src:             'ostream.c:59,3'
          Dst:             i_panic
        - Src:             'ostream.c:67,3'
          Dst:             io_stream_close
    - functionName:    o_stream_flush
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 221
      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:203,6'
          Branch Sides:
            - BranchSide:      'ostream.c:203,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - o_stream_get_max_buffer_size
                - io_stream_set_error
                - __errno_location
                - __errno_location
            - BranchSide:      'ostream.c:203,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - o_stream_get_max_buffer_size
                - io_stream_set_error
                - __errno_location
                - __errno_location
        - Branch String:   'ostream.c:203,6'
          Branch Sides:
            - BranchSide:      'ostream.c:204,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:208,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - o_stream_get_max_buffer_size
                - io_stream_set_error
                - __errno_location
        - Branch String:   'ostream.c:208,6'
          Branch Sides:
            - BranchSide:      'ostream.c:209,24'
              BranchSideFuncs:
                - o_stream_get_max_buffer_size
                - io_stream_set_error
                - __errno_location
            - BranchSide:      'ostream.c:216,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:216,6'
          Branch Sides:
            - BranchSide:      'ostream.c:217,3'
              BranchSideFuncs:
                - __errno_location
                - i_panic
            - BranchSide:      'ostream.c:220,9'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:217,3'
          Branch Sides:
            - BranchSide:      'ostream.c:217,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:218,11'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'ostream.c:201,2'
          Dst:             o_stream_ignore_last_errors
        - Src:             'ostream.c:204,3'
          Dst:             __errno_location
        - Src:             'ostream.c:211,4'
          Dst:             o_stream_get_max_buffer_size
        - Src:             'ostream.c:209,3'
          Dst:             io_stream_set_error
        - Src:             'ostream.c:212,3'
          Dst:             __errno_location
        - Src:             'ostream.c:217,3'
          Dst:             i_panic
        - Src:             'ostream.c:218,3'
          Dst:             __errno_location
    - functionName:    o_stream_ignore_last_errors
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 377
      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:373,2'
          Branch Sides:
            - BranchSide:      'ostream.c:374,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:377,1'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_get_max_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      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: 234
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_set_flush_pending
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - set
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'ostream.c:227,6'
          Branch Sides:
            - BranchSide:      'ostream.c:227,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:227,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:227,6'
          Branch Sides:
            - BranchSide:      'ostream.c:228,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:230,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_set_flush_callback
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 142
      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: 608
      functionLinenumberEnd: 620
      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:611,2'
          Branch Sides:
            - BranchSide:      'ostream.c:611,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:613,7'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_copy_error_from_parent
                - o_stream_finish
        - Branch String:   'ostream.c:613,25'
          Branch Sides:
            - BranchSide:      'ostream.c:613,29'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_copy_error_from_parent
                - o_stream_finish
            - BranchSide:      'ostream.c:615,24'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_copy_error_from_parent
        - Branch String:   'ostream.c:613,57'
          Branch Sides:
            - BranchSide:      'ostream.c:614,7'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_copy_error_from_parent
                - o_stream_finish
            - BranchSide:      'ostream.c:615,24'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_copy_error_from_parent
        - Branch String:   'ostream.c:613,6'
          Branch Sides:
            - BranchSide:      'ostream.c:615,24'
              BranchSideFuncs:
                - o_stream_finish
                - o_stream_copy_error_from_parent
            - BranchSide:      'ostream.c:617,25'
              BranchSideFuncs:
                - o_stream_finish
                - o_stream_copy_error_from_parent
        - Branch String:   'ostream.c:618,6'
          Branch Sides:
            - BranchSide:      'ostream.c:618,6'
              BranchSideFuncs:
                - o_stream_copy_error_from_parent
            - BranchSide:      'ostream.c:619,35'
              BranchSideFuncs:
                - o_stream_copy_error_from_parent
      Callsites:
        - Src:             'ostream.c:611,2'
          Dst:             i_panic
        - Src:             'ostream.c:615,9'
          Dst:             o_stream_flush
        - Src:             'ostream.c:617,9'
          Dst:             o_stream_finish
        - Src:             'ostream.c:619,3'
          Dst:             o_stream_copy_error_from_parent
    - functionName:    o_stream_finish
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 358
      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:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:358,9'
          Dst:             o_stream_flush
    - functionName:    o_stream_cork
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    11
      BranchProfiles:
        - Branch String:   'ostream.c:173,6'
          Branch Sides:
            - BranchSide:      'ostream.c:173,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:173,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:173,6'
          Branch Sides:
            - BranchSide:      'ostream.c:174,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:176,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_uncork
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    12
      BranchProfiles:
        - Branch String:   'ostream.c:183,6'
          Branch Sides:
            - BranchSide:      'ostream.c:183,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:183,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:183,6'
          Branch Sides:
            - BranchSide:      'ostream.c:184,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:186,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_set_max_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 162
      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:161,2'
          Dst:             io_stream_set_max_buffer_size
    - functionName:    o_stream_unref
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 111
      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:96,6'
          Branch Sides:
            - BranchSide:      'ostream.c:97,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:99,12'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
                - o_stream_get_name
                - i_panic
        - Branch String:   'ostream.c:101,51'
          Branch Sides:
            - BranchSide:      'ostream.c:102,7'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
                - o_stream_get_name
                - i_panic
            - BranchSide:      'ostream.c:108,24'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
        - Branch String:   'ostream.c:102,52'
          Branch Sides:
            - BranchSide:      'ostream.c:103,6'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
            - BranchSide:      'ostream.c:108,24'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
        - Branch String:   'ostream.c:101,6'
          Branch Sides:
            - BranchSide:      'ostream.c:105,22'
              BranchSideFuncs:
                - o_stream_get_name
                - i_panic
            - BranchSide:      'ostream.c:108,24'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
        - Branch String:   'ostream.c:108,6'
          Branch Sides:
            - BranchSide:      'ostream.c:109,19'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:110,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:105,4'
          Dst:             o_stream_get_name
        - Src:             'ostream.c:104,3'
          Dst:             i_panic
        - Src:             'ostream.c:108,7'
          Dst:             io_stream_unref
        - Src:             'ostream.c:109,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: 795
      functionLinenumberEnd: 803
      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:800,11'
          Dst:             o_stream_create_error
        - Src:             'ostream.c:801,2'
          Dst:             io_stream_set_verror
    - functionName:    o_stream_create_error
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 790
      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:782,11'
          Dst:             malloc_multiply_check
        - Src:             'ostream.c:782,11'
          Dst:             p_malloc
        - Src:             'ostream.c:787,11'
          Dst:             o_stream_create
        - Src:             'ostream.c:788,2'
          Dst:             o_stream_set_no_error_handling
        - Src:             'ostream.c:789,2'
          Dst:             o_stream_set_name
    - functionName:    o_stream_set_no_error_handling
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 389
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - set
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      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:    6
      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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_flush_parent_if_needed
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 605
      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:592,6'
          Branch Sides:
            - BranchSide:      'ostream.c:597,22'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_get_buffer_used_size
                - o_stream_copy_error_from_parent
            - BranchSide:      'ostream.c:604,2'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:597,7'
          Branch Sides:
            - BranchSide:      'ostream.c:598,36'
              BranchSideFuncs:
                - o_stream_copy_error_from_parent
            - BranchSide:      'ostream.c:601,37'
              BranchSideFuncs:
                - o_stream_get_buffer_used_size
        - Branch String:   'ostream.c:601,7'
          Branch Sides:
            - BranchSide:      'ostream.c:602,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:603,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:592,6'
          Dst:             o_stream_get_buffer_used_size
        - Src:             'ostream.c:597,7'
          Dst:             o_stream_flush
        - Src:             'ostream.c:598,4'
          Dst:             o_stream_copy_error_from_parent
        - Src:             'ostream.c:601,7'
          Dst:             o_stream_get_buffer_used_size
    - functionName:    o_stream_switch_ioloop
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 527
      functionLinenumberEnd: 529
      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:528,2'
          Dst:             o_stream_switch_ioloop_to
    - functionName:    o_stream_get_last_write_time
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 492
      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: 468
      functionLinenumberEnd: 487
      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:471,6'
          Branch Sides:
            - BranchSide:      'ostream.c:471,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - i_panic
                - __errno_location
            - BranchSide:      'ostream.c:471,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - i_panic
                - __errno_location
        - Branch String:   'ostream.c:471,6'
          Branch Sides:
            - BranchSide:      'ostream.c:472,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:476,2'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:476,2'
          Branch Sides:
            - BranchSide:      'ostream.c:476,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:477,8'
              BranchSideFuncs:
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:479,6'
          Branch Sides:
            - BranchSide:      'ostream.c:480,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:481,11'
              BranchSideFuncs:
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:482,3'
          Branch Sides:
            - BranchSide:      'ostream.c:482,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:483,11'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'ostream.c:472,3'
          Dst:             __errno_location
        - Src:             'ostream.c:476,2'
          Dst:             i_panic
        - Src:             'ostream.c:482,3'
          Dst:             i_panic
        - Src:             'ostream.c:483,3'
          Dst:             __errno_location
    - functionName:    o_stream_nsend_istream
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 464
      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:443,2'
          Branch Sides:
            - BranchSide:      'ostream.c:443,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:445,32'
              BranchSideFuncs:
                - o_stream_send_istream
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
                - i_unreached
        - Branch String:   'ostream.c:445,2'
          Branch Sides:
            - BranchSide:      'ostream.c:445,2'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:447,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:449,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'ostream.c:451,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:454,29'
              BranchSideFuncs:
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
            - BranchSide:      'ostream.c:461,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:443,2'
          Dst:             i_panic
        - Src:             'ostream.c:445,10'
          Dst:             o_stream_send_istream
        - Src:             'ostream.c:449,3'
          Dst:             i_unreached
        - Src:             'ostream.c:457,4'
          Dst:             i_stream_get_name
        - Src:             'ostream.c:458,4'
          Dst:             i_stream_get_error
        - Src:             'ostream.c:455,3'
          Dst:             io_stream_set_error
    - functionName:    o_stream_send_istream
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 439
      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:401,6'
          Branch Sides:
            - BranchSide:      'ostream.c:401,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:401,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:401,6'
          Branch Sides:
            - BranchSide:      'ostream.c:402,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:405,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:405,6'
          Branch Sides:
            - BranchSide:      'ostream.c:405,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:405,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:405,6'
          Branch Sides:
            - BranchSide:      'ostream.c:406,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:410,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:410,2'
          Branch Sides:
            - BranchSide:      'ostream.c:410,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:411,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:412,2'
          Branch Sides:
            - BranchSide:      'ostream.c:414,3'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'ostream.c:419,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'ostream.c:422,3'
              BranchSideFuncs:
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
            - BranchSide:      'ostream.c:426,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:429,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:433,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream.c:414,3'
          Branch Sides:
            - BranchSide:      'ostream.c:414,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:415,3'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:415,3'
          Branch Sides:
            - BranchSide:      'ostream.c:415,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:416,3'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:416,3'
          Branch Sides:
            - BranchSide:      'ostream.c:416,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:417,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream.c:419,3'
          Branch Sides:
            - BranchSide:      'ostream.c:419,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:420,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream.c:422,3'
          Branch Sides:
            - BranchSide:      'ostream.c:422,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:423,30'
              BranchSideFuncs:
                - o_stream_set_flush_pending
                - i_panic
        - Branch String:   'ostream.c:426,3'
          Branch Sides:
            - BranchSide:      'ostream.c:426,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:427,10'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:429,3'
          Branch Sides:
            - BranchSide:      'ostream.c:429,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:430,10'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:433,2'
          Branch Sides:
            - BranchSide:      'ostream.c:433,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:436,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:436,6'
          Branch Sides:
            - BranchSide:      'ostream.c:437,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:438,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:402,3'
          Dst:             __errno_location
        - Src:             'ostream.c:406,3'
          Dst:             __errno_location
        - Src:             'ostream.c:410,2'
          Dst:             i_panic
        - Src:             'ostream.c:414,3'
          Dst:             i_panic
        - Src:             'ostream.c:415,3'
          Dst:             i_panic
        - Src:             'ostream.c:416,3'
          Dst:             i_stream_have_bytes_left
        - Src:             'ostream.c:416,3'
          Dst:             i_panic
        - Src:             'ostream.c:419,3'
          Dst:             i_panic
        - Src:             'ostream.c:422,3'
          Dst:             i_panic
        - Src:             'ostream.c:423,3'
          Dst:             o_stream_set_flush_pending
        - Src:             'ostream.c:426,3'
          Dst:             i_panic
        - Src:             'ostream.c:429,3'
          Dst:             i_panic
        - Src:             'ostream.c:433,2'
          Dst:             i_panic
    - functionName:    o_stream_abort
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 386
      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:382,6'
          Branch Sides:
            - BranchSide:      'ostream.c:383,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:384,23'
              BranchSideFuncs:
                - io_stream_set_error
      Callsites:
        - Src:             'ostream.c:381,2'
          Dst:             o_stream_ignore_last_errors
        - Src:             'ostream.c:384,2'
          Dst:             io_stream_set_error
    - functionName:    o_stream_set_finish_via_child
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 369
      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: 362
      functionLinenumberEnd: 364
      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: 351
      functionLinenumberEnd: 353
      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:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:352,30'
          Dst:             strlen
        - Src:             'ostream.c:352,2'
          Dst:             o_stream_nsend
    - functionName:    o_stream_nsend
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 334
      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:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:333,2'
          Dst:             o_stream_nsendv
    - functionName:    o_stream_nsendv
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 348
      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:    2
      BranchProfiles:
        - Branch String:   'ostream.c:341,6'
          Branch Sides:
            - BranchSide:      'ostream.c:341,6'
              BranchSideFuncs:
                - o_stream_sendv_int
            - BranchSide:      'ostream.c:341,6'
              BranchSideFuncs:
                - o_stream_sendv_int
        - Branch String:   'ostream.c:341,6'
          Branch Sides:
            - BranchSide:      'ostream.c:341,6'
              BranchSideFuncs:
                - o_stream_sendv_int
            - BranchSide:      'ostream.c:341,6'
              BranchSideFuncs:
                - o_stream_sendv_int
        - Branch String:   'ostream.c:341,6'
          Branch Sides:
            - BranchSide:      'ostream.c:343,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:344,27'
              BranchSideFuncs:
                - o_stream_sendv_int
        - Branch String:   'ostream.c:345,6'
          Branch Sides:
            - BranchSide:      'ostream.c:346,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:347,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:344,8'
          Dst:             o_stream_sendv_int
    - functionName:    o_stream_send_str
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 322
      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:322,36'
          Dst:             strlen
        - Src:             'ostream.c:322,9'
          Dst:             o_stream_send
    - functionName:    o_stream_send
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 272
      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:272,10'
          Dst:             o_stream_sendv
    - functionName:    o_stream_seek
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 262
      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:251,6'
          Branch Sides:
            - BranchSide:      'ostream.c:251,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - __errno_location
            - BranchSide:      'ostream.c:251,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - __errno_location
        - Branch String:   'ostream.c:251,6'
          Branch Sides:
            - BranchSide:      'ostream.c:252,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:256,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:256,6'
          Branch Sides:
            - BranchSide:      'ostream.c:257,3'
              BranchSideFuncs:
                - __errno_location
                - i_panic
            - BranchSide:      'ostream.c:261,2'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:257,3'
          Branch Sides:
            - BranchSide:      'ostream.c:257,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:258,11'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'ostream.c:252,3'
          Dst:             __errno_location
        - Src:             'ostream.c:257,3'
          Dst:             i_panic
        - Src:             'ostream.c:258,3'
          Dst:             __errno_location
    - functionName:    o_stream_get_buffer_avail_size
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 244
      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: 190
      functionLinenumberEnd: 193
      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: 153
      functionLinenumberEnd: 156
      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: 145
      functionLinenumberEnd: 149
      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_remove_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 126
      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:124,2'
          Dst:             io_stream_remove_destroy_callback
    - functionName:    o_stream_add_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 119
      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:117,2'
          Dst:             io_stream_add_destroy_callback
    - functionName:    o_stream_destroy
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 85
      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:    3
      BranchProfiles:
        - Branch String:   'ostream.c:79,6'
          Branch Sides:
            - BranchSide:      'ostream.c:80,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:82,3'
              BranchSideFuncs:
                - o_stream_close_full
                - o_stream_unref
      Callsites:
        - Src:             'ostream.c:83,2'
          Dst:             o_stream_close_full
        - Src:             'ostream.c:84,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:    8
      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:    o_stream_buffer_get_buffer_used_size
      functionSourceFile: '/src/dovecot/src/lib/ostream-buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_buffer_write_at
      functionSourceFile: '/src/dovecot/src/lib/ostream-buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - data
        - size
        - offset
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-buffer.c:30,2'
          Dst:             buffer_write
    - functionName:    o_stream_buffer_sendv
      functionSourceFile: '/src/dovecot/src/lib/ostream-buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - stream
        - iov
        - iov_count
      BBCount:         16
      ICount:          160
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - buffer_write
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-buffer.c:44,11'
          Branch Sides:
            - BranchSide:      'ostream-buffer.c:44,29'
              BranchSideFuncs:
                - buffer_write
            - BranchSide:      'ostream-buffer.c:44,54'
              BranchSideFuncs:
                - buffer_write
        - Branch String:   'ostream-buffer.c:46,2'
          Branch Sides:
            - BranchSide:      'ostream-buffer.c:46,2'
              BranchSideFuncs:
                - buffer_write
            - BranchSide:      'ostream-buffer.c:47,10'
              BranchSideFuncs:
                - buffer_write
        - Branch String:   'ostream-buffer.c:49,7'
          Branch Sides:
            - BranchSide:      'ostream-buffer.c:49,5'
              BranchSideFuncs:
                - buffer_write
            - BranchSide:      'ostream-buffer.c:49,5'
              BranchSideFuncs:
                - buffer_write
        - Branch String:   'ostream-buffer.c:53,7'
          Branch Sides:
            - BranchSide:      'ostream-buffer.c:54,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-buffer.c:55,2'
              BranchSideFuncs:
                - buffer_write
      Callsites:
        - Src:             'ostream-buffer.c:50,3'
          Dst:             buffer_write
    - functionName:    o_stream_buffer_seek
      functionSourceFile: '/src/dovecot/src/lib/ostream-buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 20
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - offset
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      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:    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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    o_stream_create_buffer
      functionSourceFile: '/src/dovecot/src/lib/ostream-buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - buf
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - o_stream_create
        - o_stream_set_name
        - p_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-buffer.c:73,12'
          Dst:             malloc_multiply_check
        - Src:             'ostream-buffer.c:73,12'
          Dst:             p_malloc
        - Src:             'ostream-buffer.c:85,11'
          Dst:             o_stream_create
        - Src:             'ostream-buffer.c:86,2'
          Dst:             o_stream_set_name
    - functionName:    i_stream_read_bytes
      functionSourceFile: '/src/dovecot/src/lib/./istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 225
      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:224,2'
          Branch Sides:
            - BranchSide:      './istream.h:224,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './istream.h:224,2'
              BranchSideFuncs:
                - i_stream_read_data
      Callsites:
        - Src:             './istream.h:224,2'
          Dst:             i_panic
        - Src:             './istream.h:225,9'
          Dst:             i_stream_read_data
    - functionName:    io_stream_copy_backwards
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 862
      functionLinenumberEnd: 941
      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:870,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:870,2'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
                - i_panic
            - BranchSide:      'ostream-file.c:870,2'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
                - i_panic
        - Branch String:   'ostream-file.c:870,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:870,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:873,16'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
        - Branch String:   'ostream-file.c:874,23'
          Branch Sides:
            - BranchSide:      'ostream-file.c:874,26'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
            - BranchSide:      'ostream-file.c:875,7'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
        - Branch String:   'ostream-file.c:874,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:875,7'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
            - BranchSide:      'ostream-file.c:884,20'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
        - Branch String:   'ostream-file.c:875,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:876,25'
              BranchSideFuncs:
                - o_stream_grow_buffer
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
            - BranchSide:      'ostream-file.c:881,17'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
        - Branch String:   'ostream-file.c:888,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:889,7'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
            - BranchSide:      'ostream-file.c:936,16'
              BranchSideFuncs:
                - i_stream_seek
        - Branch String:   'ostream-file.c:889,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:890,16'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
            - BranchSide:      'ostream-file.c:892,16'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
        - Branch String:   'ostream-file.c:897,4'
          Branch Sides:
            - BranchSide:      'ostream-file.c:897,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:899,18'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8942
                - i_panic
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
        - Branch String:   'ostream-file.c:903,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:905,5'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'ostream-file.c:906,8'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8942
                - i_unreached
                - i_panic
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8951
                - i_panic
        - Branch String:   'ostream-file.c:906,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:907,12'
              BranchSideFuncs:
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - i_unreached
                - i_panic
                - __errno_location
                - i_memcpy.8951
                - i_panic
            - BranchSide:      'ostream-file.c:920,17'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
        - Branch String:   'ostream-file.c:908,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:911,6'
              BranchSideFuncs:
                - i_memcpy.8951
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - i_unreached
                - i_panic
                - __errno_location
                - i_panic
            - BranchSide:      'ostream-file.c:916,5'
              BranchSideFuncs:
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
                - __errno_location
        - Branch String:   'ostream-file.c:911,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:911,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:913,6'
              BranchSideFuncs:
                - i_memcpy.8951
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - i_panic
                - i_unreached
                - i_panic
                - __errno_location
        - Branch String:   'ostream-file.c:928,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:930,38'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream-file.c:933,17'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8942
                - pwrite_full
                - __errno_location
                - i_memcpy.8951
                - i_panic
                - i_unreached
                - i_panic
      Callsites:
        - Src:             'ostream-file.c:870,2'
          Dst:             i_panic
        - Src:             'ostream-file.c:876,4'
          Dst:             o_stream_grow_buffer
        - Src:             'ostream-file.c:897,4'
          Dst:             i_panic
        - Src:             'ostream-file.c:899,4'
          Dst:             i_stream_seek
        - Src:             'ostream-file.c:903,8'
          Dst:             i_stream_read_bytes
        - Src:             'ostream-file.c:905,5'
          Dst:             i_unreached
        - Src:             'ostream-file.c:911,6'
          Dst:             i_panic
        - Src:             'ostream-file.c:913,6'
          Dst:             i_memcpy
        - Src:             'ostream-file.c:927,9'
          Dst:             pwrite_full
        - Src:             'ostream-file.c:930,38'
          Dst:             __errno_location
        - Src:             'ostream-file.c:933,3'
          Dst:             i_stream_skip
        - Src:             'ostream-file.c:936,2'
          Dst:             i_stream_seek
    - functionName:    o_stream_grow_buffer
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 521
      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:494,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:496,10'
              BranchSideFuncs:
                - i_realloc
            - BranchSide:      'ostream-file.c:497,13'
              BranchSideFuncs:
                - i_realloc
        - Branch String:   'ostream-file.c:499,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:499,12'
              BranchSideFuncs:
                - i_realloc
            - BranchSide:      'ostream-file.c:499,12'
              BranchSideFuncs:
                - i_realloc
        - Branch String:   'ostream-file.c:501,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:502,11'
              BranchSideFuncs:
                - i_realloc
            - BranchSide:      'ostream-file.c:503,2'
              BranchSideFuncs:
                - i_realloc
        - Branch String:   'ostream-file.c:505,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:506,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:508,30'
              BranchSideFuncs:
                - i_realloc
        - Branch String:   'ostream-file.c:511,37'
          Branch Sides:
            - BranchSide:      'ostream-file.c:511,41'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:519,2'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:511,41'
          Branch Sides:
            - BranchSide:      'ostream-file.c:511,41'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:513,14'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:511,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:513,14'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:519,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:493,9'
          Dst:             nearest_power
        - Src:             'ostream-file.c:508,20'
          Dst:             i_realloc
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    io_stream_copy_same_stream
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 946
      functionLinenumberEnd: 978
      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:952,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:953,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:954,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:954,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:959,26'
              BranchSideFuncs:
                - io_stream_copy
            - BranchSide:      'ostream-file.c:961,2'
              BranchSideFuncs:
                - i_stream_get_absolute_offset
                - io_stream_copy
                - io_stream_copy_backwards
                - i_panic
                - i_panic
        - Branch String:   'ostream-file.c:961,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:961,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:963,47'
              BranchSideFuncs:
                - i_stream_get_absolute_offset
                - io_stream_copy
                - io_stream_copy_backwards
                - i_panic
        - Branch String:   'ostream-file.c:965,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:968,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:970,6'
              BranchSideFuncs:
                - io_stream_copy
                - io_stream_copy_backwards
                - i_panic
        - Branch String:   'ostream-file.c:970,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:970,17'
              BranchSideFuncs:
                - io_stream_copy
                - io_stream_copy_backwards
                - i_panic
            - BranchSide:      'ostream-file.c:976,26'
              BranchSideFuncs:
                - io_stream_copy
        - Branch String:   'ostream-file.c:970,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:972,3'
              BranchSideFuncs:
                - io_stream_copy_backwards
                - i_panic
            - BranchSide:      'ostream-file.c:976,26'
              BranchSideFuncs:
                - io_stream_copy
        - Branch String:   'ostream-file.c:972,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:972,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:973,35'
              BranchSideFuncs:
                - io_stream_copy_backwards
      Callsites:
        - Src:             'ostream-file.c:952,13'
          Dst:             i_stream_get_size
        - Src:             'ostream-file.c:959,10'
          Dst:             io_stream_copy
        - Src:             'ostream-file.c:961,2'
          Dst:             i_panic
        - Src:             'ostream-file.c:963,18'
          Dst:             i_stream_get_absolute_offset
        - Src:             'ostream-file.c:972,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:973,10'
          Dst:             io_stream_copy_backwards
        - Src:             'ostream-file.c:976,10'
          Dst:             io_stream_copy
    - functionName:    io_stream_sendfile
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 765
      functionLinenumberEnd: 857
      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:772,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:773,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:776,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:776,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:778,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:781,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:784,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:785,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:787,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:792,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:793,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:797,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:799,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:800,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:843,16'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
        - Branch String:   'ostream-file.c:804,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:803,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:803,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:805,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:806,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:837,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:806,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:808,19'
              BranchSideFuncs:
                - i_stream_seek
            - BranchSide:      'ostream-file.c:813,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:813,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:814,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:819,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:814,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:816,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:818,4'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - i_stream_seek
                - i_panic
        - Branch String:   'ostream-file.c:819,24'
          Branch Sides:
            - BranchSide:      'ostream-file.c:819,27'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
            - BranchSide:      'ostream-file.c:820,10'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
        - Branch String:   'ostream-file.c:819,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:0,0'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
            - BranchSide:      'ostream-file.c:820,10'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
        - Branch String:   'ostream-file.c:824,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:825,28'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
            - BranchSide:      'ostream-file.c:827,26'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - i_stream_seek
                - i_panic
        - Branch String:   'ostream-file.c:844,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:845,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:849,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:849,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:849,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:850,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:850,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:851,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:852,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:852,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:853,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:855,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:772,13'
          Dst:             i_stream_get_size
        - Src:             'ostream-file.c:781,2'
          Dst:             o_stream_socket_cork
        - Src:             'ostream-file.c:784,13'
          Dst:             buffer_flush
        - Src:             'ostream-file.c:792,6'
          Dst:             o_stream_lseek
        - Src:             'ostream-file.c:798,21'
          Dst:             i_stream_get_absolute_offset
        - Src:             'ostream-file.c:803,9'
          Dst:             safe_sendfile
        - Src:             'ostream-file.c:808,5'
          Dst:             i_stream_seek
        - Src:             'ostream-file.c:814,9'
          Dst:             __errno_location
        - Src:             'ostream-file.c:819,9'
          Dst:             __errno_location
        - Src:             'ostream-file.c:819,27'
          Dst:             __errno_location
        - Src:             'ostream-file.c:824,8'
          Dst:             __errno_location
        - Src:             'ostream-file.c:827,5'
          Dst:             io_stream_set_error
        - Src:             'ostream-file.c:829,39'
          Dst:             __errno_location
        - Src:             'ostream-file.c:832,5'
          Dst:             stream_closed
        - Src:             'ostream-file.c:843,2'
          Dst:             i_stream_seek
        - Src:             'ostream-file.c:849,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: 336
      functionLinenumberEnd: 351
      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:342,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:343,35'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - update_buffer
            - BranchSide:      'ostream-file.c:350,9'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:344,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:345,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:347,17'
              BranchSideFuncs:
                - update_buffer
        - Branch String:   'ostream-file.c:350,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:350,9'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:350,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:341,12'
          Dst:             o_stream_fill_iovec
        - Src:             'ostream-file.c:343,9'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:347,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: 37
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
      BBCount:         14
      ICount:          89
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - close
        - i_error
        - io_remove
        - o_stream_get_name
      functionUses:    5
      BranchProfiles:
        - 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,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:40,6'
              BranchSideFuncs:
                - close
                - o_stream_get_name
                - i_error
                - __errno_location
            - 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:38,2'
          Dst:             io_remove
        - 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:    o_stream_fill_iovec
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 333
      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:315,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:315,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:318,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:315,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:316,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:318,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:318,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:319,21'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:323,21'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:325,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:326,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:328,22'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_file_writev_full
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - fstream
        - iov
        - iov_count
      BBCount:         73
      ICount:          452
      EdgeCount:       91
      CyclomaticComplexity: 20
      functionsReached:
        - __errno_location
        - i_panic
        - io_stream_set_error
        - 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
            - 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
        - Branch String:   'ostream-file.c:246,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:247,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:262,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:247,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:247,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:248,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:248,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:249,8'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - o_stream_file_writev_full
            - BranchSide:      'ostream-file.c:253,14'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:249,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:251,38'
              BranchSideFuncs:
                - o_stream_file_writev_full
            - BranchSide:      'ostream-file.c:253,3'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:253,30'
          Branch Sides:
            - BranchSide:      'ostream-file.c:253,33'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:255,4'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:253,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:255,4'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:262,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:262,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:262,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:262,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:264,3'
              BranchSideFuncs:
                - stream_closed
            - BranchSide:      'ostream-file.c:268,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:269,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:269,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:306,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:269,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:273,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:306,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:274,24'
          Branch Sides:
            - BranchSide:      'ostream-file.c:274,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:274,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:274,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:275,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:279,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:279,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:279,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:280,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:280,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:281,37'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
            - BranchSide:      'ostream-file.c:287,5'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
                - o_stream_file_writev_full
                - i_panic
        - Branch String:   'ostream-file.c:291,5'
          Branch Sides:
            - BranchSide:      'ostream-file.c:291,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:293,9'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_file_writev_full
        - Branch String:   'ostream-file.c:293,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:294,13'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
            - BranchSide:      'ostream-file.c:298,4'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'ostream-file.c:300,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:300,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:301,7'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:301,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:302,10'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:304,11'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:306,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:306,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:306,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:306,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:306,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:306,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:306,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:306,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:308,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:242,2'
          Dst:             o_stream_socket_cork
        - Src:             'ostream-file.c:247,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:249,8'
          Dst:             __errno_location
        - Src:             'ostream-file.c:251,12'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:253,14'
          Dst:             __errno_location
        - Src:             'ostream-file.c:253,33'
          Dst:             __errno_location
        - Src:             'ostream-file.c:257,3'
          Dst:             io_stream_set_error
        - Src:             'ostream-file.c:258,43'
          Dst:             __errno_location
        - Src:             'ostream-file.c:259,3'
          Dst:             stream_closed
        - Src:             'ostream-file.c:265,3'
          Dst:             stream_closed
        - Src:             'ostream-file.c:279,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:281,11'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:289,11'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:291,5'
          Dst:             i_panic
        - Src:             'ostream-file.c:295,13'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:300,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:306,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: 677
      functionLinenumberEnd: 699
      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:680,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:682,3'
              BranchSideFuncs:
                - i_memcpy.8951
                - i_memcpy.8951
                - i_panic
            - BranchSide:      'ostream-file.c:686,11'
              BranchSideFuncs:
                - i_memcpy.8951
                - i_memcpy.8951
        - Branch String:   'ostream-file.c:682,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:682,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:683,11'
              BranchSideFuncs:
                - i_memcpy.8951
                - i_memcpy.8951
        - Branch String:   'ostream-file.c:688,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:688,12'
              BranchSideFuncs:
                - i_memcpy.8951
                - i_memcpy.8951
            - BranchSide:      'ostream-file.c:688,12'
              BranchSideFuncs:
                - i_memcpy.8951
                - i_memcpy.8951
        - Branch String:   'ostream-file.c:693,15'
          Branch Sides:
            - BranchSide:      'ostream-file.c:693,18'
              BranchSideFuncs:
                - i_memcpy.8951
            - BranchSide:      'ostream-file.c:693,15'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:693,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:693,6'
              BranchSideFuncs:
                - i_memcpy.8951
            - BranchSide:      'ostream-file.c:695,15'
              BranchSideFuncs:
                - i_memcpy.8951
        - Branch String:   'ostream-file.c:695,15'
          Branch Sides:
            - BranchSide:      'ostream-file.c:695,13'
              BranchSideFuncs:
                - i_memcpy.8951
            - BranchSide:      'ostream-file.c:695,13'
              BranchSideFuncs:
                - i_memcpy.8951
      Callsites:
        - Src:             'ostream-file.c:682,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:689,2'
          Dst:             i_memcpy
        - Src:             'ostream-file.c:696,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: 354
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - net_set_tcp_nodelay
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:355,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:361,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:362,33'
              BranchSideFuncs:
                - net_set_tcp_nodelay
      Callsites:
        - Src:             'ostream-file.c:355,6'
          Dst:             net_set_tcp_nodelay
        - Src:             'ostream-file.c:362,13'
          Dst:             net_set_tcp_nodelay
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    stream_send_io
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 563
      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:537,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:538,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:539,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:539,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:540,9'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
                - o_stream_uncork
            - BranchSide:      'ostream-file.c:542,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:543,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:544,19'
              BranchSideFuncs:
                - o_stream_uncork
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
            - BranchSide:      'ostream-file.c:546,6'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
        - Branch String:   'ostream-file.c:546,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:547,3'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
            - BranchSide:      'ostream-file.c:549,7'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
        - Branch String:   'ostream-file.c:549,30'
          Branch Sides:
            - BranchSide:      'ostream-file.c:549,33'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:551,14'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:549,33'
          Branch Sides:
            - BranchSide:      'ostream-file.c:549,33'
              BranchSideFuncs:
                - io_remove
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:551,14'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:549,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:550,14'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:551,14'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:555,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:556,18'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - o_stream_unref
            - BranchSide:      'ostream-file.c:560,2'
              BranchSideFuncs:
                - o_stream_unref
      Callsites:
        - Src:             'ostream-file.c:536,2'
          Dst:             o_stream_ref
        - Src:             'ostream-file.c:538,3'
          Dst:             o_stream_cork
        - Src:             'ostream-file.c:542,9'
          Dst:             o_stream_file_flush
        - Src:             'ostream-file.c:544,3'
          Dst:             o_stream_uncork
        - Src:             'ostream-file.c:550,3'
          Dst:             io_remove
        - Src:             'ostream-file.c:556,18'
          Dst:             io_stream_get_ioloop
        - Src:             'ostream-file.c:556,18'
          Dst:             io_add_to
        - Src:             'ostream-file.c:556,18'
          Dst:             stream_send_io
        - Src:             'ostream-file.c:562,2'
          Dst:             o_stream_unref
    - functionName:    o_stream_file_flush
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 426
      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:426,9'
          Dst:             buffer_flush
    - functionName:    o_stream_create_fd_blocking
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1171
      functionLinenumberEnd: 1180
      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:1175,12'
          Dst:             malloc_multiply_check
        - Src:             'ostream-file.c:1175,12'
          Dst:             p_malloc
        - Src:             'ostream-file.c:1176,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,3'
          Dst:             i_panic
    - functionName:    o_stream_create_file_common
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1021
      functionLinenumberEnd: 1050
      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:1047,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1047,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1048,38'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:1045,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: 372
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - set
      BBCount:         52
      ICount:          302
      EdgeCount:       69
      CyclomaticComplexity: 19
      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:378,28'
          Branch Sides:
            - BranchSide:      'ostream-file.c:378,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:378,28'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:378,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:378,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:379,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:379,11'
          Branch Sides:
            - BranchSide:      'ostream-file.c:379,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:381,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:379,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:380,15'
              BranchSideFuncs:
                - io_remove
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
            - BranchSide:      'ostream-file.c:381,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:385,28'
          Branch Sides:
            - BranchSide:      'ostream-file.c:386,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:393,3'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
        - Branch String:   'ostream-file.c:386,18'
          Branch Sides:
            - BranchSide:      'ostream-file.c:386,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:387,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:386,45'
          Branch Sides:
            - BranchSide:      'ostream-file.c:387,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:393,3'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
        - Branch String:   'ostream-file.c:385,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:388,19'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
            - BranchSide:      'ostream-file.c:393,3'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
        - Branch String:   'ostream-file.c:394,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:396,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:399,7'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
        - Branch String:   'ostream-file.c:399,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:400,4'
              BranchSideFuncs:
                - net_set_cork
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - i_panic
            - BranchSide:      'ostream-file.c:405,8'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
        - Branch String:   'ostream-file.c:400,4'
          Branch Sides:
            - BranchSide:      'ostream-file.c:400,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:401,21'
              BranchSideFuncs:
                - net_set_cork
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
        - Branch String:   'ostream-file.c:401,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:402,5'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
            - BranchSide:      'ostream-file.c:403,4'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
        - Branch String:   'ostream-file.c:405,12'
          Branch Sides:
            - BranchSide:      'ostream-file.c:405,16'
              BranchSideFuncs:
                - net_set_tcp_quickack
            - BranchSide:      'ostream-file.c:411,8'
              BranchSideFuncs:
                - net_set_tcp_quickack
        - Branch String:   'ostream-file.c:405,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:409,35'
              BranchSideFuncs:
                - net_set_tcp_quickack
            - BranchSide:      'ostream-file.c:411,8'
              BranchSideFuncs:
                - net_set_tcp_quickack
        - Branch String:   'ostream-file.c:411,12'
          Branch Sides:
            - BranchSide:      'ostream-file.c:411,16'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:417,20'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:411,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:414,29'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:417,20'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:414,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:415,5'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:416,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:380,4'
          Dst:             io_remove
        - Src:             'ostream-file.c:383,10'
          Dst:             buffer_flush
        - Src:             'ostream-file.c:388,19'
          Dst:             io_stream_get_ioloop
        - Src:             'ostream-file.c:388,19'
          Dst:             io_add_to
        - Src:             'ostream-file.c:388,19'
          Dst:             stream_send_io
        - Src:             'ostream-file.c:400,4'
          Dst:             i_panic
        - Src:             'ostream-file.c:401,8'
          Dst:             net_set_cork
        - Src:             'ostream-file.c:409,4'
          Dst:             o_stream_tcp_flush_via_nodelay
        - Src:             'ostream-file.c:414,8'
          Dst:             net_set_tcp_quickack
    - functionName:    o_stream_file_flush_pending
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 442
      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:437,10'
          Branch Sides:
            - BranchSide:      'ostream-file.c:437,14'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:437,10'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:437,29'
          Branch Sides:
            - BranchSide:      'ostream-file.c:437,29'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:437,32'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:437,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:437,6'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:438,17'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
      Callsites:
        - Src:             'ostream-file.c:438,17'
          Dst:             io_stream_get_ioloop
        - Src:             'ostream-file.c:438,17'
          Dst:             io_add_to
        - Src:             'ostream-file.c:438,17'
          Dst:             stream_send_io
    - functionName:    o_stream_file_get_buffer_used_size
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 460
      functionLinenumberEnd: 464
      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:464,32'
          Dst:             get_unused_space
    - functionName:    o_stream_file_seek
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 487
      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:472,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:473,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:476,7'
              BranchSideFuncs:
                - buffer_flush
        - Branch String:   'ostream-file.c:476,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:477,3'
              BranchSideFuncs:
                - buffer_flush
            - BranchSide:      'ostream-file.c:481,19'
              BranchSideFuncs:
                - buffer_flush
        - Branch String:   'ostream-file.c:481,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:482,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:484,27'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:481,6'
          Dst:             buffer_flush
    - functionName:    o_stream_file_sendv
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 672
      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:617,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:618,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:619,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:621,39'
          Branch Sides:
            - BranchSide:      'ostream-file.c:621,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:626,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:621,43'
          Branch Sides:
            - BranchSide:      'ostream-file.c:621,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:622,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:621,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:622,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:626,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:622,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:623,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:624,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:626,17'
          Branch Sides:
            - BranchSide:      'ostream-file.c:626,15'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:626,15'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:628,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:628,6'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:662,9'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:628,31'
          Branch Sides:
            - BranchSide:      'ostream-file.c:629,8'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
            - BranchSide:      'ostream-file.c:662,9'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:629,23'
          Branch Sides:
            - BranchSide:      'ostream-file.c:629,26'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:631,35'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:628,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:631,35'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:662,9'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:632,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:633,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:635,10'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:636,19'
          Branch Sides:
            - BranchSide:      'ostream-file.c:636,22'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:636,3'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:636,36'
          Branch Sides:
            - BranchSide:      'ostream-file.c:636,39'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:636,3'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:636,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:637,12'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:642,7'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:642,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:643,4'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:645,25'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:643,4'
          Branch Sides:
            - BranchSide:      'ostream-file.c:643,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:659,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:650,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:652,31'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:656,7'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:662,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:663,24'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
            - BranchSide:      'ostream-file.c:668,28'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'ostream-file.c:665,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:666,4'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'ostream-file.c:667,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:669,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:669,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:670,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:670,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:670,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:670,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:670,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:670,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:671,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:621,13'
          Dst:             get_unused_space
        - Src:             'ostream-file.c:622,7'
          Dst:             o_stream_file_flush
        - Src:             'ostream-file.c:631,9'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:643,4'
          Dst:             i_panic
        - Src:             'ostream-file.c:645,12'
          Dst:             o_stream_add
        - Src:             'ostream-file.c:663,11'
          Dst:             o_stream_add
        - Src:             'ostream-file.c:669,2'
          Dst:             i_panic
        - Src:             'ostream-file.c:670,2'
          Dst:             i_panic
    - functionName:    o_stream_file_write_at
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 705
      functionLinenumberEnd: 759
      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:712,15'
          Branch Sides:
            - BranchSide:      'ostream-file.c:713,6'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
                - o_stream_file_update_buffer
            - BranchSide:      'ostream-file.c:750,26'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:713,45'
          Branch Sides:
            - BranchSide:      'ostream-file.c:714,6'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
                - o_stream_file_update_buffer
            - BranchSide:      'ostream-file.c:750,26'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:712,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:715,7'
              BranchSideFuncs:
                - o_stream_file_update_buffer
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
            - BranchSide:      'ostream-file.c:750,26'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:715,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:717,9'
              BranchSideFuncs:
                - o_stream_file_update_buffer
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
            - BranchSide:      'ostream-file.c:719,11'
              BranchSideFuncs:
                - o_stream_file_update_buffer
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:725,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:727,8'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
            - BranchSide:      'ostream-file.c:739,14'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:727,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:731,4'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
            - BranchSide:      'ostream-file.c:733,12'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:739,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:741,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:744,11'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:750,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:751,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:753,18'
              BranchSideFuncs:
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:753,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:754,34'
              BranchSideFuncs:
                - __errno_location
                - stream_closed
            - BranchSide:      'ostream-file.c:758,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:711,9'
          Dst:             file_buffer_get_used_size
        - Src:             'ostream-file.c:723,10'
          Dst:             o_stream_file_update_buffer
        - Src:             'ostream-file.c:750,6'
          Dst:             o_stream_file_flush
        - Src:             'ostream-file.c:753,6'
          Dst:             pwrite_full
        - Src:             'ostream-file.c:754,34'
          Dst:             __errno_location
        - Src:             'ostream-file.c:755,3'
          Dst:             stream_closed
    - functionName:    o_stream_file_send_istream
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 983
      functionLinenumberEnd: 1006
      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:990,10'
          Branch Sides:
            - BranchSide:      'ostream-file.c:990,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:990,8'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
                - io_stream_sendfile
        - Branch String:   'ostream-file.c:991,31'
          Branch Sides:
            - BranchSide:      'ostream-file.c:991,34'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
            - BranchSide:      'ostream-file.c:1001,32'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:991,46'
          Branch Sides:
            - BranchSide:      'ostream-file.c:992,6'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
                - io_stream_sendfile
            - BranchSide:      'ostream-file.c:1001,32'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:992,30'
          Branch Sides:
            - BranchSide:      'ostream-file.c:992,33'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
                - io_stream_sendfile
            - BranchSide:      'ostream-file.c:1001,32'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:991,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:993,26'
              BranchSideFuncs:
                - io_stream_sendfile
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
            - BranchSide:      'ostream-file.c:1001,32'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:993,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:994,11'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:998,3'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:1001,60'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1001,14'
              BranchSideFuncs:
                - io_stream_copy
                - io_stream_copy_same_stream
            - BranchSide:      'ostream-file.c:1002,3'
              BranchSideFuncs:
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:1003,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1004,26'
              BranchSideFuncs:
                - io_stream_copy_same_stream
            - BranchSide:      'ostream-file.c:1005,36'
              BranchSideFuncs:
                - io_stream_copy_same_stream
      Callsites:
        - Src:             'ostream-file.c:990,40'
          Dst:             i_stream_get_fd
        - Src:             'ostream-file.c:993,7'
          Dst:             io_stream_sendfile
        - Src:             'ostream-file.c:1001,16'
          Dst:             i_stream_get_fd
        - Src:             'ostream-file.c:1004,10'
          Dst:             io_stream_copy
        - Src:             'ostream-file.c:1005,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: 1010
      functionLinenumberEnd: 1016
      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:1014,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1014,6'
              BranchSideFuncs:
                - io_loop_move_io_to
            - BranchSide:      'ostream-file.c:1015,36'
              BranchSideFuncs:
                - io_loop_move_io_to
      Callsites:
        - Src:             'ostream-file.c:1015,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: 445
      functionLinenumberEnd: 456
      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:446,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:448,10'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:449,13'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:449,13'
          Branch Sides:
            - BranchSide:      'ostream-file.c:451,11'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:454,10'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:454,10'
          Branch Sides:
            - BranchSide:      'ostream-file.c:454,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:454,30'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_add
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 604
      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:573,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:574,24'
              BranchSideFuncs:
                - o_stream_grow_buffer
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
            - BranchSide:      'ostream-file.c:576,7'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
        - Branch String:   'ostream-file.c:577,20'
          Branch Sides:
            - BranchSide:      'ostream-file.c:577,23'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
            - BranchSide:      'ostream-file.c:577,2'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
        - Branch String:   'ostream-file.c:577,35'
          Branch Sides:
            - BranchSide:      'ostream-file.c:577,39'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
            - BranchSide:      'ostream-file.c:577,2'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
        - Branch String:   'ostream-file.c:577,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:578,12'
              BranchSideFuncs:
                - i_memcpy.8951
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:597,6'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:578,12'
          Branch Sides:
            - BranchSide:      'ostream-file.c:579,4'
              BranchSideFuncs:
                - i_memcpy.8951
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:580,4'
              BranchSideFuncs:
                - i_memcpy.8951
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:582,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:583,13'
              BranchSideFuncs:
                - i_memcpy.8951
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:584,3'
              BranchSideFuncs:
                - i_memcpy.8951
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:589,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:590,4'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
            - BranchSide:      'ostream-file.c:592,7'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
        - Branch String:   'ostream-file.c:592,38'
          Branch Sides:
            - BranchSide:      'ostream-file.c:593,7'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
            - BranchSide:      'ostream-file.c:595,2'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
        - Branch String:   'ostream-file.c:592,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:594,4'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
            - BranchSide:      'ostream-file.c:595,2'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8951
        - Branch String:   'ostream-file.c:597,16'
          Branch Sides:
            - BranchSide:      'ostream-file.c:597,19'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:597,16'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:597,39'
          Branch Sides:
            - BranchSide:      'ostream-file.c:597,39'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:598,7'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:598,31'
          Branch Sides:
            - BranchSide:      'ostream-file.c:598,31'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:598,35'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:597,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:597,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:599,17'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
      Callsites:
        - Src:             'ostream-file.c:572,11'
          Dst:             get_unused_space
        - Src:             'ostream-file.c:574,3'
          Dst:             o_stream_grow_buffer
        - Src:             'ostream-file.c:584,3'
          Dst:             i_memcpy
        - Src:             'ostream-file.c:599,17'
          Dst:             io_stream_get_ioloop
        - Src:             'ostream-file.c:599,17'
          Dst:             io_add_to
        - Src:             'ostream-file.c:599,17'
          Dst:             stream_send_io
    - functionName:    o_stream_create_file
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1158
      functionLinenumberEnd: 1168
      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:1161,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1162,14'
              BranchSideFuncs:
                - open
                - o_stream_create_fd_file_autoclose
                - __errno_location
                - o_stream_create_error
            - BranchSide:      'ostream-file.c:1164,14'
              BranchSideFuncs:
                - open
                - o_stream_create_fd_file_autoclose
                - __errno_location
                - o_stream_create_error
        - Branch String:   'ostream-file.c:1165,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1166,32'
              BranchSideFuncs:
                - __errno_location
                - o_stream_create_error
            - BranchSide:      'ostream-file.c:1167,48'
              BranchSideFuncs:
                - o_stream_create_fd_file_autoclose
      Callsites:
        - Src:             'ostream-file.c:1165,12'
          Dst:             open
        - Src:             'ostream-file.c:1166,32'
          Dst:             __errno_location
        - Src:             'ostream-file.c:1166,10'
          Dst:             o_stream_create_error
        - Src:             'ostream-file.c:1167,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: 1148
      functionLinenumberEnd: 1153
      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:1151,11'
          Dst:             o_stream_create_fd_file
    - functionName:    o_stream_create_fd_file
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1130
      functionLinenumberEnd: 1144
      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:1134,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1134,6'
              BranchSideFuncs:
                - lseek
                - malloc_multiply_check.8972
                - p_malloc.8973
                - o_stream_create_file_common
                - fstream_init_file
            - BranchSide:      'ostream-file.c:1135,18'
              BranchSideFuncs:
                - lseek
                - malloc_multiply_check.8972
                - p_malloc.8973
                - o_stream_create_file_common
                - fstream_init_file
      Callsites:
        - Src:             'ostream-file.c:1135,12'
          Dst:             lseek
        - Src:             'ostream-file.c:1137,12'
          Dst:             malloc_multiply_check
        - Src:             'ostream-file.c:1137,12'
          Dst:             p_malloc
        - Src:             'ostream-file.c:1138,12'
          Dst:             o_stream_create_file_common
        - Src:             'ostream-file.c:1139,2'
          Dst:             fstream_init_file
    - functionName:    fstream_init_file
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1054
      functionLinenumberEnd: 1073
      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:1058,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1059,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1061,17'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:1061,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1064,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1067,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:1064,4'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1063,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1063,3'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:1067,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1067,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1068,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:1058,6'
          Dst:             fstat
    - functionName:    o_stream_create_fd_autoclose
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1121
      functionLinenumberEnd: 1125
      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:1122,28'
          Dst:             o_stream_create_fd_common
    - functionName:    o_stream_create_fd_common
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1078
      functionLinenumberEnd: 1110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - fd
        - max_buffer_size
        - autoclose_fd
      BBCount:         12
      ICount:          134
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - fstream_init_file
        - lseek
        - malloc_multiply_check
        - net_getsockname
        - o_stream_create_file_common
        - p_malloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream-file.c:1088,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1089,21'
              BranchSideFuncs:
                - fstream_init_file
            - BranchSide:      'ostream-file.c:1096,23'
              BranchSideFuncs:
                - net_getsockname
        - Branch String:   'ostream-file.c:1096,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1098,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1102,23'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:1083,12'
          Dst:             malloc_multiply_check
        - Src:             'ostream-file.c:1083,12'
          Dst:             p_malloc
        - Src:             'ostream-file.c:1084,12'
          Dst:             o_stream_create_file_common
        - Src:             'ostream-file.c:1087,11'
          Dst:             lseek
        - Src:             'ostream-file.c:1092,3'
          Dst:             fstream_init_file
        - Src:             'ostream-file.c:1096,7'
          Dst:             net_getsockname
    - functionName:    o_stream_create_fd
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1115
      functionLinenumberEnd: 1116
      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:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-file.c:1116,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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.9042
                - p_malloc.9044
                - 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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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.9093
                - str_append_c.9092
                - str_append.9093
                - str_c
                - access
                - str_truncate.9091
                - 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.9093
                - str_append_c.9092
                - str_append.9093
                - str_c
                - access
                - str_truncate.9091
                - 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.9093
                - str_append_c.9092
                - str_append.9093
                - str_c
                - access
                - str_truncate.9091
                - 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.9093
                - str_append_c.9092
                - str_append.9093
                - str_c
                - access
                - str_truncate.9091
                - 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.9091
                - str_append.9093
                - str_append_c.9092
                - str_append.9093
                - 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:    2
      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:    2
      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:    3
      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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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,15'
              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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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,16'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_reget
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:180,19'
              BranchSideFuncs:
                - readlink
                - i_memcpy.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:203,9'
          Branch Sides:
            - BranchSide:      'path-util.c:204,6'
              BranchSideFuncs:
                - i_memcpy.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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.9086
                - i_panic
                - i_panic
                - i_memcpy.9086
                - 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:    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
        - 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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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,10'
          Branch Sides:
            - BranchSide:      'process-title.c:178,22'
              BranchSideFuncs:
                - env_get_environ_p
                - free
                - free
                - p_free_internal.9198
            - BranchSide:      'process-title.c:178,22'
              BranchSideFuncs:
                - env_get_environ_p
                - free
                - free
                - p_free_internal.9198
      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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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:    1
      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.9191
            - BranchSide:      'process-title.c:114,2'
              BranchSideFuncs:
                - i_memcpy.9191
        - 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:    5
      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.9198
                - 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.9191
                - i_fatal_status
            - BranchSide:      'process-title.c:84,36'
              BranchSideFuncs:
                - malloc
                - i_panic
                - strlen
                - i_memcpy.9191
                - 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.9191
        - Branch String:   'process-title.c:95,2'
          Branch Sides:
            - BranchSide:      'process-title.c:96,17'
              BranchSideFuncs:
                - strlen
                - i_memcpy.9191
                - 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:    1
      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: 301
      functionLinenumberEnd: 303
      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:302,13'
          Dst:             array_count_i
        - Src:             './array.h:303,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: 196
      functionLinenumberEnd: 197
      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: 241
      functionLinenumberEnd: 244
      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:242,2'
          Dst:             buffer_delete
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      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.9275
      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: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './array.h:273,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.9275
      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.9271
                - 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: 209
      functionLinenumberEnd: 211
      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:210,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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 158
      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:157,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: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.9272
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.9272
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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: 133
      functionLinenumberEnd: 136
      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: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './array.h:273,2'
          Dst:             i_panic
    - functionName:    array_insert_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 233
      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:231,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: 196
      functionLinenumberEnd: 197
      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: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.9324
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.9324
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,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.9331
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - decode_digit
                - i_panic
                - array_append_i.9332
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'punycode.c:69,2'
              BranchSideFuncs:
                - array_count_i.9331
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - decode_digit
                - i_panic
                - array_append_i.9332
                - 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.9331
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - decode_digit
                - i_panic
                - array_append_i.9332
                - i_panic
                - i_panic
        - Branch String:   'punycode.c:72,6'
          Branch Sides:
            - BranchSide:      'punycode.c:73,11'
              BranchSideFuncs:
                - array_count_i.9331
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - decode_digit
                - i_panic
                - array_append_i.9332
                - i_panic
                - i_panic
            - BranchSide:      'punycode.c:74,2'
              BranchSideFuncs:
                - array_count_i.9331
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - decode_digit
                - i_panic
                - array_append_i.9332
                - 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.9331
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - decode_digit
                - i_panic
                - array_append_i.9332
                - i_panic
        - Branch String:   'punycode.c:76,2'
          Branch Sides:
            - BranchSide:      'punycode.c:77,23'
              BranchSideFuncs:
                - array_append_i.9332
                - array_count_i.9331
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - decode_digit
                - i_panic
                - i_panic
            - BranchSide:      'punycode.c:86,8'
              BranchSideFuncs:
                - array_count_i.9331
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - 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.9332
                - array_count_i.9331
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - 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.9332
                - array_count_i.9331
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - decode_digit
                - i_panic
                - i_panic
        - Branch String:   'punycode.c:89,6'
          Branch Sides:
            - BranchSide:      'punycode.c:90,9'
              BranchSideFuncs:
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - decode_digit
                - i_panic
            - BranchSide:      'punycode.c:92,9'
              BranchSideFuncs:
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - 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.9325
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9330
                - decode_digit
        - Branch String:   'punycode.c:95,2'
          Branch Sides:
            - BranchSide:      'punycode.c:102,10'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9330
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - decode_digit
            - BranchSide:      'punycode.c:148,19'
              BranchSideFuncs:
                - array_idx_i.9325
                - uni_ucs4_to_utf8
        - Branch String:   'punycode.c:106,3'
          Branch Sides:
            - BranchSide:      'punycode.c:108,29'
              BranchSideFuncs:
                - decode_digit
                - adapt
                - array_insert_i.9330
                - array_idx_i.9325
                - uni_ucs4_to_utf8
            - BranchSide:      'punycode.c:124,16'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9330
                - array_idx_i.9325
                - 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.9330
                - array_idx_i.9325
                - 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.9330
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - decode_digit
        - Branch String:   'punycode.c:114,8'
          Branch Sides:
            - BranchSide:      'punycode.c:114,6'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9330
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - decode_digit
            - BranchSide:      'punycode.c:115,5'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9330
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - decode_digit
        - Branch String:   'punycode.c:115,5'
          Branch Sides:
            - BranchSide:      'punycode.c:114,8'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9330
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - decode_digit
            - BranchSide:      'punycode.c:115,31'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9330
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - decode_digit
        - Branch String:   'punycode.c:116,8'
          Branch Sides:
            - BranchSide:      'punycode.c:117,5'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9330
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - decode_digit
            - BranchSide:      'punycode.c:118,8'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9330
                - array_idx_i.9325
                - 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.9330
                - array_idx_i.9325
                - 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.9330
                - array_idx_i.9325
                - 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.9330
                - array_idx_i.9325
                - uni_ucs4_to_utf8
                - adapt
                - decode_digit
        - Branch String:   'punycode.c:139,7'
          Branch Sides:
            - BranchSide:      'punycode.c:140,7'
              BranchSideFuncs:
                - array_insert_i.9330
                - array_idx_i.9325
                - 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:    4
      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.9373
                - 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.9373
                - random_read
        - Branch String:   'randgen.c:138,2'
          Branch Sides:
            - BranchSide:      'randgen.c:139,7'
              BranchSideFuncs:
                - random_read
                - i_memcpy.9373
                - 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.9373
                - random_read
            - BranchSide:      'randgen.c:148,8'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9373
        - Branch String:   'randgen.c:139,7'
          Branch Sides:
            - BranchSide:      'randgen.c:142,22'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9373
            - BranchSide:      'randgen.c:148,8'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9373
        - Branch String:   'randgen.c:143,8'
          Branch Sides:
            - BranchSide:      'randgen.c:144,12'
              BranchSideFuncs:
                - random_read
                - i_memcpy.9373
                - random_read
            - BranchSide:      'randgen.c:145,3'
              BranchSideFuncs:
                - random_read
                - i_memcpy.9373
                - random_read
        - Branch String:   'randgen.c:148,8'
          Branch Sides:
            - BranchSide:      'randgen.c:149,11'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9373
            - BranchSide:      'randgen.c:151,21'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9373
        - Branch String:   'randgen.c:154,24'
          Branch Sides:
            - BranchSide:      'randgen.c:154,22'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9373
            - BranchSide:      'randgen.c:154,38'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9373
        - Branch String:   'randgen.c:157,19'
          Branch Sides:
            - BranchSide:      'randgen.c:157,12'
              BranchSideFuncs:
                - i_memcpy.9373
                - random_read
                - random_read
            - BranchSide:      'randgen.c:157,12'
              BranchSideFuncs:
                - i_memcpy.9373
                - 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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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:    2
      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:    4
      BranchProfiles:
        - Branch String:   'rand.c:25,11'
          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:    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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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
      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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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.9462
            - BranchSide:      'restrict-access.c:530,2'
              BranchSideFuncs:
                - p_free_internal.9462
      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:    1
      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
        - 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:    3
      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:    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:    16
      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
      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.9502
                - t_malloc0
                - i_memcpy.9456
                - get_group_id
                - malloc_multiply_check.9502
                - 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.9502
                - t_malloc0
                - i_memcpy.9456
                - get_group_id
                - malloc_multiply_check.9502
                - 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.9502
                - t_malloc0
                - i_memcpy.9456
                - get_group_id
                - malloc_multiply_check.9502
                - t_malloc0
            - BranchSide:      'restrict-access.c:201,12'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9502
                - t_malloc0
                - i_memcpy.9456
                - get_group_id
                - malloc_multiply_check.9502
                - 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.9502
                - t_malloc0
                - i_memcpy.9456
                - get_group_id
                - malloc_multiply_check.9502
                - t_malloc0
            - BranchSide:      'restrict-access.c:200,2'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9502
                - t_malloc0
                - i_memcpy.9456
                - get_group_id
                - malloc_multiply_check.9502
                - 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.9502
                - t_malloc0
                - i_memcpy.9456
                - get_group_id
                - malloc_multiply_check.9502
                - t_malloc0
            - BranchSide:      'restrict-access.c:199,3'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9502
                - t_malloc0
                - i_memcpy.9456
                - get_group_id
                - malloc_multiply_check.9502
                - t_malloc0
        - Branch String:   'restrict-access.c:204,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:207,14'
              BranchSideFuncs:
                - malloc_multiply_check.9502
                - t_malloc0
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9502
                - t_malloc0
                - i_memcpy.9456
                - get_group_id
            - BranchSide:      'restrict-access.c:213,7'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9502
                - t_malloc0
                - i_memcpy.9456
                - 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.9502
                - t_malloc0
                - i_memcpy.9456
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - get_group_id
            - BranchSide:      'restrict-access.c:215,15'
              BranchSideFuncs:
                - str_array_length
                - malloc_multiply_check.9502
                - t_malloc0
                - i_memcpy.9456
                - 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.9502
                - t_malloc0
                - i_memcpy.9456
                - 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.9452
            - 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.9452
        - Branch String:   'restrict-access.c:248,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:249,14'
              BranchSideFuncs:
                - str_append.9452
                - 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:    2
      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.9502
                - 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:    10
      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:    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:    safe_mkstemp_hostpid_group
      functionSourceFile: '/src/dovecot/src/lib/safe-mkstemp.c'
      linkageType:     externalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix
        - mode
        - gid
        - gid_origin
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - safe_mkstemp_group
        - str_len
        - str_printfa
        - str_truncate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'safe-mkstemp.c:103,6'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:103,6'
              BranchSideFuncs:
                - str_truncate.9547
            - BranchSide:      'safe-mkstemp.c:104,16'
              BranchSideFuncs:
                - str_truncate.9547
      Callsites:
        - Src:             'safe-mkstemp.c:99,27'
          Dst:             str_len
        - Src:             'safe-mkstemp.c:102,2'
          Dst:             str_printfa
        - Src:             'safe-mkstemp.c:103,12'
          Dst:             safe_mkstemp_group
        - Src:             'safe-mkstemp.c:104,3'
          Dst:             str_truncate
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    safe_mkstemp_group
      functionSourceFile: '/src/dovecot/src/lib/safe-mkstemp.c'
      linkageType:     externalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix
        - mode
        - gid
        - gid_origin
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - safe_mkstemp_full
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'safe-mkstemp.c:82,9'
          Dst:             safe_mkstemp_full
    - 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:    6
      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:    safe_mkstemp_full
      functionSourceFile: '/src/dovecot/src/lib/safe-mkstemp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix
        - mode
        - uid
        - gid
        - gid_origin
      BBCount:         37
      ICount:          224
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - __errno_location
        - binary_to_hex
        - eperm_error_get_chgrp
        - fchown
        - i_close_fd_path
        - i_error
        - i_unlink
        - lstat
        - open
        - random_fill
        - str_append
        - str_c
        - str_len
        - str_truncate
        - umask
      functionUses:    2
      BranchProfiles:
        - Branch String:   'safe-mkstemp.c:32,3'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:28,16'
              BranchSideFuncs:
                - random_fill
                - str_truncate.9547
                - binary_to_hex
                - str_append.9544
                - str_c
                - lstat
                - __errno_location
                - umask
                - str_c
                - open
                - umask
                - __errno_location
                - __errno_location
                - str_truncate.9547
                - __errno_location
                - str_c
                - i_error
                - fchown
                - __errno_location
                - str_c
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
                - str_c
                - eperm_error_get_chgrp
                - i_error
                - str_c
                - i_error
                - str_truncate.9547
            - BranchSide:      'safe-mkstemp.c:34,7'
              BranchSideFuncs:
                - __errno_location
                - umask
                - str_c
                - open
                - umask
                - __errno_location
                - random_fill
                - str_truncate.9547
                - binary_to_hex
                - str_append.9544
                - str_c
                - lstat
                - __errno_location
                - str_truncate.9547
                - __errno_location
                - str_c
                - i_error
                - fchown
                - __errno_location
                - str_c
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
                - str_c
                - eperm_error_get_chgrp
                - i_error
                - str_c
                - i_error
                - str_truncate.9547
        - Branch String:   'safe-mkstemp.c:34,7'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:35,41'
              BranchSideFuncs:
                - str_c
                - i_error
                - str_truncate.9547
            - BranchSide:      'safe-mkstemp.c:40,28'
              BranchSideFuncs:
                - umask
                - str_c
                - open
                - umask
                - __errno_location
                - random_fill
                - str_truncate.9547
                - binary_to_hex
                - str_append.9544
                - str_c
                - lstat
                - __errno_location
                - str_c
                - i_error
                - str_truncate.9547
                - __errno_location
                - str_truncate.9547
                - __errno_location
                - str_c
                - i_error
                - fchown
                - __errno_location
                - str_c
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
                - str_c
                - eperm_error_get_chgrp
                - i_error
        - Branch String:   'safe-mkstemp.c:43,7'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:44,4'
              BranchSideFuncs:
                - fchown
                - __errno_location
                - str_c
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
                - str_c
                - eperm_error_get_chgrp
                - i_error
            - BranchSide:      'safe-mkstemp.c:46,7'
              BranchSideFuncs:
                - __errno_location
                - random_fill
                - str_truncate.9547
                - binary_to_hex
                - str_append.9544
                - str_c
                - lstat
                - __errno_location
                - umask
                - str_c
                - open
                - umask
                - fchown
                - __errno_location
                - str_c
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
                - str_c
                - eperm_error_get_chgrp
                - i_error
                - str_c
                - i_error
                - str_truncate.9547
                - __errno_location
                - str_truncate.9547
                - __errno_location
                - str_c
                - i_error
        - Branch String:   'safe-mkstemp.c:46,7'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:26,2'
              BranchSideFuncs:
                - __errno_location
                - str_truncate.9547
                - __errno_location
                - str_c
                - i_error
            - BranchSide:      'safe-mkstemp.c:47,8'
              BranchSideFuncs:
                - __errno_location
                - str_truncate.9547
                - __errno_location
                - str_c
                - i_error
        - Branch String:   'safe-mkstemp.c:47,24'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:47,27'
              BranchSideFuncs:
                - __errno_location
                - str_truncate.9547
                - str_c
                - i_error
            - BranchSide:      'safe-mkstemp.c:49,17'
              BranchSideFuncs:
                - str_truncate.9547
        - Branch String:   'safe-mkstemp.c:47,8'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:48,42'
              BranchSideFuncs:
                - str_c
                - i_error
                - str_truncate.9547
            - BranchSide:      'safe-mkstemp.c:49,17'
              BranchSideFuncs:
                - str_truncate.9547
        - Branch String:   'safe-mkstemp.c:53,23'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:53,26'
              BranchSideFuncs:
                - fchown
                - __errno_location
                - str_c
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
                - str_c
                - eperm_error_get_chgrp
                - i_error
            - BranchSide:      'safe-mkstemp.c:56,13'
              BranchSideFuncs:
                - fchown
                - __errno_location
                - str_c
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
                - str_c
                - eperm_error_get_chgrp
                - i_error
        - Branch String:   'safe-mkstemp.c:53,6'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:54,10'
              BranchSideFuncs: []
            - BranchSide:      'safe-mkstemp.c:56,13'
              BranchSideFuncs:
                - fchown
                - __errno_location
                - str_c
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
                - str_c
                - eperm_error_get_chgrp
                - i_error
        - Branch String:   'safe-mkstemp.c:56,6'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:57,7'
              BranchSideFuncs:
                - __errno_location
                - str_c
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
                - str_c
                - eperm_error_get_chgrp
                - i_error
            - BranchSide:      'safe-mkstemp.c:71,9'
              BranchSideFuncs: []
        - Branch String:   'safe-mkstemp.c:57,7'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:59,12'
              BranchSideFuncs:
                - str_c
                - eperm_error_get_chgrp
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
            - BranchSide:      'safe-mkstemp.c:62,11'
              BranchSideFuncs:
                - str_c
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
        - Branch String:   'safe-mkstemp.c:63,5'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:63,36'
              BranchSideFuncs:
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
            - BranchSide:      'safe-mkstemp.c:64,5'
              BranchSideFuncs:
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
        - Branch String:   'safe-mkstemp.c:64,5'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:61,4'
              BranchSideFuncs:
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
            - BranchSide:      'safe-mkstemp.c:64,36'
              BranchSideFuncs:
                - i_error
                - i_close_fd_path
                - str_c
                - i_unlink
                - str_truncate.9547
      Callsites:
        - Src:             'safe-mkstemp.c:25,15'
          Dst:             str_len
        - Src:             'safe-mkstemp.c:28,4'
          Dst:             random_fill
        - Src:             'safe-mkstemp.c:29,4'
          Dst:             str_truncate
        - Src:             'safe-mkstemp.c:31,8'
          Dst:             binary_to_hex
        - Src:             'safe-mkstemp.c:30,4'
          Dst:             str_append
        - Src:             'safe-mkstemp.c:32,18'
          Dst:             str_c
        - Src:             'safe-mkstemp.c:32,12'
          Dst:             lstat
        - Src:             'safe-mkstemp.c:34,7'
          Dst:             __errno_location
        - Src:             'safe-mkstemp.c:35,35'
          Dst:             str_c
        - Src:             'safe-mkstemp.c:35,4'
          Dst:             i_error
        - Src:             'safe-mkstemp.c:36,4'
          Dst:             str_truncate
        - Src:             'safe-mkstemp.c:40,15'
          Dst:             umask
        - Src:             'safe-mkstemp.c:41,13'
          Dst:             str_c
        - Src:             'safe-mkstemp.c:41,8'
          Dst:             open
        - Src:             'safe-mkstemp.c:42,3'
          Dst:             umask
        - Src:             'safe-mkstemp.c:46,7'
          Dst:             __errno_location
        - Src:             'safe-mkstemp.c:47,8'
          Dst:             __errno_location
        - Src:             'safe-mkstemp.c:47,27'
          Dst:             __errno_location
        - Src:             'safe-mkstemp.c:48,36'
          Dst:             str_c
        - Src:             'safe-mkstemp.c:48,5'
          Dst:             i_error
        - Src:             'safe-mkstemp.c:49,4'
          Dst:             str_truncate
        - Src:             'safe-mkstemp.c:56,6'
          Dst:             fchown
        - Src:             'safe-mkstemp.c:57,7'
          Dst:             __errno_location
        - Src:             'safe-mkstemp.c:59,6'
          Dst:             str_c
        - Src:             'safe-mkstemp.c:58,18'
          Dst:             eperm_error_get_chgrp
        - Src:             'safe-mkstemp.c:58,4'
          Dst:             i_error
        - Src:             'safe-mkstemp.c:62,5'
          Dst:             str_c
        - Src:             'safe-mkstemp.c:61,4'
          Dst:             i_error
        - Src:             'safe-mkstemp.c:66,3'
          Dst:             i_close_fd_path
        - Src:             'safe-mkstemp.c:67,3'
          Dst:             str_c
        - Src:             'safe-mkstemp.c:67,3'
          Dst:             i_unlink
        - Src:             'safe-mkstemp.c:68,3'
          Dst:             str_truncate
    - functionName:    safe_mkstemp_hostpid
      functionSourceFile: '/src/dovecot/src/lib/safe-mkstemp.c'
      linkageType:     externalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - prefix
        - mode
        - uid
        - gid
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - safe_mkstemp
        - str_len
        - str_printfa
        - str_truncate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'safe-mkstemp.c:91,6'
          Branch Sides:
            - BranchSide:      'safe-mkstemp.c:91,6'
              BranchSideFuncs:
                - str_truncate.9547
            - BranchSide:      'safe-mkstemp.c:92,16'
              BranchSideFuncs:
                - str_truncate.9547
      Callsites:
        - Src:             'safe-mkstemp.c:87,27'
          Dst:             str_len
        - Src:             'safe-mkstemp.c:90,2'
          Dst:             str_printfa
        - Src:             'safe-mkstemp.c:91,12'
          Dst:             safe_mkstemp
        - Src:             'safe-mkstemp.c:92,3'
          Dst:             str_truncate
    - functionName:    safe_mkstemp
      functionSourceFile: '/src/dovecot/src/lib/safe-mkstemp.c'
      linkageType:     externalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - prefix
        - mode
        - uid
        - gid
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - safe_mkstemp_full
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'safe-mkstemp.c:76,9'
          Dst:             safe_mkstemp_full
    - 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:    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:    3
      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
        - 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.9658
                - uni_utf8_data_truncate
                - str_truncate.9660
      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:    73
      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:    2
      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:    5
      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:    94
      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:    1
      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:    6
      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.9679
                - p_malloc.9680
                - buffer_create_from_const_data
                - str_truncate.9660
      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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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:    77
      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:    7
      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:    1
      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.9726
                - str_append.9724
                - uni_utf8_get_char
                - str_len.9722
                - __ctype_b_loc
                - str_append_data.9725
                - str_append.9724
                - str_append.9724
        - Branch String:   'str-sanitize.c:107,33'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:107,36'
              BranchSideFuncs:
                - str_truncate.9726
                - str_append.9724
                - uni_utf8_get_char
                - str_len.9722
                - __ctype_b_loc
                - str_append_data.9725
                - str_append.9724
                - str_append.9724
            - BranchSide:      'str-sanitize.c:107,2'
              BranchSideFuncs:
                - str_truncate.9726
                - str_append.9724
                - uni_utf8_get_char
                - str_len.9722
                - __ctype_b_loc
                - str_append_data.9725
                - str_append.9724
                - str_append.9724
        - Branch String:   'str-sanitize.c:107,2'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:108,31'
              BranchSideFuncs:
                - uni_utf8_get_char
                - str_len.9722
                - __ctype_b_loc
                - str_append_data.9725
                - str_truncate.9726
                - str_append.9724
                - str_append.9724
                - str_append.9724
            - BranchSide:      'str-sanitize.c:127,6'
              BranchSideFuncs:
                - str_truncate.9726
                - str_append.9724
        - Branch String:   'str-sanitize.c:109,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:110,4'
              BranchSideFuncs:
                - str_truncate.9726
                - str_append.9724
            - BranchSide:      'str-sanitize.c:112,22'
              BranchSideFuncs:
                - str_len.9722
                - __ctype_b_loc
                - str_append_data.9725
                - str_truncate.9726
                - str_append.9724
                - uni_utf8_get_char
                - str_append.9724
                - str_append.9724
        - Branch String:   'str-sanitize.c:113,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:115,15'
              BranchSideFuncs:
                - str_append.9724
                - str_truncate.9726
                - str_append.9724
                - uni_utf8_get_char
                - str_len.9722
                - __ctype_b_loc
                - str_append_data.9725
                - str_append.9724
            - BranchSide:      'str-sanitize.c:119,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_data.9725
                - str_truncate.9726
                - str_append.9724
                - uni_utf8_get_char
                - str_len.9722
                - str_append.9724
                - str_append.9724
        - Branch String:   'str-sanitize.c:119,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:120,15'
              BranchSideFuncs:
                - str_append.9724
                - str_truncate.9726
                - str_append.9724
                - uni_utf8_get_char
                - str_len.9722
                - __ctype_b_loc
                - str_append_data.9725
                - str_append.9724
            - BranchSide:      'str-sanitize.c:122,20'
              BranchSideFuncs:
                - str_append_data.9725
                - str_truncate.9726
                - str_append.9724
                - uni_utf8_get_char
                - str_len.9722
                - __ctype_b_loc
                - str_append.9724
                - str_append.9724
        - Branch String:   'str-sanitize.c:127,6'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:127,6'
              BranchSideFuncs:
                - str_truncate.9726
                - str_append.9724
            - BranchSide:      'str-sanitize.c:128,16'
              BranchSideFuncs:
                - str_truncate.9726
                - str_append.9724
      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:    7
      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.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - str_append_data.9725
                - str_append_c.9731
                - str_append_c.9731
            - BranchSide:      'str-sanitize.c:68,2'
              BranchSideFuncs:
                - str_len.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - str_append_data.9725
                - str_append_c.9731
                - str_append_c.9731
        - 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.9725
                - str_len.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
                - str_append_c.9731
                - str_append_c.9731
            - BranchSide:      'str-sanitize.c:86,6'
              BranchSideFuncs:
                - str_len.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
        - Branch String:   'str-sanitize.c:70,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:71,4'
              BranchSideFuncs:
                - str_len.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
            - BranchSide:      'str-sanitize.c:73,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_data.9725
                - str_len.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
                - uni_utf8_get_char_n
                - str_append_c.9731
                - str_append_c.9731
        - Branch String:   'str-sanitize.c:73,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:75,4'
              BranchSideFuncs:
                - str_append_c.9731
                - str_len.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - str_append_data.9725
                - str_append_c.9731
            - BranchSide:      'str-sanitize.c:79,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_data.9725
                - str_len.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
                - uni_utf8_get_char_n
                - str_append_c.9731
                - str_append_c.9731
        - Branch String:   'str-sanitize.c:79,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:80,4'
              BranchSideFuncs:
                - str_append_c.9731
                - str_len.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - str_append_data.9725
                - str_append_c.9731
            - BranchSide:      'str-sanitize.c:82,20'
              BranchSideFuncs:
                - str_append_data.9725
                - str_len.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - str_append_c.9731
                - str_append_c.9731
        - Branch String:   'str-sanitize.c:86,6'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:86,6'
              BranchSideFuncs:
                - str_len.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
            - BranchSide:      'str-sanitize.c:87,7'
              BranchSideFuncs:
                - str_len.9722
                - str_append.9724
                - str_sanitize_truncate_char
                - str_truncate.9726
        - Branch String:   'str-sanitize.c:87,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:88,17'
              BranchSideFuncs:
                - str_truncate.9726
                - str_append.9724
            - BranchSide:      'str-sanitize.c:90,4'
              BranchSideFuncs:
                - str_len.9722
                - str_append.9724
                - 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.9722
                - str_append.9724
            - BranchSide:      'str-sanitize.c:91,32'
              BranchSideFuncs:
                - str_sanitize_truncate_char
                - str_len.9722
                - str_append.9724
      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.9726
        - 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.9726
      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: 103
      functionLinenumberEnd: 104
      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:104,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
        - 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
        - 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: 117
      functionLinenumberEnd: 126
      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: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:120,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:122,6'
              BranchSideFuncs: []
        - Branch String:   './mempool.h:122,6'
          Branch Sides:
            - BranchSide:      './mempool.h:123,10'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:125,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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:    4
      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.9831
                - p_malloc.9833
            - BranchSide:      'strescape.c:305,14'
              BranchSideFuncs:
                - p_malloc.9833
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9829
                - 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.9829
            - BranchSide:      'strescape.c:308,12'
              BranchSideFuncs:
                - p_malloc.9833
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9829
        - 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.9829
            - 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.9829
            - BranchSide:      'strescape.c:320,7'
              BranchSideFuncs:
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9829
        - 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.9829
            - BranchSide:      'strescape.c:317,8'
              BranchSideFuncs:
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9829
        - Branch String:   'strescape.c:320,7'
          Branch Sides:
            - BranchSide:      'strescape.c:321,36'
              BranchSideFuncs:
                - nearest_power
                - p_realloc.9829
                - 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.9829
                - 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.9829
            - BranchSide:      'strescape.c:333,20'
              BranchSideFuncs:
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9829
        - 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:    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,10'
              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:    1
      BranchProfiles:
        - Branch String:   'strescape.c:289,6'
          Branch Sides:
            - BranchSide:      'strescape.c:290,10'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:292,8'
              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:    0
      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.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'strescape.c:225,1'
              BranchSideFuncs: []
        - Branch String:   'strescape.c:190,3'
          Branch Sides:
            - BranchSide:      'strescape.c:191,8'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'strescape.c:195,19'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
        - Branch String:   'strescape.c:191,8'
          Branch Sides:
            - BranchSide:      'strescape.c:192,5'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'strescape.c:193,3'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
        - Branch String:   'strescape.c:197,7'
          Branch Sides:
            - BranchSide:      'strescape.c:198,5'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'strescape.c:223,11'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
        - Branch String:   'strescape.c:199,8'
          Branch Sides:
            - BranchSide:      'strescape.c:200,13'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'strescape.c:222,3'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
        - Branch String:   'strescape.c:200,5'
          Branch Sides:
            - BranchSide:      'strescape.c:202,6'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'strescape.c:205,6'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'strescape.c:208,6'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'strescape.c:211,6'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'strescape.c:214,6'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'strescape.c:217,6'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
                - str_append_c.9845
      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.9843
                - 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:    20
      BranchProfiles:
        - Branch String:   'strescape.c:146,3'
          Branch Sides:
            - BranchSide:      'strescape.c:149,4'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:151,4'
              BranchSideFuncs:
                - str_append_data.9843
                - strcspn
                - str_append_data.9843
                - i_unreached
            - BranchSide:      'strescape.c:154,4'
              BranchSideFuncs:
                - str_append_data.9843
                - strcspn
                - str_append_data.9843
                - i_unreached
            - BranchSide:      'strescape.c:157,4'
              BranchSideFuncs:
                - str_append_data.9843
                - strcspn
                - str_append_data.9843
                - i_unreached
            - BranchSide:      'strescape.c:160,4'
              BranchSideFuncs:
                - str_append_data.9843
                - strcspn
                - str_append_data.9843
                - 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.9843
                - str_append_data.9843
                - str_append_data.9843
            - BranchSide:      'strescape.c:133,18'
              BranchSideFuncs:
                - str_append_data.9843
        - Branch String:   'strescape.c:110,3'
          Branch Sides:
            - BranchSide:      'strescape.c:112,4'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_data.9843
            - BranchSide:      'strescape.c:115,4'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_data.9843
            - BranchSide:      'strescape.c:118,4'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_data.9843
            - BranchSide:      'strescape.c:121,4'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_data.9843
            - BranchSide:      'strescape.c:124,4'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_data.9843
            - BranchSide:      'strescape.c:127,4'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_data.9843
      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.9843
                - str_append_c.9845
            - BranchSide:      'strescape.c:39,3'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
        - Branch String:   'strescape.c:39,3'
          Branch Sides:
            - BranchSide:      'strescape.c:40,8'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
            - BranchSide:      'strescape.c:44,19'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
        - Branch String:   'strescape.c:40,8'
          Branch Sides:
            - BranchSide:      'strescape.c:41,5'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
            - BranchSide:      'strescape.c:42,3'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
        - Branch String:   'strescape.c:46,7'
          Branch Sides:
            - BranchSide:      'strescape.c:47,8'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
            - BranchSide:      'strescape.c:51,11'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
        - Branch String:   'strescape.c:47,8'
          Branch Sides:
            - BranchSide:      'strescape.c:48,5'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:49,4'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
      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.9843
                - str_append_data.9843
                - str_append_c.9845
            - BranchSide:      'strescape.c:24,18'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_c.9845
        - Branch String:   'strescape.c:19,7'
          Branch Sides:
            - BranchSide:      'strescape.c:19,7'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_c.9845
            - BranchSide:      'strescape.c:20,4'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_c.9845
        - Branch String:   'strescape.c:19,7'
          Branch Sides:
            - BranchSide:      'strescape.c:19,7'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_c.9845
            - BranchSide:      'strescape.c:20,4'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_c.9845
        - Branch String:   'strescape.c:19,7'
          Branch Sides:
            - BranchSide:      'strescape.c:20,4'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_c.9845
            - BranchSide:      'strescape.c:21,2'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_data.9843
                - str_append_c.9845
        - Branch String:   'strescape.c:26,2'
          Branch Sides:
            - BranchSide:      'strescape.c:27,7'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
            - BranchSide:      'strescape.c:31,1'
              BranchSideFuncs: []
        - Branch String:   'strescape.c:27,7'
          Branch Sides:
            - BranchSide:      'strescape.c:27,7'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
            - BranchSide:      'strescape.c:28,4'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
        - Branch String:   'strescape.c:27,7'
          Branch Sides:
            - BranchSide:      'strescape.c:27,7'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
            - BranchSide:      'strescape.c:28,4'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
        - Branch String:   'strescape.c:27,7'
          Branch Sides:
            - BranchSide:      'strescape.c:28,4'
              BranchSideFuncs:
                - str_append_c.9845
                - str_append_data.9843
            - BranchSide:      'strescape.c:29,19'
              BranchSideFuncs:
                - str_append_data.9843
                - str_append_c.9845
      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:    2
      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: 117
      functionLinenumberEnd: 126
      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: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:120,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:122,6'
              BranchSideFuncs: []
        - Branch String:   './mempool.h:122,6'
          Branch Sides:
            - BranchSide:      './mempool.h:123,10'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:125,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,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: 727
      functionLinenumberEnd: 779
      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:732,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:734,3'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10020
                - p_malloc.10023
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
                - malloc_multiply_check.10020
                - p_malloc.10023
                - strchr
            - BranchSide:      'strfuncs.c:737,7'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10020
                - p_malloc.10023
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
                - malloc_multiply_check.10020
                - p_malloc.10023
        - Branch String:   'strfuncs.c:734,24'
          Branch Sides:
            - BranchSide:      'strfuncs.c:734,34'
              BranchSideFuncs:
                - strchr
                - p_strdup
                - malloc_multiply_check.10020
                - p_malloc.10023
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
                - malloc_multiply_check.10020
                - p_malloc.10023
            - BranchSide:      'strfuncs.c:734,3'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10020
                - p_malloc.10023
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
                - malloc_multiply_check.10020
                - p_malloc.10023
                - strchr
        - Branch String:   'strfuncs.c:734,3'
          Branch Sides:
            - BranchSide:      'strfuncs.c:735,8'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10020
                - p_malloc.10023
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
                - malloc_multiply_check.10020
                - p_malloc.10023
                - strchr
            - BranchSide:      'strfuncs.c:736,2'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10020
                - p_malloc.10023
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
                - malloc_multiply_check.10020
                - p_malloc.10023
        - Branch String:   'strfuncs.c:737,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:738,10'
              BranchSideFuncs:
                - malloc_multiply_check.10020
                - p_malloc.10023
            - BranchSide:      'strfuncs.c:740,17'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10020
                - p_malloc.10023
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
        - Branch String:   'strfuncs.c:746,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:747,14'
              BranchSideFuncs:
                - strchr
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10018
            - BranchSide:      'strfuncs.c:775,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strfuncs.c:747,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:749,8'
              BranchSideFuncs:
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
            - BranchSide:      'strfuncs.c:772,20'
              BranchSideFuncs:
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
        - Branch String:   'strfuncs.c:749,8'
          Branch Sides:
            - BranchSide:      'strfuncs.c:750,65'
              BranchSideFuncs:
                - nearest_power
                - p_realloc.10018
                - i_panic
                - strchr
                - strchr
            - BranchSide:      'strfuncs.c:758,5'
              BranchSideFuncs:
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10018
                - strchr
        - Branch String:   'strfuncs.c:759,8'
          Branch Sides:
            - BranchSide:      'strfuncs.c:760,5'
              BranchSideFuncs:
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10018
                - strchr
            - BranchSide:      'strfuncs.c:769,21'
              BranchSideFuncs:
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
        - Branch String:   'strfuncs.c:760,27'
          Branch Sides:
            - BranchSide:      'strfuncs.c:760,5'
              BranchSideFuncs:
                - strchr
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10018
            - BranchSide:      'strfuncs.c:761,19'
              BranchSideFuncs:
                - strchr
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10018
        - Branch String:   'strfuncs.c:760,5'
          Branch Sides:
            - BranchSide:      'strfuncs.c:762,9'
              BranchSideFuncs:
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10018
                - strchr
            - BranchSide:      'strfuncs.c:765,9'
              BranchSideFuncs:
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
        - Branch String:   'strfuncs.c:765,9'
          Branch Sides:
            - BranchSide:      'strfuncs.c:766,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:767,4'
              BranchSideFuncs:
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10018
        - Branch String:   'strfuncs.c:775,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:775,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:776,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:734,27'
          Dst:             strchr
        - Src:             'strfuncs.c:738,10'
          Dst:             malloc_multiply_check
        - Src:             'strfuncs.c:738,10'
          Dst:             p_malloc
        - Src:             'strfuncs.c:740,8'
          Dst:             p_strdup
        - Src:             'strfuncs.c:743,10'
          Dst:             malloc_multiply_check
        - Src:             'strfuncs.c:743,10'
          Dst:             p_malloc
        - Src:             'strfuncs.c:747,7'
          Dst:             strchr
        - Src:             'strfuncs.c:750,51'
          Dst:             nearest_power
        - Src:             'strfuncs.c:751,13'
          Dst:             p_realloc
        - Src:             'strfuncs.c:761,12'
          Dst:             strchr
        - Src:             'strfuncs.c:775,2'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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:    123
      BranchProfiles:
        - Branch String:   'strfuncs.c:53,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:54,17'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:56,15'
              BranchSideFuncs:
                - strlen
                - p_malloc.10023
      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: 783
      functionLinenumberEnd: 813
      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:787,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:788,10'
              BranchSideFuncs:
                - malloc_multiply_check.10020
                - p_malloc.10023
            - BranchSide:      'strfuncs.c:790,17'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10020
                - p_malloc.10023
                - strchr
                - i_panic
                - i_panic
                - nearest_power
                - p_realloc.10018
        - Branch String:   'strfuncs.c:796,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:798,7'
              BranchSideFuncs:
                - strchr
                - i_panic
                - i_panic
                - nearest_power
                - p_realloc.10018
            - BranchSide:      'strfuncs.c:809,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'strfuncs.c:798,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:799,36'
              BranchSideFuncs:
                - nearest_power
                - p_realloc.10018
                - strchr
                - i_panic
                - i_panic
            - BranchSide:      'strfuncs.c:806,7'
              BranchSideFuncs:
                - strchr
                - i_panic
                - i_panic
                - nearest_power
                - p_realloc.10018
        - Branch String:   'strfuncs.c:809,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:809,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:810,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strfuncs.c:810,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:810,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:812,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:788,10'
          Dst:             malloc_multiply_check
        - Src:             'strfuncs.c:788,10'
          Dst:             p_malloc
        - Src:             'strfuncs.c:790,8'
          Dst:             p_strdup
        - Src:             'strfuncs.c:793,10'
          Dst:             malloc_multiply_check
        - Src:             'strfuncs.c:793,10'
          Dst:             p_malloc
        - Src:             'strfuncs.c:796,16'
          Dst:             strchr
        - Src:             'strfuncs.c:799,22'
          Dst:             nearest_power
        - Src:             'strfuncs.c:800,12'
          Dst:             p_realloc
        - Src:             'strfuncs.c:809,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:810,2'
          Dst:             i_panic
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './array.h:273,2'
          Dst:             i_panic
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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:    p_array_const_string_join
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 989
      functionLinenumberEnd: 994
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - arr
        - separator
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_count_i
        - array_idx_i
        - p_strarray_join_n
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:990,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:991,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:992,27'
              BranchSideFuncs:
                - array_idx_i.10030
                - array_count_i.10034
                - p_strarray_join_n
      Callsites:
        - Src:             'strfuncs.c:990,6'
          Dst:             array_count_i
        - Src:             'strfuncs.c:992,33'
          Dst:             array_idx_i
        - Src:             'strfuncs.c:992,51'
          Dst:             array_count_i
        - Src:             'strfuncs.c:992,9'
          Dst:             p_strarray_join_n
    - functionName:    p_strarray_join_n
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 871
      functionLinenumberEnd: 902
      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:881,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:882,16'
              BranchSideFuncs:
                - strlen
                - p_memdup
                - t_buffer_alloc
                - nearest_power
                - t_buffer_reget
            - BranchSide:      'strfuncs.c:897,2'
              BranchSideFuncs:
                - p_memdup
                - t_buffer_alloc
        - Branch String:   'strfuncs.c:884,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:885,30'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_reget
                - p_memdup
                - t_buffer_alloc
                - strlen
            - BranchSide:      'strfuncs.c:889,7'
              BranchSideFuncs:
                - p_memdup
                - t_buffer_alloc
                - strlen
                - nearest_power
                - t_buffer_reget
        - Branch String:   'strfuncs.c:889,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:890,11'
              BranchSideFuncs:
                - p_memdup
                - t_buffer_alloc
                - strlen
                - nearest_power
                - t_buffer_reget
            - BranchSide:      'strfuncs.c:894,10'
              BranchSideFuncs:
                - p_memdup
                - t_buffer_alloc
                - strlen
                - nearest_power
                - t_buffer_reget
        - Branch String:   'strfuncs.c:898,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:899,19'
              BranchSideFuncs:
                - t_buffer_alloc
            - BranchSide:      'strfuncs.c:900,17'
              BranchSideFuncs:
                - t_buffer_alloc
      Callsites:
        - Src:             'strfuncs.c:876,12'
          Dst:             strlen
        - Src:             'strfuncs.c:878,8'
          Dst:             t_buffer_get
        - Src:             'strfuncs.c:882,9'
          Dst:             strlen
        - Src:             'strfuncs.c:885,16'
          Dst:             nearest_power
        - Src:             'strfuncs.c:886,10'
          Dst:             t_buffer_reget
        - Src:             'strfuncs.c:899,10'
          Dst:             p_memdup
        - Src:             'strfuncs.c:900,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:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:66,8'
          Dst:             p_malloc
    - functionName:    dec2str_buf
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 973
      functionLinenumberEnd: 984
      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:981,23'
          Branch Sides:
            - BranchSide:      'strfuncs.c:981,26'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:981,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strfuncs.c:981,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:979,20'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:983,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strfuncs.c:983,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:983,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:983,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:983,2'
          Dst:             i_panic
    - functionName:    dec2str
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 968
      functionLinenumberEnd: 969
      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:    32
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:969,21'
          Dst:             t_malloc_no0
        - Src:             'strfuncs.c:969,9'
          Dst:             dec2str_buf
    - functionName:    p_strarray_dup
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 945
      functionLinenumberEnd: 964
      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:952,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:953,41'
              BranchSideFuncs:
                - strlen
                - p_malloc.10023
                - i_panic
                - strlen
            - BranchSide:      'strfuncs.c:955,17'
              BranchSideFuncs:
                - p_malloc.10023
                - i_panic
                - strlen
        - Branch String:   'strfuncs.c:957,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:958,16'
              BranchSideFuncs:
                - strlen
                - i_panic
            - BranchSide:      'strfuncs.c:963,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strfuncs.c:963,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:963,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:963,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:953,34'
          Dst:             strlen
        - Src:             'strfuncs.c:955,8'
          Dst:             p_malloc
        - Src:             'strfuncs.c:958,9'
          Dst:             strlen
        - Src:             'strfuncs.c:963,2'
          Dst:             i_panic
    - functionName:    str_array_icase_find
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 936
      functionLinenumberEnd: 942
      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:    5
      BranchProfiles:
        - Branch String:   'strfuncs.c:937,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:938,19'
              BranchSideFuncs:
                - strcasecmp
            - BranchSide:      'strfuncs.c:941,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:938,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:939,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:940,2'
              BranchSideFuncs:
                - strcasecmp
      Callsites:
        - Src:             'strfuncs.c:938,7'
          Dst:             strcasecmp
    - functionName:    str_array_find
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 927
      functionLinenumberEnd: 933
      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:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:928,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:929,15'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'strfuncs.c:932,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:929,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:930,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:931,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'strfuncs.c:929,7'
          Dst:             strcmp
    - functionName:    str_array_remove
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 911
      functionLinenumberEnd: 924
      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:914,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:915,15'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'strfuncs.c:923,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:915,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:917,16'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:922,2'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'strfuncs.c:917,4'
          Branch Sides:
            - BranchSide:      'strfuncs.c:918,14'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:919,5'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:915,7'
          Dst:             strcmp
    - functionName:    t_strarray_join
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 905
      functionLinenumberEnd: 907
      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:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:907,6'
          Dst:             str_array_length
        - Src:             'strfuncs.c:906,9'
          Dst:             p_strarray_join_n
    - functionName:    str_array_length
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 866
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - arr
      BBCount:         8
      ICount:          42
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    9
      BranchProfiles:
        - Branch String:   'strfuncs.c:859,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:860,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:862,13'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:862,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:863,8'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:865,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    p_strsplit_free
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 853
      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:851,2'
          Dst:             p_free_internal
        - Src:             'strfuncs.c:852,2'
          Dst:             p_free_internal
    - functionName:    p_strsplit_spaces
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 846
      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:846,9'
          Dst:             split_str
    - functionName:    split_str
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 817
      functionLinenumberEnd: 824
      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:818,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:818,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:820,6'
              BranchSideFuncs:
                - split_str_slow
                - split_str_fast
        - Branch String:   'strfuncs.c:820,28'
          Branch Sides:
            - BranchSide:      'strfuncs.c:820,32'
              BranchSideFuncs:
                - split_str_fast
                - split_str_slow
            - BranchSide:      'strfuncs.c:823,25'
              BranchSideFuncs:
                - split_str_slow
        - Branch String:   'strfuncs.c:820,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:821,25'
              BranchSideFuncs:
                - split_str_slow
            - BranchSide:      'strfuncs.c:823,25'
              BranchSideFuncs:
                - split_str_slow
      Callsites:
        - Src:             'strfuncs.c:818,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:821,10'
          Dst:             split_str_fast
        - Src:             'strfuncs.c:823,10'
          Dst:             split_str_slow
    - functionName:    p_strsplit
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 839
      functionLinenumberEnd: 840
      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:840,9'
          Dst:             split_str
    - functionName:    t_strsplit_spaces
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 833
      functionLinenumberEnd: 835
      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:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:834,24'
          Dst:             split_str
    - functionName:    t_strsplit
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 827
      functionLinenumberEnd: 829
      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:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:828,24'
          Dst:             split_str
    - functionName:    t_split_key_value
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 714
      functionLinenumberEnd: 723
      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:715,13'
          Branch Sides:
            - BranchSide:      'strfuncs.c:715,3'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'strfuncs.c:715,41'
              BranchSideFuncs:
                - strchr
                - t_strdup_until
        - Branch String:   'strfuncs.c:716,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:717,27'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'strfuncs.c:720,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:715,34'
          Dst:             strchr
        - Src:             'strfuncs.c:717,12'
          Dst:             t_strdup_until
    - functionName:    t_strdup_until
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 278
      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:    26
      BranchProfiles:
        - Branch String:   'strfuncs.c:271,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:271,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:271,2'
              BranchSideFuncs:
                - t_malloc_no0
      Callsites:
        - Src:             'strfuncs.c:271,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:275,8'
          Dst:             t_malloc_no0
    - functionName:    i_memcspn
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 691
      functionLinenumberEnd: 710
      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:695,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:695,2'
              BranchSideFuncs:
                - memchr
                - i_panic
                - i_panic
            - BranchSide:      'strfuncs.c:695,2'
              BranchSideFuncs:
                - memchr
                - i_panic
                - i_panic
        - Branch String:   'strfuncs.c:695,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:695,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:696,2'
              BranchSideFuncs:
                - memchr
                - i_panic
        - Branch String:   'strfuncs.c:696,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:696,2'
              BranchSideFuncs:
                - memchr
                - i_panic
            - BranchSide:      'strfuncs.c:696,2'
              BranchSideFuncs:
                - memchr
                - i_panic
        - Branch String:   'strfuncs.c:696,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:696,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:698,6'
              BranchSideFuncs:
                - memchr
        - Branch String:   'strfuncs.c:698,22'
          Branch Sides:
            - BranchSide:      'strfuncs.c:698,25'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:699,10'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:698,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:699,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:703,14'
              BranchSideFuncs:
                - memchr
        - Branch String:   'strfuncs.c:703,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:705,11'
              BranchSideFuncs:
                - memchr
            - BranchSide:      'strfuncs.c:709,9'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:706,20'
          Branch Sides:
            - BranchSide:      'strfuncs.c:706,23'
              BranchSideFuncs:
                - memchr
            - BranchSide:      'strfuncs.c:708,2'
              BranchSideFuncs:
                - memchr
        - Branch String:   'strfuncs.c:706,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:707,10'
              BranchSideFuncs:
                - memchr
            - BranchSide:      'strfuncs.c:708,2'
              BranchSideFuncs:
                - memchr
      Callsites:
        - Src:             'strfuncs.c:695,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:696,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:705,4'
          Dst:             memchr
    - functionName:    i_memspn
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 687
      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:676,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:676,2'
              BranchSideFuncs:
                - memchr
                - i_panic
                - i_panic
            - BranchSide:      'strfuncs.c:676,2'
              BranchSideFuncs:
                - memchr
                - i_panic
                - i_panic
        - Branch String:   'strfuncs.c:676,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:676,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:677,2'
              BranchSideFuncs:
                - memchr
                - i_panic
        - Branch String:   'strfuncs.c:677,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:677,2'
              BranchSideFuncs:
                - memchr
                - i_panic
            - BranchSide:      'strfuncs.c:677,2'
              BranchSideFuncs:
                - memchr
                - i_panic
        - Branch String:   'strfuncs.c:677,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:677,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:678,9'
              BranchSideFuncs:
                - memchr
        - Branch String:   'strfuncs.c:680,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:681,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:682,2'
              BranchSideFuncs:
                - memchr
        - Branch String:   'strfuncs.c:682,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:683,14'
              BranchSideFuncs:
                - memchr
            - BranchSide:      'strfuncs.c:686,9'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:683,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:684,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:685,2'
              BranchSideFuncs:
                - memchr
      Callsites:
        - Src:             'strfuncs.c:676,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:677,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:683,7'
          Dst:             memchr
    - functionName:    str_begins_icase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 670
      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:666,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:667,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:668,14'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:665,22'
          Dst:             str_match_icase
    - functionName:    str_match_icase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 642
      functionLinenumberEnd: 648
      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:645,23'
          Branch Sides:
            - BranchSide:      'strfuncs.c:645,26'
              BranchSideFuncs:
                - tolower
                - tolower
            - BranchSide:      'strfuncs.c:645,2'
              BranchSideFuncs:
                - tolower
                - tolower
        - Branch String:   'strfuncs.c:645,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:646,4'
              BranchSideFuncs:
                - tolower
                - tolower
            - BranchSide:      'strfuncs.c:648,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:645,26'
          Dst:             tolower
        - Src:             'strfuncs.c:645,46'
          Dst:             tolower
    - functionName:    str_begins
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 653
      functionLinenumberEnd: 659
      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:    3
      BranchProfiles:
        - Branch String:   'strfuncs.c:655,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:656,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:657,14'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:654,22'
          Dst:             str_match
    - functionName:    str_match
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 638
      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:    3
      BranchProfiles:
        - Branch String:   'strfuncs.c:635,22'
          Branch Sides:
            - BranchSide:      'strfuncs.c:635,25'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:635,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:635,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:636,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:638,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_equals_timing_almost_safe
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 627
      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:620,28'
          Branch Sides:
            - BranchSide:      'strfuncs.c:620,31'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:620,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:620,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:621,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:622,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    mem_equals_timing_safe
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 612
      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:606,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:607,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:611,33'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_strcasecmp_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:
        - strcasecmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:597,9'
          Dst:             strcasecmp
    - functionName:    i_strcmp_p
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 592
      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:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:592,9'
          Dst:             strcmp
    - functionName:    i_memcasecmp
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 574
      functionLinenumberEnd: 588
      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:579,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:580,9'
              BranchSideFuncs:
                - toupper
                - toupper
            - BranchSide:      'strfuncs.c:587,9'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:581,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:582,11'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:584,5'
              BranchSideFuncs:
                - toupper
                - toupper
      Callsites:
        - Src:             'strfuncs.c:580,9'
          Dst:             toupper
        - Src:             'strfuncs.c:580,26'
          Dst:             toupper
    - functionName:    null_strcasecmp
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 564
      functionLinenumberEnd: 571
      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:565,13'
          Branch Sides:
            - BranchSide:      'strfuncs.c:566,24'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:567,13'
              BranchSideFuncs:
                - strcasecmp
        - Branch String:   'strfuncs.c:567,13'
          Branch Sides:
            - BranchSide:      'strfuncs.c:568,17'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:570,27'
              BranchSideFuncs:
                - strcasecmp
      Callsites:
        - Src:             'strfuncs.c:570,16'
          Dst:             strcasecmp
    - functionName:    null_strcmp
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 554
      functionLinenumberEnd: 561
      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:    11
      BranchProfiles:
        - Branch String:   'strfuncs.c:555,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:556,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:557,6'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'strfuncs.c:557,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:558,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:560,16'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'strfuncs.c:560,9'
          Dst:             strcmp
    - functionName:    p_str_rtrim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 551
      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:548,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:549,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:550,24'
              BranchSideFuncs:
                - p_strdup_until
      Callsites:
        - Src:             'strfuncs.c:547,2'
          Dst:             str_trim_parse
        - Src:             'strfuncs.c:550,9'
          Dst:             p_strdup_until
    - functionName:    str_trim_parse
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 460
      functionLinenumberEnd: 489
      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:466,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:467,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:469,6'
              BranchSideFuncs:
                - strchr
                - strchr
        - Branch String:   'strfuncs.c:470,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:471,3'
              BranchSideFuncs:
                - strchr
                - strchr
            - BranchSide:      'strfuncs.c:476,10'
              BranchSideFuncs:
                - strchr
        - Branch String:   'strfuncs.c:471,19'
          Branch Sides:
            - BranchSide:      'strfuncs.c:471,29'
              BranchSideFuncs:
                - strchr
                - strchr
            - BranchSide:      'strfuncs.c:471,3'
              BranchSideFuncs:
                - strchr
                - strchr
        - Branch String:   'strfuncs.c:471,3'
          Branch Sides:
            - BranchSide:      'strfuncs.c:472,5'
              BranchSideFuncs:
                - strchr
                - strchr
            - BranchSide:      'strfuncs.c:473,7'
              BranchSideFuncs:
                - strchr
        - Branch String:   'strfuncs.c:473,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:474,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:475,2'
              BranchSideFuncs:
                - strchr
        - Branch String:   'strfuncs.c:479,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:480,3'
              BranchSideFuncs:
                - strchr
            - BranchSide:      'strfuncs.c:485,8'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:480,20'
          Branch Sides:
            - BranchSide:      'strfuncs.c:480,30'
              BranchSideFuncs:
                - strchr
            - BranchSide:      'strfuncs.c:480,3'
              BranchSideFuncs:
                - strchr
        - Branch String:   'strfuncs.c:480,3'
          Branch Sides:
            - BranchSide:      'strfuncs.c:481,5'
              BranchSideFuncs:
                - strchr
            - BranchSide:      'strfuncs.c:482,7'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:482,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:483,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:484,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:465,15'
          Dst:             strlen
        - Src:             'strfuncs.c:471,22'
          Dst:             strchr
        - Src:             'strfuncs.c:480,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.10023
      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: 534
      functionLinenumberEnd: 541
      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:538,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:539,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:540,24'
              BranchSideFuncs:
                - t_strdup_until
      Callsites:
        - Src:             'strfuncs.c:537,2'
          Dst:             str_trim_parse
        - Src:             'strfuncs.c:540,9'
          Dst:             t_strdup_until
    - functionName:    p_str_ltrim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 530
      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:
        - str_ltrim
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:530,24'
          Dst:             str_ltrim
        - Src:             'strfuncs.c:530,9'
          Dst:             p_strdup
    - functionName:    str_ltrim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 514
      functionLinenumberEnd: 521
      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:518,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:519,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:520,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:517,2'
          Dst:             str_trim_parse
    - functionName:    t_str_ltrim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 525
      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
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:525,18'
          Dst:             str_ltrim
        - Src:             'strfuncs.c:525,9'
          Dst:             t_strdup
    - functionName:    t_strdup
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 248
      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:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:248,9'
          Dst:             t_strdup_noconst
    - functionName:    t_strdup_noconst
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 256
      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
      functionUses:    6
      BranchProfiles:
        - Branch String:   'strfuncs.c:253,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:254,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:255,18'
              BranchSideFuncs:
                - strlen
                - t_memdup
      Callsites:
        - Src:             'strfuncs.c:255,23'
          Dst:             strlen
        - Src:             'strfuncs.c:255,9'
          Dst:             t_memdup
    - functionName:    t_memdup
      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:    1
      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: 503
      functionLinenumberEnd: 511
      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:508,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:509,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:510,24'
              BranchSideFuncs:
                - p_strdup_until
      Callsites:
        - Src:             'strfuncs.c:506,2'
          Dst:             str_trim_parse
        - Src:             'strfuncs.c:510,9'
          Dst:             p_strdup_until
    - functionName:    t_str_trim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 500
      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:497,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:498,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:499,24'
              BranchSideFuncs:
                - t_strdup_until
      Callsites:
        - Src:             'strfuncs.c:495,2'
          Dst:             str_trim_parse
        - Src:             'strfuncs.c:499,9'
          Dst:             t_strdup_until
    - functionName:    i_strstr_arr
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 449
      functionLinenumberEnd: 455
      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:451,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:452,21'
              BranchSideFuncs:
                - strstr
            - BranchSide:      'strfuncs.c:454,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:452,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:452,45'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:453,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:452,14'
          Dst:             strstr
    - functionName:    t_str_ucase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         7
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - t_strdup_noconst
      functionUses:    10
      BranchProfiles:
        - Branch String:   'strfuncs.c:443,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:443,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:443,2'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_ucase
      Callsites:
        - Src:             'strfuncs.c:443,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:445,19'
          Dst:             t_strdup_noconst
        - Src:             'strfuncs.c:445,9'
          Dst:             str_ucase
    - functionName:    str_ucase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - toupper
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:420,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:421,8'
              BranchSideFuncs:
                - toupper
            - BranchSide:      'strfuncs.c:422,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:421,8'
          Dst:             toupper
    - functionName:    t_str_lcase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 435
      functionLinenumberEnd: 438
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         7
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - t_strdup_noconst
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:436,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:436,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:436,2'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_lcase
      Callsites:
        - Src:             'strfuncs.c:436,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:438,19'
          Dst:             t_strdup_noconst
        - Src:             'strfuncs.c:438,9'
          Dst:             str_lcase
    - functionName:    str_lcase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 426
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - tolower
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:429,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:430,8'
              BranchSideFuncs:
                - tolower
            - BranchSide:      'strfuncs.c:431,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:430,8'
          Dst:             tolower
    - functionName:    i_strocpy
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 414
      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:404,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:405,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:407,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:407,22'
          Branch Sides:
            - BranchSide:      'strfuncs.c:407,25'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:407,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:407,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:408,17'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:412,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: 354
      functionLinenumberEnd: 400
      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
        - strlen
        - strpbrk
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:360,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:361,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:363,15'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
                - str_append_c.10097
                - str_append_data.10098
                - str_append_data.10098
        - Branch String:   'strfuncs.c:368,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:369,12'
              BranchSideFuncs:
                - str_append_c.10097
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
                - str_append_data.10098
                - str_append_data.10098
            - BranchSide:      'strfuncs.c:395,6'
              BranchSideFuncs:
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
        - Branch String:   'strfuncs.c:369,3'
          Branch Sides:
            - BranchSide:      'strfuncs.c:371,8'
              BranchSideFuncs:
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
                - str_append_c.10097
                - str_append_data.10098
                - str_append_data.10098
            - BranchSide:      'strfuncs.c:377,8'
              BranchSideFuncs:
                - str_append_c.10097
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
                - str_append_data.10098
                - str_append_data.10098
            - BranchSide:      'strfuncs.c:389,13'
              BranchSideFuncs:
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
                - str_append_c.10097
                - str_append_data.10098
                - str_append_data.10098
        - Branch String:   'strfuncs.c:371,8'
          Branch Sides:
            - BranchSide:      'strfuncs.c:372,21'
              BranchSideFuncs:
                - str_append_data.10098
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
                - str_append_c.10097
                - str_append_data.10098
            - BranchSide:      'strfuncs.c:374,11'
              BranchSideFuncs:
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
                - str_append_c.10097
                - str_append_data.10098
                - str_append_data.10098
        - Branch String:   'strfuncs.c:377,8'
          Branch Sides:
            - BranchSide:      'strfuncs.c:378,21'
              BranchSideFuncs:
                - str_append_data.10098
                - str_append_c.10097
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
                - str_append_data.10098
            - BranchSide:      'strfuncs.c:379,8'
              BranchSideFuncs:
                - str_append_c.10097
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
                - str_append_data.10098
                - str_append_data.10098
        - Branch String:   'strfuncs.c:379,8'
          Branch Sides:
            - BranchSide:      'strfuncs.c:381,4'
              BranchSideFuncs:
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
                - str_append_c.10097
                - str_append_data.10098
                - str_append_data.10098
            - BranchSide:      'strfuncs.c:383,5'
              BranchSideFuncs:
                - str_append_c.10097
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_len.10096
                - str_truncate.10095
                - str_append_data.10098
                - str_append_data.10098
        - Branch String:   'strfuncs.c:395,15'
          Branch Sides:
            - BranchSide:      'strfuncs.c:395,26'
              BranchSideFuncs:
                - str_len.10096
                - str_c
                - str_append_data.10098
                - str_len.10096
                - str_truncate.10095
            - BranchSide:      'strfuncs.c:397,11'
              BranchSideFuncs:
                - str_c
                - str_append_data.10098
        - Branch String:   'strfuncs.c:395,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:396,16'
              BranchSideFuncs:
                - str_len.10096
                - str_truncate.10095
                - str_c
            - BranchSide:      'strfuncs.c:397,11'
              BranchSideFuncs:
                - str_c
                - str_append_data.10098
      Callsites:
        - Src:             'strfuncs.c:360,6'
          Dst:             strpbrk
        - Src:             'strfuncs.c:363,8'
          Dst:             strlen
        - Src:             'strfuncs.c:364,8'
          Dst:             t_str_new
        - Src:             'strfuncs.c:372,5'
          Dst:             str_append_data
        - Src:             'strfuncs.c:378,5'
          Dst:             str_append_data
        - Src:             'strfuncs.c:383,5'
          Dst:             str_append_c
        - Src:             'strfuncs.c:395,18'
          Dst:             str_len
        - Src:             'strfuncs.c:396,21'
          Dst:             str_len
        - Src:             'strfuncs.c:396,3'
          Dst:             str_truncate
        - Src:             'strfuncs.c:398,3'
          Dst:             str_append_data
        - Src:             'strfuncs.c:399,9'
          Dst:             str_c
    - functionName:    t_str_replace
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 351
      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:338,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:339,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:341,15'
              BranchSideFuncs:
                - strlen
                - t_malloc_no0
        - Branch String:   'strfuncs.c:343,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:344,7'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:349,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:344,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:345,13'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:347,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:338,6'
          Dst:             strchr
        - Src:             'strfuncs.c:341,8'
          Dst:             strlen
        - Src:             'strfuncs.c:342,8'
          Dst:             t_malloc_no0
    - functionName:    t_strcut
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 331
      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:325,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:326,8'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'strfuncs.c:330,16'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:326,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:327,47'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'strfuncs.c:328,2'
              BranchSideFuncs:
                - t_strdup_until
      Callsites:
        - Src:             'strfuncs.c:327,32'
          Dst:             t_strdup_until
    - functionName:    t_strconcat
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 318
      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:    38
      BranchProfiles:
        - Branch String:   'strfuncs.c:310,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:310,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:310,2'
              BranchSideFuncs:
                - vstrconcat
                - t_buffer_alloc
      Callsites:
        - Src:             'strfuncs.c:310,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:314,8'
          Dst:             vstrconcat
        - Src:             'strfuncs.c:315,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: 300
      functionLinenumberEnd: 301
      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:301,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.10023
      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: 288
      functionLinenumberEnd: 296
      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:    170
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:293,8'
          Dst:             p_strdup_vprintf
    - functionName:    t_strndup
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 284
      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:283,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:283,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:283,2'
              BranchSideFuncs:
                - p_strndup
      Callsites:
        - Src:             'strfuncs.c:283,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:284,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:    4
      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.10023
                - 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.10023
        - Branch String:   'strfuncs.c:103,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:104,9'
              BranchSideFuncs:
                - p_malloc.10023
            - BranchSide:      'strfuncs.c:106,9'
              BranchSideFuncs:
                - p_malloc.10023
      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: 259
      functionLinenumberEnd: 264
      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:260,18'
          Branch Sides:
            - BranchSide:      'strfuncs.c:260,22'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:261,3'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:260,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:261,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:263,18'
              BranchSideFuncs:
                - t_strdup
      Callsites:
        - Src:             'strfuncs.c:263,9'
          Dst:             t_strdup
    - 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:    4
      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.10023
                - 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.10023
      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:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:119,15'
          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:    11
      BranchProfiles:
        - Branch String:   'strfuncs.c:73,18'
          Branch Sides:
            - BranchSide:      'strfuncs.c:73,22'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:74,17'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:73,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:74,17'
              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:    3
      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:    1
      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:    4
      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:    10
      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:    13
      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:    2
      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:    1
      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:    0
      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:    5
      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:    0
      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:    1
      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:    1
      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:    20
      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:    5
      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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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.10329
                - 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.10329
                - 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.10329
                - 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.10329
                - 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:    0
      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:          54
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      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:18,18'
          Branch Sides:
            - BranchSide:      'time-util.c:20,6'
              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:    18
      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: 446
      functionLinenumberEnd: 459
      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:447,6'
          Branch Sides:
            - BranchSide:      'unichar.c:448,10'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:449,6'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:449,6'
          Branch Sides:
            - BranchSide:      'unichar.c:450,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:452,7'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:452,6'
          Branch Sides:
            - BranchSide:      'unichar.c:453,10'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:454,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:454,26'
          Branch Sides:
            - BranchSide:      'unichar.c:454,30'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:454,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:454,2'
          Branch Sides:
            - BranchSide:      'unichar.c:455,15'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:456,6'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:456,23'
          Branch Sides:
            - BranchSide:      'unichar.c:456,27'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:458,9'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:456,6'
          Branch Sides:
            - BranchSide:      'unichar.c:457,15'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:458,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    uni_utf8_data_is_valid
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 441
      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:441,9'
          Dst:             uni_utf8_find_invalid_pos
    - functionName:    uni_utf8_find_invalid_pos
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 397
      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:384,2'
          Branch Sides:
            - BranchSide:      'unichar.c:385,7'
              BranchSideFuncs:
                - is_valid_utf8_seq
            - BranchSide:      'unichar.c:396,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:385,7'
          Branch Sides:
            - BranchSide:      'unichar.c:386,5'
              BranchSideFuncs:
                - is_valid_utf8_seq
            - BranchSide:      'unichar.c:388,28'
              BranchSideFuncs:
                - is_valid_utf8_seq
        - Branch String:   'unichar.c:389,8'
          Branch Sides:
            - BranchSide:      'unichar.c:390,14'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:393,9'
              BranchSideFuncs:
                - is_valid_utf8_seq
      Callsites:
        - Src:             'unichar.c:388,10'
          Dst:             is_valid_utf8_seq
    - functionName:    is_valid_utf8_seq
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 375
      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:375,9'
          Branch Sides:
            - BranchSide:      'unichar.c:375,9'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:375,24'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:374,12'
          Dst:             uni_utf8_get_char_n
    - functionName:    uni_utf8_get_char_n
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 116
      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:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:116,9'
          Dst:             uni_utf8_parse_char
    - functionName:    uni_utf8_parse_char
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 107
      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:43,2'
          Branch Sides:
            - BranchSide:      'unichar.c:43,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unichar.c:45,7'
              BranchSideFuncs:
                - uni_utf8_char_bytes.10419
                - uni_is_valid_ucs4
                - i_panic
        - Branch String:   'unichar.c:45,6'
          Branch Sides:
            - BranchSide:      'unichar.c:46,13'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:52,9'
              BranchSideFuncs:
                - uni_utf8_char_bytes.10419
                - uni_is_valid_ucs4
                - i_panic
        - Branch String:   'unichar.c:54,2'
          Branch Sides:
            - BranchSide:      'unichar.c:56,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:59,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:62,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:65,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:68,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:72,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unichar.c:72,3'
          Branch Sides:
            - BranchSide:      'unichar.c:72,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unichar.c:73,3'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:76,6'
          Branch Sides:
            - BranchSide:      'unichar.c:77,45'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:81,20'
              BranchSideFuncs:
                - uni_is_valid_ucs4
        - Branch String:   'unichar.c:87,2'
          Branch Sides:
            - BranchSide:      'unichar.c:88,8'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:98,25'
              BranchSideFuncs:
                - uni_is_valid_ucs4
        - Branch String:   'unichar.c:88,7'
          Branch Sides:
            - BranchSide:      'unichar.c:89,12'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:93,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
        - Branch String:   'unichar.c:89,17'
          Branch Sides:
            - BranchSide:      'unichar.c:89,20'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:89,12'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:89,37'
          Branch Sides:
            - BranchSide:      'unichar.c:89,40'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:89,12'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:98,6'
          Branch Sides:
            - BranchSide:      'unichar.c:99,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:100,6'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:100,6'
          Branch Sides:
            - BranchSide:      'unichar.c:102,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:105,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:43,2'
          Dst:             i_panic
        - Src:             'unichar.c:53,8'
          Dst:             uni_utf8_char_bytes
        - Src:             'unichar.c:72,3'
          Dst:             i_panic
        - Src:             'unichar.c:98,7'
          Dst:             uni_is_valid_ucs4
    - functionName:    uni_utf8_char_bytes
      functionSourceFile: '/src/dovecot/src/lib/./unichar.h'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 114
      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:111,6'
          Branch Sides:
            - BranchSide:      './unichar.h:112,3'
              BranchSideFuncs: []
            - BranchSide:      './unichar.h:113,29'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    uni_is_valid_ucs4
      functionSourceFile: '/src/dovecot/src/lib/./unichar.h'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 61
      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:59,43'
          Branch Sides:
            - BranchSide:      './unichar.h:59,43'
              BranchSideFuncs: []
            - BranchSide:      './unichar.h:60,4'
              BranchSideFuncs: []
        - Branch String:   './unichar.h:60,35'
          Branch Sides:
            - BranchSide:      './unichar.h:60,35'
              BranchSideFuncs: []
            - BranchSide:      './unichar.h:61,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    uni_utf8_str_is_valid
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 434
      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:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:434,7'
          Dst:             strlen
        - Src:             'unichar.c:433,9'
          Dst:             uni_utf8_find_invalid_pos
    - functionName:    uni_utf8_get_valid_data
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 427
      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:404,6'
          Branch Sides:
            - BranchSide:      'unichar.c:405,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:408,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:411,2'
          Branch Sides:
            - BranchSide:      'unichar.c:412,7'
              BranchSideFuncs:
                - is_valid_utf8_seq
                - buffer_append
                - output_add_replacement_char
                - buffer_append_c
            - BranchSide:      'unichar.c:426,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:412,7'
          Branch Sides:
            - BranchSide:      'unichar.c:413,20'
              BranchSideFuncs:
                - buffer_append_c
                - is_valid_utf8_seq
                - buffer_append
                - output_add_replacement_char
            - BranchSide:      'unichar.c:417,27'
              BranchSideFuncs:
                - is_valid_utf8_seq
                - buffer_append
                - buffer_append_c
                - output_add_replacement_char
        - Branch String:   'unichar.c:418,7'
          Branch Sides:
            - BranchSide:      'unichar.c:419,5'
              BranchSideFuncs:
                - output_add_replacement_char
                - is_valid_utf8_seq
                - buffer_append
                - buffer_append_c
            - BranchSide:      'unichar.c:423,17'
              BranchSideFuncs:
                - buffer_append
                - is_valid_utf8_seq
                - output_add_replacement_char
                - buffer_append_c
      Callsites:
        - Src:             'unichar.c:404,6'
          Dst:             uni_utf8_find_invalid_pos
        - Src:             'unichar.c:408,2'
          Dst:             buffer_append
        - Src:             'unichar.c:410,2'
          Dst:             output_add_replacement_char
        - Src:             'unichar.c:413,4'
          Dst:             buffer_append_c
        - Src:             'unichar.c:417,9'
          Dst:             is_valid_utf8_seq
        - Src:             'unichar.c:420,4'
          Dst:             output_add_replacement_char
        - Src:             'unichar.c:423,3'
          Dst:             buffer_append
    - functionName:    output_add_replacement_char
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 339
      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:331,48'
          Branch Sides:
            - BranchSide:      'unichar.c:332,13'
              BranchSideFuncs:
                - memcmp
                - buffer_append
            - BranchSide:      'unichar.c:338,16'
              BranchSideFuncs:
                - buffer_append
        - Branch String:   'unichar.c:331,6'
          Branch Sides:
            - BranchSide:      'unichar.c:336,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:338,16'
              BranchSideFuncs:
                - buffer_append
      Callsites:
        - Src:             'unichar.c:332,6'
          Dst:             memcmp
        - Src:             'unichar.c:338,2'
          Dst:             buffer_append
    - functionName:    uni_ucs4_decompose_multi_utf8
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - chr
        - output
      BBCount:         15
      ICount:          80
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - uint32_find
        - uni_ucs4_to_utf8_c
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unichar.c:316,32'
          Branch Sides:
            - BranchSide:      'unichar.c:316,35'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:317,3'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:316,6'
          Branch Sides:
            - BranchSide:      'unichar.c:317,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:320,5'
              BranchSideFuncs:
                - uint32_find
                - uni_ucs4_to_utf8_c
        - Branch String:   'unichar.c:319,6'
          Branch Sides:
            - BranchSide:      'unichar.c:321,3'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
            - BranchSide:      'unichar.c:323,50'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
        - Branch String:   'unichar.c:324,2'
          Branch Sides:
            - BranchSide:      'unichar.c:325,23'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
            - BranchSide:      'unichar.c:326,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:319,7'
          Dst:             uint32_find
        - Src:             'unichar.c:325,3'
          Dst:             uni_ucs4_to_utf8_c
    - functionName:    uint32_find
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - count
        - value
        - idx_r
      BBCount:         17
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'unichar.c:243,2'
          Branch Sides:
            - BranchSide:      'unichar.c:243,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unichar.c:243,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:243,2'
          Branch Sides:
            - BranchSide:      'unichar.c:243,2'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:243,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:243,2'
          Branch Sides:
            - BranchSide:      'unichar.c:243,2'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:243,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:243,2'
          Branch Sides:
            - BranchSide:      'unichar.c:243,2'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:243,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:243,2'
          Dst:             i_panic
    - functionName:    uni_ucs4_to_utf8_c
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 202
      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:    6
      BranchProfiles:
        - Branch String:   'unichar.c:168,6'
          Branch Sides:
            - BranchSide:      'unichar.c:169,19'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'unichar.c:173,2'
              BranchSideFuncs:
                - uni_is_valid_ucs4
                - buffer_append_c
                - buffer_append_c
                - i_panic
        - Branch String:   'unichar.c:173,2'
          Branch Sides:
            - BranchSide:      'unichar.c:173,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unichar.c:175,6'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
        - Branch String:   'unichar.c:175,6'
          Branch Sides:
            - BranchSide:      'unichar.c:177,10'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
            - BranchSide:      'unichar.c:179,13'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
        - Branch String:   'unichar.c:179,13'
          Branch Sides:
            - BranchSide:      'unichar.c:181,10'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
            - BranchSide:      'unichar.c:183,13'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
        - Branch String:   'unichar.c:183,13'
          Branch Sides:
            - BranchSide:      'unichar.c:185,10'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
            - BranchSide:      'unichar.c:187,13'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
        - Branch String:   'unichar.c:187,13'
          Branch Sides:
            - BranchSide:      'unichar.c:189,10'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
            - BranchSide:      'unichar.c:193,10'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
        - Branch String:   'unichar.c:201,2'
          Branch Sides:
            - BranchSide:      'unichar.c:199,10'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'unichar.c:201,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:169,3'
          Dst:             buffer_append_c
        - Src:             'unichar.c:173,2'
          Dst:             uni_is_valid_ucs4
        - Src:             'unichar.c:173,2'
          Dst:             i_panic
        - Src:             'unichar.c:196,2'
          Dst:             buffer_append_c
        - Src:             'unichar.c:200,3'
          Dst:             buffer_append_c
    - functionName:    uni_ucs4_decompose_uni
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - chr
      BBCount:         18
      ICount:          110
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - uint16_find
        - uint32_find
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unichar.c:271,6'
          Branch Sides:
            - BranchSide:      'unichar.c:272,24'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:275,14'
              BranchSideFuncs:
                - uint32_find
                - uint16_find
        - Branch String:   'unichar.c:272,7'
          Branch Sides:
            - BranchSide:      'unichar.c:273,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:274,27'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:275,13'
          Branch Sides:
            - BranchSide:      'unichar.c:276,8'
              BranchSideFuncs:
                - uint16_find
            - BranchSide:      'unichar.c:285,38'
              BranchSideFuncs:
                - uint32_find
        - Branch String:   'unichar.c:276,7'
          Branch Sides:
            - BranchSide:      'unichar.c:277,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:280,38'
              BranchSideFuncs:
                - uint16_find
        - Branch String:   'unichar.c:279,7'
          Branch Sides:
            - BranchSide:      'unichar.c:281,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:282,30'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:284,7'
          Branch Sides:
            - BranchSide:      'unichar.c:286,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:287,30'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:279,8'
          Dst:             uint16_find
        - Src:             'unichar.c:284,8'
          Dst:             uint32_find
    - functionName:    uint16_find
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - count
        - value
        - idx_r
      BBCount:         17
      ICount:          112
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'unichar.c:237,2'
          Branch Sides:
            - BranchSide:      'unichar.c:237,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unichar.c:237,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:237,2'
          Branch Sides:
            - BranchSide:      'unichar.c:237,2'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:237,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:237,2'
          Branch Sides:
            - BranchSide:      'unichar.c:237,2'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:237,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:237,2'
          Branch Sides:
            - BranchSide:      'unichar.c:237,2'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:237,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:237,2'
          Dst:             i_panic
    - functionName:    uni_ucs4_decompose_hangul_utf8
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - chr
        - output
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - uni_ucs4_to_utf8_c
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unichar.c:308,6'
          Branch Sides:
            - BranchSide:      'unichar.c:308,37'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
            - BranchSide:      'unichar.c:308,6'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:306,2'
          Dst:             uni_ucs4_to_utf8_c
        - Src:             'unichar.c:307,2'
          Dst:             uni_ucs4_to_utf8_c
        - Src:             'unichar.c:308,18'
          Dst:             uni_ucs4_to_utf8_c
    - functionName:    uni_utf8_to_decomposed_titlecase
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - _input
        - size
        - output
      BBCount:         20
      ICount:          120
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - output_add_replacement_char
        - uni_ucs4_decompose_hangul_utf8
        - uni_ucs4_decompose_multi_utf8
        - uni_ucs4_decompose_uni
        - uni_ucs4_to_titlecase
        - uni_ucs4_to_utf8_c
        - uni_utf8_get_char_n
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unichar.c:348,2'
          Branch Sides:
            - BranchSide:      'unichar.c:349,35'
              BranchSideFuncs:
                - uni_utf8_get_char_n
                - uni_ucs4_to_titlecase
                - uni_ucs4_decompose_uni
                - uni_ucs4_decompose_multi_utf8
                - uni_ucs4_to_utf8_c
                - uni_ucs4_decompose_hangul_utf8
                - output_add_replacement_char
            - BranchSide:      'unichar.c:367,9'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:350,7'
          Branch Sides:
            - BranchSide:      'unichar.c:352,8'
              BranchSideFuncs:
                - output_add_replacement_char
                - uni_utf8_get_char_n
                - uni_ucs4_to_titlecase
                - uni_ucs4_decompose_uni
                - uni_ucs4_decompose_multi_utf8
                - uni_ucs4_to_utf8_c
                - uni_ucs4_decompose_hangul_utf8
            - BranchSide:      'unichar.c:357,12'
              BranchSideFuncs:
                - uni_ucs4_to_titlecase
                - uni_ucs4_decompose_uni
                - uni_ucs4_decompose_multi_utf8
                - uni_ucs4_to_utf8_c
                - uni_utf8_get_char_n
                - output_add_replacement_char
                - uni_ucs4_decompose_hangul_utf8
        - Branch String:   'unichar.c:361,27'
          Branch Sides:
            - BranchSide:      'unichar.c:361,30'
              BranchSideFuncs:
                - uni_ucs4_decompose_uni
                - uni_ucs4_decompose_multi_utf8
                - uni_ucs4_to_utf8_c
                - uni_utf8_get_char_n
                - uni_ucs4_to_titlecase
                - output_add_replacement_char
                - uni_ucs4_decompose_hangul_utf8
            - BranchSide:      'unichar.c:363,12'
              BranchSideFuncs:
                - uni_ucs4_decompose_uni
                - uni_ucs4_decompose_multi_utf8
                - uni_ucs4_to_utf8_c
                - uni_utf8_get_char_n
                - uni_ucs4_to_titlecase
                - uni_ucs4_decompose_hangul_utf8
                - output_add_replacement_char
        - Branch String:   'unichar.c:361,7'
          Branch Sides:
            - BranchSide:      'unichar.c:362,35'
              BranchSideFuncs:
                - uni_ucs4_decompose_hangul_utf8
                - uni_utf8_get_char_n
                - uni_ucs4_to_titlecase
                - uni_ucs4_decompose_uni
                - uni_ucs4_decompose_multi_utf8
                - uni_ucs4_to_utf8_c
                - output_add_replacement_char
            - BranchSide:      'unichar.c:363,12'
              BranchSideFuncs:
                - uni_ucs4_decompose_uni
                - uni_ucs4_decompose_multi_utf8
                - uni_ucs4_to_utf8_c
                - uni_utf8_get_char_n
                - uni_ucs4_to_titlecase
                - uni_ucs4_decompose_hangul_utf8
                - output_add_replacement_char
        - Branch String:   'unichar.c:363,41'
          Branch Sides:
            - BranchSide:      'unichar.c:364,36'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
                - uni_utf8_get_char_n
                - uni_ucs4_to_titlecase
                - uni_ucs4_decompose_uni
                - uni_ucs4_decompose_multi_utf8
                - uni_ucs4_decompose_hangul_utf8
                - output_add_replacement_char
            - BranchSide:      'unichar.c:365,23'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
                - uni_utf8_get_char_n
                - uni_ucs4_to_titlecase
                - uni_ucs4_decompose_uni
                - uni_ucs4_decompose_multi_utf8
                - uni_ucs4_decompose_hangul_utf8
                - output_add_replacement_char
      Callsites:
        - Src:             'unichar.c:349,15'
          Dst:             uni_utf8_get_char_n
        - Src:             'unichar.c:354,4'
          Dst:             output_add_replacement_char
        - Src:             'unichar.c:360,9'
          Dst:             uni_ucs4_to_titlecase
        - Src:             'unichar.c:362,4'
          Dst:             uni_ucs4_decompose_hangul_utf8
        - Src:             'unichar.c:363,12'
          Dst:             uni_ucs4_decompose_uni
        - Src:             'unichar.c:364,6'
          Dst:             uni_ucs4_decompose_multi_utf8
        - Src:             'unichar.c:365,4'
          Dst:             uni_ucs4_to_utf8_c
    - functionName:    uni_ucs4_to_titlecase
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - chr
      BBCount:         12
      ICount:          74
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - uint16_find
        - uint32_find
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unichar.c:250,6'
          Branch Sides:
            - BranchSide:      'unichar.c:251,25'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:252,11'
              BranchSideFuncs:
                - uint32_find
                - uint16_find
        - Branch String:   'unichar.c:252,11'
          Branch Sides:
            - BranchSide:      'unichar.c:254,6'
              BranchSideFuncs:
                - uint16_find
            - BranchSide:      'unichar.c:260,6'
              BranchSideFuncs:
                - uint32_find
        - Branch String:   'unichar.c:253,7'
          Branch Sides:
            - BranchSide:      'unichar.c:255,11'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:257,30'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:259,7'
          Branch Sides:
            - BranchSide:      'unichar.c:261,11'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:263,30'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:253,8'
          Dst:             uint16_find
        - Src:             'unichar.c:259,8'
          Dst:             uint32_find
    - functionName:    uni_utf8_partial_strlen_n
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 231
      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:223,2'
          Branch Sides:
            - BranchSide:      'unichar.c:223,2'
              BranchSideFuncs:
                - uni_utf8_char_bytes.10419
            - BranchSide:      'unichar.c:224,31'
              BranchSideFuncs:
                - uni_utf8_char_bytes.10419
        - Branch String:   'unichar.c:225,7'
          Branch Sides:
            - BranchSide:      'unichar.c:226,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:227,8'
              BranchSideFuncs:
                - uni_utf8_char_bytes.10419
      Callsites:
        - Src:             'unichar.c:224,11'
          Dst:             uni_utf8_char_bytes
    - functionName:    uni_utf8_strlen_n
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 213
      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:213,9'
          Dst:             uni_utf8_partial_strlen_n
    - functionName:    uni_utf8_strlen
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 206
      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:206,34'
          Dst:             strlen
        - Src:             'unichar.c:206,9'
          Dst:             uni_utf8_strlen_n
    - functionName:    uni_ucs4_to_utf8
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 161
      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:    1
      BranchProfiles:
        - Branch String:   'unichar.c:159,17'
          Branch Sides:
            - BranchSide:      'unichar.c:159,21'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
            - BranchSide:      'unichar.c:159,2'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
        - Branch String:   'unichar.c:159,2'
          Branch Sides:
            - BranchSide:      'unichar.c:160,23'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
            - BranchSide:      'unichar.c:161,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:160,3'
          Dst:             uni_ucs4_to_utf8_c
    - functionName:    uni_utf8_to_ucs4_n
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 155
      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:146,2'
          Branch Sides:
            - BranchSide:      'unichar.c:147,33'
              BranchSideFuncs:
                - uni_utf8_get_char_n
                - array_append_i.10426
            - BranchSide:      'unichar.c:154,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:148,7'
          Branch Sides:
            - BranchSide:      'unichar.c:149,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:150,12'
              BranchSideFuncs:
                - array_append_i.10426
                - uni_utf8_get_char_n
      Callsites:
        - Src:             'unichar.c:147,13'
          Dst:             uni_utf8_get_char_n
        - Src:             'unichar.c:152,3'
          Dst:             array_append_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:210,2'
          Dst:             buffer_append
    - functionName:    uni_utf8_to_ucs4
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 139
      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:128,2'
          Branch Sides:
            - BranchSide:      'unichar.c:129,31'
              BranchSideFuncs:
                - uni_utf8_get_char
                - array_append_i.10426
            - BranchSide:      'unichar.c:138,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:130,7'
          Branch Sides:
            - BranchSide:      'unichar.c:132,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:134,26'
              BranchSideFuncs:
                - array_append_i.10426
                - uni_utf8_get_char
      Callsites:
        - Src:             'unichar.c:129,13'
          Dst:             uni_utf8_get_char
        - Src:             'unichar.c:136,3'
          Dst:             array_append_i
    - functionName:    uni_utf8_get_char
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 111
      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:111,9'
          Dst:             uni_utf8_parse_char
    - functionName:    uni_utf8_get_char_buf
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 121
      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:121,9'
          Dst:             uni_utf8_parse_char
    - functionName:    uni_strlen
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 29
      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:27,2'
          Branch Sides:
            - BranchSide:      'unichar.c:27,34'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:29,9'
              BranchSideFuncs: []
      Callsites:       []
    - 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:    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:    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:    2
      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:    base64url_encode
      functionSourceFile: '/src/dovecot/src/lib/./base64.h'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - flags
        - max_line_len
        - src
        - src_size
        - dest
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - base64_scheme_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './base64.h:346,2'
          Dst:             base64_scheme_encode
    - functionName:    base64_encode
      functionSourceFile: '/src/dovecot/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:             './base64.h:287,2'
          Dst:             base64_scheme_encode
    - 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:    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_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:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      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_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:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:72,32'
          Dst:             strlen
        - Src:             './str.h:72,2'
          Dst:             buffer_insert
    - functionName:    str_escape
      functionSourceFile: '/src/dovecot/src/lib/./strescape.h'
      linkageType:     InternalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 13
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_nescape
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './strescape.h:13,26'
          Dst:             strlen
        - Src:             './strescape.h:13,9'
          Dst:             str_nescape
    - functionName:    m_str_trim
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - ctx
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __ctype_b_loc
        - strlen
        - t_strndup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:153,17'
          Branch Sides:
            - BranchSide:      'var-expand.c:153,20'
              BranchSideFuncs:
                - __ctype_b_loc
                - t_strndup
            - BranchSide:      'var-expand.c:153,2'
              BranchSideFuncs:
                - t_strndup
                - __ctype_b_loc
        - Branch String:   'var-expand.c:153,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:154,6'
              BranchSideFuncs:
                - t_strndup
                - __ctype_b_loc
            - BranchSide:      'var-expand.c:155,19'
              BranchSideFuncs:
                - t_strndup
      Callsites:
        - Src:             'var-expand.c:152,8'
          Dst:             strlen
        - Src:             'var-expand.c:153,20'
          Dst:             __ctype_b_loc
        - Src:             'var-expand.c:155,9'
          Dst:             t_strndup
    - functionName:    m_str_ldap_dn
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - ctx
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_append
        - str_append_c
        - str_free_without_data
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:136,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:137,8'
              BranchSideFuncs:
                - str_append_c.10564
                - str_free_without_data
                - str_append.10563
            - BranchSide:      'var-expand.c:144,9'
              BranchSideFuncs:
                - str_free_without_data
        - Branch String:   'var-expand.c:137,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:138,15'
              BranchSideFuncs:
                - str_append.10563
                - str_free_without_data
                - str_append_c.10564
            - BranchSide:      'var-expand.c:140,4'
              BranchSideFuncs:
                - str_append_c.10564
                - str_free_without_data
                - str_append.10563
      Callsites:
        - Src:             'var-expand.c:134,18'
          Dst:             t_str_new
        - Src:             'var-expand.c:138,4'
          Dst:             str_append
        - Src:             'var-expand.c:140,4'
          Dst:             str_append_c
        - Src:             'var-expand.c:144,9'
          Dst:             str_free_without_data
    - 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:    6
      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:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    m_str_md5
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - ctx
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - binary_to_hex
        - md5_get_digest
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand.c:126,22'
          Dst:             strlen
        - Src:             'var-expand.c:126,2'
          Dst:             md5_get_digest
        - Src:             'var-expand.c:128,9'
          Dst:             binary_to_hex
    - functionName:    m_str_newhash
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - ctx
      BBCount:         13
      ICount:          110
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - md5_get_digest
        - str_c
        - str_insert
        - str_len
        - str_printfa
        - strlen
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:103,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:104,9'
              BranchSideFuncs:
                - str_printfa
                - str_len.10558
                - str_c
                - str_insert.10560
            - BranchSide:      'var-expand.c:108,6'
              BranchSideFuncs:
                - str_printfa
                - str_len.10558
                - str_c
                - str_insert.10560
        - Branch String:   'var-expand.c:108,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:109,12'
              BranchSideFuncs:
                - str_printfa
                - str_len.10558
                - str_c
                - str_insert.10560
            - BranchSide:      'var-expand.c:113,14'
              BranchSideFuncs:
                - str_printfa
                - str_len.10558
                - str_c
                - str_insert.10560
        - Branch String:   'var-expand.c:114,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:115,14'
              BranchSideFuncs:
                - str_insert.10560
                - str_len.10558
                - str_c
            - BranchSide:      'var-expand.c:116,2'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'var-expand.c:97,19'
          Dst:             t_str_new
        - Src:             'var-expand.c:102,22'
          Dst:             strlen
        - Src:             'var-expand.c:102,2'
          Dst:             md5_get_digest
        - Src:             'var-expand.c:113,2'
          Dst:             str_printfa
        - Src:             'var-expand.c:114,14'
          Dst:             str_len
        - Src:             'var-expand.c:115,3'
          Dst:             str_insert
        - Src:             'var-expand.c:118,9'
          Dst:             str_c
    - functionName:    m_str_hash
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - ctx
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_c
        - str_hash
        - str_insert
        - str_len
        - str_printfa
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:81,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:82,12'
              BranchSideFuncs:
                - str_printfa
                - str_len.10558
                - str_c
                - str_insert.10560
            - BranchSide:      'var-expand.c:86,14'
              BranchSideFuncs:
                - str_printfa
                - str_len.10558
                - str_c
                - str_insert.10560
        - Branch String:   'var-expand.c:87,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:88,14'
              BranchSideFuncs:
                - str_insert.10560
                - str_len.10558
                - str_c
            - BranchSide:      'var-expand.c:89,2'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'var-expand.c:78,23'
          Dst:             str_hash
        - Src:             'var-expand.c:79,19'
          Dst:             t_str_new
        - Src:             'var-expand.c:86,2'
          Dst:             str_printfa
        - Src:             'var-expand.c:87,14'
          Dst:             str_len
        - Src:             'var-expand.c:88,3'
          Dst:             str_insert
        - Src:             'var-expand.c:91,9'
          Dst:             str_c
    - functionName:    m_str_reverse
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - ctx
      BBCount:         7
      ICount:          64
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - strlen
        - t_malloc_no0
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:71,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:72,11'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:73,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand.c:65,15'
          Dst:             strlen
        - Src:             'var-expand.c:68,8'
          Dst:             t_malloc_no0
    - functionName:    m_str_hex
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - ctx
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_to_ullong
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:57,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:57,6'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand.c:58,5'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'var-expand.c:57,6'
          Dst:             str_to_ullong
        - Src:             'var-expand.c:59,9'
          Dst:             t_strdup_printf
    - functionName:    m_str_escape
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - ctx
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_escape
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand.c:49,9'
          Dst:             str_escape
    - functionName:    m_str_ucase
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - ctx
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_str_ucase
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand.c:43,9'
          Dst:             t_str_ucase
    - functionName:    m_str_lcase
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - ctx
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_str_lcase
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand.c:37,9'
          Dst:             t_str_lcase
    - functionName:    var_expand_func
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - func_table
        - key
        - data
        - context
        - var_r
        - error_r
      BBCount:         27
      ICount:          160
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - getenv
        - strcmp
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:435,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:436,18'
              BranchSideFuncs:
                - getenv
            - BranchSide:      'var-expand.c:440,6'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
                - strcmp
                - t_strdup_printf
        - Branch String:   'var-expand.c:437,12'
          Branch Sides:
            - BranchSide:      'var-expand.c:437,28'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:437,4'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:440,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:441,3'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
                - strcmp
                - t_strdup_printf
            - BranchSide:      'var-expand.c:451,7'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:441,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:442,15'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:450,2'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:442,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:443,11'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand.c:449,3'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
                - strcmp
                - t_strdup_printf
        - Branch String:   'var-expand.c:444,9'
          Branch Sides:
            - BranchSide:      'var-expand.c:445,71'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand.c:446,14'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:446,14'
          Branch Sides:
            - BranchSide:      'var-expand.c:446,30'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:446,6'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:451,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:452,57'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:453,54'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'var-expand.c:435,6'
          Dst:             strcmp
        - Src:             'var-expand.c:436,11'
          Dst:             getenv
        - Src:             'var-expand.c:442,8'
          Dst:             strcmp
        - Src:             'var-expand.c:445,17'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:452,14'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:453,11'
          Dst:             t_strdup_printf
    - functionName:    var_expand_table_size
      functionSourceFile: '/src/dovecot/src/lib/./var-expand.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
      BBCount:         10
      ICount:          56
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   './var-expand.h:49,22'
          Branch Sides:
            - BranchSide:      './var-expand.h:49,26'
              BranchSideFuncs: []
            - BranchSide:      './var-expand.h:49,2'
              BranchSideFuncs: []
        - Branch String:   './var-expand.h:49,2'
          Branch Sides:
            - BranchSide:      './var-expand.h:51,5'
              BranchSideFuncs: []
            - BranchSide:      './var-expand.h:52,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    var_expand_merge_tables
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 881
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - a
        - b
      BBCount:         11
      ICount:          142
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_idx_modifiable_i
        - p_strdup
        - var_expand_table_size
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:886,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:888,4'
              BranchSideFuncs:
                - array_append_space_i.10574
                - p_strdup
                - p_strdup
                - array_append_space_i.10574
                - array_idx_modifiable_i
                - array_append_space_i.10574
                - p_strdup
                - p_strdup
            - BranchSide:      'var-expand.c:893,13'
              BranchSideFuncs:
                - array_append_space_i.10574
                - array_idx_modifiable_i
                - array_append_space_i.10574
                - p_strdup
                - p_strdup
        - Branch String:   'var-expand.c:893,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:895,4'
              BranchSideFuncs:
                - array_append_space_i.10574
                - p_strdup
                - p_strdup
                - array_append_space_i.10574
                - array_idx_modifiable_i
            - BranchSide:      'var-expand.c:900,2'
              BranchSideFuncs:
                - array_append_space_i.10574
                - array_idx_modifiable_i
      Callsites:
        - Src:             'var-expand.c:883,18'
          Dst:             var_expand_table_size
        - Src:             'var-expand.c:884,18'
          Dst:             var_expand_table_size
        - Src:             'var-expand.c:885,2'
          Dst:             array_create_i
        - Src:             'var-expand.c:888,4'
          Dst:             array_append_space_i
        - Src:             'var-expand.c:890,18'
          Dst:             p_strdup
        - Src:             'var-expand.c:891,21'
          Dst:             p_strdup
        - Src:             'var-expand.c:895,4'
          Dst:             array_append_space_i
        - Src:             'var-expand.c:897,18'
          Dst:             p_strdup
        - Src:             'var-expand.c:898,21'
          Dst:             p_strdup
        - Src:             'var-expand.c:900,2'
          Dst:             array_append_space_i
        - Src:             'var-expand.c:901,9'
          Dst:             array_idx_modifiable_i
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.10559
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.10559
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 336
      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:    8
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:334,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 244
      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:242,2'
          Dst:             buffer_delete
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './array.h:273,2'
          Dst:             i_panic
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      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:    var_expand_unregister_func_array
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 863
      functionLinenumberEnd: 876
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - funcs
      BBCount:         18
      ICount:          95
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - array_count_i
        - array_delete_i
        - array_idx_i
        - i_panic
        - strcasecmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:864,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:867,3'
              BranchSideFuncs:
                - array_count_i.10581
                - array_idx_i.10576
                - strcasecmp
                - array_delete_i.10575
                - i_panic
            - BranchSide:      'var-expand.c:876,1'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:867,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:867,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:868,20'
              BranchSideFuncs:
                - array_count_i.10581
                - i_panic
                - array_idx_i.10576
                - strcasecmp
                - array_delete_i.10575
        - Branch String:   'var-expand.c:868,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:870,5'
              BranchSideFuncs:
                - array_idx_i.10576
                - strcasecmp
                - array_count_i.10581
                - i_panic
                - array_delete_i.10575
            - BranchSide:      'var-expand.c:875,2'
              BranchSideFuncs:
                - array_count_i.10581
                - array_idx_i.10576
                - strcasecmp
                - array_delete_i.10575
                - i_panic
        - Branch String:   'var-expand.c:871,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:872,5'
              BranchSideFuncs:
                - array_delete_i.10575
                - array_count_i.10581
                - i_panic
                - array_idx_i.10576
                - strcasecmp
            - BranchSide:      'var-expand.c:874,3'
              BranchSideFuncs:
                - array_count_i.10581
                - i_panic
                - array_idx_i.10576
                - strcasecmp
                - array_delete_i.10575
      Callsites:
        - Src:             'var-expand.c:867,3'
          Dst:             i_panic
        - Src:             'var-expand.c:868,31'
          Dst:             array_count_i
        - Src:             'var-expand.c:870,5'
          Dst:             array_idx_i
        - Src:             'var-expand.c:871,8'
          Dst:             strcasecmp
        - Src:             'var-expand.c:872,5'
          Dst:             array_delete_i
    - functionName:    array_insert_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 233
      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:231,2'
          Dst:             buffer_insert
    - functionName:    var_expand_register_func_array
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 859
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - funcs
      BBCount:         11
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 3
      functionsReached:
        - array_insert_i
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:853,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:856,3'
              BranchSideFuncs:
                - array_insert_i.10584
                - i_panic
            - BranchSide:      'var-expand.c:859,1'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:856,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:856,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:857,3'
              BranchSideFuncs:
                - array_insert_i.10584
                - i_panic
      Callsites:
        - Src:             'var-expand.c:856,3'
          Dst:             i_panic
        - Src:             'var-expand.c:857,3'
          Dst:             array_insert_i
    - functionName:    var_expand_process
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - field
        - result_r
        - error_r
      BBCount:         17
      ICount:          99
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - dec2str
        - getegid
        - geteuid
        - i_panic
        - strcmp
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:387,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:387,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:388,13'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - getegid
                - dec2str
                - geteuid
                - dec2str
        - Branch String:   'var-expand.c:388,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:389,15'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:390,18'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - getegid
                - dec2str
                - geteuid
                - dec2str
        - Branch String:   'var-expand.c:390,11'
          Branch Sides:
            - BranchSide:      'var-expand.c:391,23'
              BranchSideFuncs:
                - geteuid
                - dec2str
            - BranchSide:      'var-expand.c:392,18'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - getegid
                - dec2str
        - Branch String:   'var-expand.c:392,11'
          Branch Sides:
            - BranchSide:      'var-expand.c:393,23'
              BranchSideFuncs:
                - getegid
                - dec2str
            - BranchSide:      'var-expand.c:396,9'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'var-expand.c:387,2'
          Dst:             strcmp
        - Src:             'var-expand.c:387,2'
          Dst:             i_panic
        - Src:             'var-expand.c:388,6'
          Dst:             strcmp
        - Src:             'var-expand.c:390,11'
          Dst:             strcmp
        - Src:             'var-expand.c:391,23'
          Dst:             geteuid
        - Src:             'var-expand.c:391,15'
          Dst:             dec2str
        - Src:             'var-expand.c:392,11'
          Dst:             strcmp
        - Src:             'var-expand.c:393,23'
          Dst:             getegid
        - Src:             'var-expand.c:393,15'
          Dst:             dec2str
        - Src:             'var-expand.c:395,14'
          Dst:             t_strdup_printf
    - functionName:    var_expand_system
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 406
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - field
        - result_r
        - error_r
      BBCount:         17
      ICount:          111
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - cpu_count_get
        - dec2str
        - getenv
        - i_panic
        - strcmp
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:407,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:407,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:408,13'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - getenv
                - cpu_count_get
                - dec2str
        - Branch String:   'var-expand.c:408,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:410,24'
              BranchSideFuncs:
                - getenv
                - cpu_count_get
                - dec2str
            - BranchSide:      'var-expand.c:419,20'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
        - Branch String:   'var-expand.c:411,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:412,16'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:415,29'
              BranchSideFuncs:
                - cpu_count_get
                - dec2str
        - Branch String:   'var-expand.c:415,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:416,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:417,23'
              BranchSideFuncs:
                - dec2str
      Callsites:
        - Src:             'var-expand.c:407,2'
          Dst:             strcmp
        - Src:             'var-expand.c:407,2'
          Dst:             i_panic
        - Src:             'var-expand.c:408,6'
          Dst:             strcmp
        - Src:             'var-expand.c:410,24'
          Dst:             getenv
        - Src:             'var-expand.c:415,7'
          Dst:             cpu_count_get
        - Src:             'var-expand.c:417,15'
          Dst:             dec2str
        - Src:             'var-expand.c:419,13'
          Dst:             strcmp
        - Src:             'var-expand.c:423,13'
          Dst:             t_strdup_printf
    - functionName:    var_expand_hash
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - field
        - result_r
        - error_r
      BBCount:         87
      ICount:          650
      EdgeCount:       111
      CyclomaticComplexity: 26
      functionsReached:
        - base64_encode
        - base64url_encode
        - binary_to_hex
        - buffer_get_modifiable_data
        - buffer_set_used_size
        - buffer_truncate_rshift_bits
        - hash_method_lookup
        - i_panic
        - i_unreached
        - pkcs5_pbkdf
        - str_append
        - str_append_str
        - str_c
        - str_to_uint
        - str_truncate
        - strchr
        - strcmp
        - strlen
        - t_malloc_no0
        - t_str_new
        - t_strcut
        - t_strdup_printf
        - t_strsplit
        - var_expand_long
        - var_expand_with_funcs
      functionUses:    2
      BranchProfiles:
        - Branch String:   'var-expand.c:230,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:231,19'
              BranchSideFuncs:
                - t_strcut
                - t_strsplit
                - strcmp
                - hash_method_lookup
                - t_str_new
                - t_str_new
                - t_str_new
                - strlen
                - var_expand_long
                - str_append.10563
                - strcmp
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
                - str_append.10563
                - i_panic
                - hash_method_lookup
            - BranchSide:      'var-expand.c:236,13'
              BranchSideFuncs:
                - strcmp
                - hash_method_lookup
                - t_str_new
                - t_str_new
                - t_str_new
                - strlen
                - var_expand_long
                - str_append.10563
                - strcmp
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
                - str_append.10563
                - i_panic
                - hash_method_lookup
        - Branch String:   'var-expand.c:236,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:237,12'
              BranchSideFuncs:
                - hash_method_lookup
                - t_str_new
                - t_str_new
                - t_str_new
                - strlen
                - var_expand_long
                - str_append.10563
                - strcmp
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
                - str_append.10563
                - i_panic
            - BranchSide:      'var-expand.c:239,31'
              BranchSideFuncs:
                - hash_method_lookup
                - t_str_new
                - t_str_new
                - t_str_new
                - strlen
                - var_expand_long
                - str_append.10563
                - strcmp
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
                - str_append.10563
                - i_panic
        - Branch String:   'var-expand.c:244,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:244,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:246,26'
              BranchSideFuncs:
                - t_str_new
                - t_str_new
                - t_str_new
                - strlen
                - var_expand_long
                - str_append.10563
                - strcmp
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
                - str_append.10563
        - Branch String:   'var-expand.c:250,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:252,10'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:255,13'
              BranchSideFuncs:
                - str_append.10563
                - strcmp
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
                - str_append.10563
        - Branch String:   'var-expand.c:261,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:262,10'
              BranchSideFuncs:
                - str_append.10563
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:266,2'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:266,21'
          Branch Sides:
            - BranchSide:      'var-expand.c:266,25'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:266,2'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:266,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:267,29'
              BranchSideFuncs:
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:326,15'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
        - Branch String:   'var-expand.c:269,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:270,8'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:273,9'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:275,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:276,20'
              BranchSideFuncs:
                - str_to_uint
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:289,21'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
        - Branch String:   'var-expand.c:276,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:280,6'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand.c:283,8'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:283,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:284,16'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand.c:289,3'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:289,14'
          Branch Sides:
            - BranchSide:      'var-expand.c:290,20'
              BranchSideFuncs:
                - str_to_uint
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:298,21'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
        - Branch String:   'var-expand.c:290,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:294,6'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand.c:297,16'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:297,16'
          Branch Sides:
            - BranchSide:      'var-expand.c:297,14'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:297,14'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:298,14'
          Branch Sides:
            - BranchSide:      'var-expand.c:299,17'
              BranchSideFuncs:
                - str_truncate.10557
                - var_expand_with_funcs
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
            - BranchSide:      'var-expand.c:306,21'
              BranchSideFuncs:
                - strcmp
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
        - Branch String:   'var-expand.c:300,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:303,5'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:305,4'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
        - Branch String:   'var-expand.c:307,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:308,12'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:309,22'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:309,15'
          Branch Sides:
            - BranchSide:      'var-expand.c:310,12'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:311,22'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:311,15'
          Branch Sides:
            - BranchSide:      'var-expand.c:312,12'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:313,22'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:313,15'
          Branch Sides:
            - BranchSide:      'var-expand.c:314,12'
              BranchSideFuncs:
                - str_truncate.10557
                - strcmp
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
                - pkcs5_pbkdf
                - t_strcut
                - strchr
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - str_truncate.10557
                - var_expand_with_funcs
                - str_to_uint
                - t_strdup_printf
                - str_to_uint
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:319,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'var-expand.c:328,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:329,33'
              BranchSideFuncs:
                - pkcs5_pbkdf
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
            - BranchSide:      'var-expand.c:337,32'
              BranchSideFuncs:
                - t_malloc_no0
                - str_append_str.10556
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
        - Branch String:   'var-expand.c:329,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:333,5'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:336,2'
              BranchSideFuncs:
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
        - Branch String:   'var-expand.c:341,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:0,0'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_set_used_size
            - BranchSide:      'var-expand.c:342,4'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_set_used_size
        - Branch String:   'var-expand.c:343,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:344,5'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_set_used_size
            - BranchSide:      'var-expand.c:345,4'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_set_used_size
        - Branch String:   'var-expand.c:349,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:350,26'
              BranchSideFuncs:
                - buffer_set_used_size
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
            - BranchSide:      'var-expand.c:351,3'
              BranchSideFuncs:
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
                - buffer_truncate_rshift_bits
                - buffer_get_modifiable_data
                - buffer_set_used_size
        - Branch String:   'var-expand.c:354,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:355,31'
              BranchSideFuncs:
                - buffer_truncate_rshift_bits
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
            - BranchSide:      'var-expand.c:357,9'
              BranchSideFuncs:
                - t_str_new
                - base64url_encode
                - str_c
                - t_str_new
                - base64_encode.10555
                - str_c
                - binary_to_hex
                - binary_to_hex
                - i_unreached
        - Branch String:   'var-expand.c:357,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:359,30'
              BranchSideFuncs:
                - binary_to_hex
            - BranchSide:      'var-expand.c:362,30'
              BranchSideFuncs:
                - binary_to_hex
            - BranchSide:      'var-expand.c:365,14'
              BranchSideFuncs:
                - t_str_new
                - base64_encode.10555
                - str_c
            - BranchSide:      'var-expand.c:371,14'
              BranchSideFuncs:
                - t_str_new
                - base64url_encode
                - str_c
            - BranchSide:      'var-expand.c:379,2'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'var-expand.c:224,18'
          Dst:             strchr
        - Src:             'var-expand.c:231,10'
          Dst:             t_strcut
        - Src:             'var-expand.c:232,10'
          Dst:             t_strsplit
        - Src:             'var-expand.c:236,6'
          Dst:             strcmp
        - Src:             'var-expand.c:237,12'
          Dst:             hash_method_lookup
        - Src:             'var-expand.c:239,12'
          Dst:             hash_method_lookup
        - Src:             'var-expand.c:244,2'
          Dst:             i_panic
        - Src:             'var-expand.c:246,26'
          Dst:             t_str_new
        - Src:             'var-expand.c:247,19'
          Dst:             t_str_new
        - Src:             'var-expand.c:248,18'
          Dst:             t_str_new
        - Src:             'var-expand.c:250,41'
          Dst:             strlen
        - Src:             'var-expand.c:250,13'
          Dst:             var_expand_long
        - Src:             'var-expand.c:255,2'
          Dst:             str_append
        - Src:             'var-expand.c:261,6'
          Dst:             strcmp
        - Src:             'var-expand.c:263,3'
          Dst:             str_append
        - Src:             'var-expand.c:267,19'
          Dst:             t_strcut
        - Src:             'var-expand.c:268,23'
          Dst:             strchr
        - Src:             'var-expand.c:275,7'
          Dst:             strcmp
        - Src:             'var-expand.c:276,8'
          Dst:             str_to_uint
        - Src:             'var-expand.c:277,16'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:284,16'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:289,14'
          Dst:             strcmp
        - Src:             'var-expand.c:290,8'
          Dst:             str_to_uint
        - Src:             'var-expand.c:291,16'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:298,14'
          Dst:             strcmp
        - Src:             'var-expand.c:299,4'
          Dst:             str_truncate
        - Src:             'var-expand.c:300,8'
          Dst:             var_expand_with_funcs
        - Src:             'var-expand.c:306,14'
          Dst:             strcmp
        - Src:             'var-expand.c:307,8'
          Dst:             strcmp
        - Src:             'var-expand.c:309,15'
          Dst:             strcmp
        - Src:             'var-expand.c:311,15'
          Dst:             strcmp
        - Src:             'var-expand.c:313,15'
          Dst:             strcmp
        - Src:             'var-expand.c:316,16'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:326,2'
          Dst:             str_truncate
        - Src:             'var-expand.c:328,6'
          Dst:             strcmp
        - Src:             'var-expand.c:329,7'
          Dst:             pkcs5_pbkdf
        - Src:             'var-expand.c:337,19'
          Dst:             t_malloc_no0
        - Src:             'var-expand.c:339,3'
          Dst:             str_append_str
        - Src:             'var-expand.c:347,5'
          Dst:             buffer_get_modifiable_data
        - Src:             'var-expand.c:350,5'
          Dst:             buffer_set_used_size
        - Src:             'var-expand.c:355,3'
          Dst:             buffer_truncate_rshift_bits
        - Src:             'var-expand.c:359,16'
          Dst:             binary_to_hex
        - Src:             'var-expand.c:362,16'
          Dst:             binary_to_hex
        - Src:             'var-expand.c:365,21'
          Dst:             t_str_new
        - Src:             'var-expand.c:366,4'
          Dst:             base64_encode
        - Src:             'var-expand.c:367,16'
          Dst:             str_c
        - Src:             'var-expand.c:371,21'
          Dst:             t_str_new
        - Src:             'var-expand.c:372,4'
          Dst:             base64url_encode
        - Src:             'var-expand.c:374,16'
          Dst:             str_c
        - Src:             'var-expand.c:379,2'
          Dst:             i_unreached
    - functionName:    var_expand_long
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key_start
        - key_len
        - var_r
        - error_r
      BBCount:         32
      ICount:          202
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - strchr
        - strncmp
        - t_strdup_until
        - t_strndup
        - var_expand_try_extension
      functionUses:    2
      BranchProfiles:
        - Branch String:   'var-expand.c:492,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:493,12'
              BranchSideFuncs:
                - t_strndup
                - strchr
                - var_expand_try_extension
                - t_strdup_until
                - strncmp
            - BranchSide:      'var-expand.c:502,18'
              BranchSideFuncs:
                - t_strndup
                - strchr
                - var_expand_try_extension
                - t_strdup_until
        - Branch String:   'var-expand.c:493,25'
          Branch Sides:
            - BranchSide:      'var-expand.c:493,24'
              BranchSideFuncs:
                - t_strndup
                - strchr
                - var_expand_try_extension
                - t_strdup_until
                - strncmp
            - BranchSide:      'var-expand.c:493,24'
              BranchSideFuncs:
                - t_strndup
                - strchr
                - var_expand_try_extension
                - t_strdup_until
                - strncmp
        - Branch String:   'var-expand.c:493,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:494,8'
              BranchSideFuncs:
                - t_strndup
                - strchr
                - var_expand_try_extension
                - t_strdup_until
                - strncmp
            - BranchSide:      'var-expand.c:501,2'
              BranchSideFuncs:
                - t_strndup
                - strchr
                - var_expand_try_extension
                - t_strdup_until
        - Branch String:   'var-expand.c:494,28'
          Branch Sides:
            - BranchSide:      'var-expand.c:495,16'
              BranchSideFuncs:
                - strncmp
                - t_strndup
                - strchr
                - var_expand_try_extension
                - t_strdup_until
            - BranchSide:      'var-expand.c:500,3'
              BranchSideFuncs:
                - t_strndup
                - strchr
                - var_expand_try_extension
                - t_strdup_until
                - strncmp
        - Branch String:   'var-expand.c:495,54'
          Branch Sides:
            - BranchSide:      'var-expand.c:496,8'
              BranchSideFuncs:
                - t_strndup
                - strchr
                - var_expand_try_extension
                - t_strdup_until
                - strncmp
            - BranchSide:      'var-expand.c:500,3'
              BranchSideFuncs:
                - t_strndup
                - strchr
                - var_expand_try_extension
                - t_strdup_until
                - strncmp
        - Branch String:   'var-expand.c:494,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:497,14'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:500,3'
              BranchSideFuncs:
                - t_strndup
                - strchr
                - var_expand_try_extension
                - t_strdup_until
                - strncmp
        - Branch String:   'var-expand.c:497,14'
          Branch Sides:
            - BranchSide:      'var-expand.c:497,33'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:497,6'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:506,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:507,24'
              BranchSideFuncs:
                - t_strdup_until
                - var_expand_try_extension
            - BranchSide:      'var-expand.c:509,8'
              BranchSideFuncs:
                - var_expand_try_extension
        - Branch String:   'var-expand.c:513,15'
          Branch Sides:
            - BranchSide:      'var-expand.c:513,18'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:516,11'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:513,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:514,9'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:516,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand.c:495,8'
          Dst:             strncmp
        - Src:             'var-expand.c:502,8'
          Dst:             t_strndup
        - Src:             'var-expand.c:504,21'
          Dst:             strchr
        - Src:             'var-expand.c:507,9'
          Dst:             t_strdup_until
        - Src:             'var-expand.c:511,8'
          Dst:             var_expand_try_extension
    - functionName:    var_expand_with_funcs
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 689
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - str
        - table
        - func_table
        - context
        - error_r
      BBCount:         119
      ICount:          760
      EdgeCount:       156
      CyclomaticComplexity: 39
      functionsReached:
        - i_panic
        - str_append
        - str_append_c
        - str_append_max
        - strchr
        - strlen
        - var_expand_long
        - var_expand_short
      functionUses:    4
      BranchProfiles:
        - Branch String:   'var-expand.c:542,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:542,2'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
            - BranchSide:      'var-expand.c:543,8'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
        - Branch String:   'var-expand.c:543,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:544,4'
              BranchSideFuncs:
                - str_append_c.10564
                - var_expand_short
                - str_append_max
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:546,8'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:556,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:557,10'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:560,9'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:560,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:561,9'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:564,4'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:564,23'
          Branch Sides:
            - BranchSide:      'var-expand.c:564,27'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:564,4'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:564,4'
          Branch Sides:
            - BranchSide:      'var-expand.c:565,21'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:569,9'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:569,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:570,18'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:595,19'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:579,9'
          Branch Sides:
            - BranchSide:      'var-expand.c:580,10'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:583,10'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:583,9'
          Branch Sides:
            - BranchSide:      'var-expand.c:584,11'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:588,5'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:588,24'
          Branch Sides:
            - BranchSide:      'var-expand.c:588,28'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:588,5'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:588,5'
          Branch Sides:
            - BranchSide:      'var-expand.c:589,22'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:592,17'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:596,4'
          Branch Sides:
            - BranchSide:      'var-expand.c:597,14'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:612,9'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:598,5'
          Branch Sides:
            - BranchSide:      'var-expand.c:599,10'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:607,18'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:599,10'
          Branch Sides:
            - BranchSide:      'var-expand.c:602,8'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:606,5'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:607,9'
          Branch Sides:
            - BranchSide:      'var-expand.c:608,6'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
            - BranchSide:      'var-expand.c:609,19'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:612,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:613,5'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:615,8'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
        - Branch String:   'var-expand.c:616,20'
          Branch Sides:
            - BranchSide:      'var-expand.c:616,30'
              BranchSideFuncs:
                - strchr
                - var_expand_short
                - str_append_max
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - var_expand_long
            - BranchSide:      'var-expand.c:643,35'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
        - Branch String:   'var-expand.c:616,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:618,18'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
            - BranchSide:      'var-expand.c:643,35'
              BranchSideFuncs:
                - var_expand_short
                - str_append_max
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
        - Branch String:   'var-expand.c:621,26'
          Branch Sides:
            - BranchSide:      'var-expand.c:621,29'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
            - BranchSide:      'var-expand.c:621,5'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
        - Branch String:   'var-expand.c:621,5'
          Branch Sides:
            - BranchSide:      'var-expand.c:622,11'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
            - BranchSide:      'var-expand.c:633,9'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
        - Branch String:   'var-expand.c:622,18'
          Branch Sides:
            - BranchSide:      'var-expand.c:622,22'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
            - BranchSide:      'var-expand.c:626,10'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
        - Branch String:   'var-expand.c:622,10'
          Branch Sides:
            - BranchSide:      'var-expand.c:623,14'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
            - BranchSide:      'var-expand.c:626,10'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
        - Branch String:   'var-expand.c:626,10'
          Branch Sides:
            - BranchSide:      'var-expand.c:627,14'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
            - BranchSide:      'var-expand.c:630,11'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
        - Branch String:   'var-expand.c:630,10'
          Branch Sides:
            - BranchSide:      'var-expand.c:630,26'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
            - BranchSide:      'var-expand.c:631,11'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
        - Branch String:   'var-expand.c:631,10'
          Branch Sides:
            - BranchSide:      'var-expand.c:621,5'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
            - BranchSide:      'var-expand.c:631,26'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
        - Branch String:   'var-expand.c:633,9'
          Branch Sides:
            - BranchSide:      'var-expand.c:635,9'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
            - BranchSide:      'var-expand.c:638,11'
              BranchSideFuncs:
                - var_expand_long
                - str_append_max
                - var_expand_short
                - strchr
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
        - Branch String:   'var-expand.c:646,4'
          Branch Sides:
            - BranchSide:      'var-expand.c:646,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:648,8'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
        - Branch String:   'var-expand.c:648,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:649,17'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
            - BranchSide:      'var-expand.c:651,8'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
        - Branch String:   'var-expand.c:651,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:652,16'
              BranchSideFuncs:
                - str_append.10563
                - var_expand_short
                - str_append_max
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
            - BranchSide:      'var-expand.c:654,12'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
        - Branch String:   'var-expand.c:654,5'
          Branch Sides:
            - BranchSide:      'var-expand.c:655,21'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
            - BranchSide:      'var-expand.c:657,13'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
        - Branch String:   'var-expand.c:657,9'
          Branch Sides:
            - BranchSide:      'var-expand.c:660,26'
              BranchSideFuncs:
                - strlen
                - str_append_max
                - var_expand_short
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
            - BranchSide:      'var-expand.c:666,6'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
        - Branch String:   'var-expand.c:663,10'
          Branch Sides:
            - BranchSide:      'var-expand.c:664,14'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
            - BranchSide:      'var-expand.c:665,5'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
        - Branch String:   'var-expand.c:666,26'
          Branch Sides:
            - BranchSide:      'var-expand.c:666,33'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
            - BranchSide:      'var-expand.c:666,6'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
        - Branch String:   'var-expand.c:666,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:0,0'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
            - BranchSide:      'var-expand.c:667,11'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
        - Branch String:   'var-expand.c:671,9'
          Branch Sides:
            - BranchSide:      'var-expand.c:672,17'
              BranchSideFuncs:
                - str_append.10563
                - var_expand_short
                - str_append_max
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
            - BranchSide:      'var-expand.c:673,19'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
        - Branch String:   'var-expand.c:673,14'
          Branch Sides:
            - BranchSide:      'var-expand.c:674,14'
              BranchSideFuncs:
                - strlen
                - str_append.10563
                - var_expand_short
                - str_append_max
                - strlen
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - str_append_c.10564
            - BranchSide:      'var-expand.c:679,27'
              BranchSideFuncs:
                - strlen
                - str_append.10563
                - var_expand_short
                - str_append_max
                - strlen
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
                - str_append_c.10564
        - Branch String:   'var-expand.c:674,10'
          Branch Sides:
            - BranchSide:      'var-expand.c:675,26'
              BranchSideFuncs:
                - strlen
                - str_append_max
                - var_expand_short
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
            - BranchSide:      'var-expand.c:676,21'
              BranchSideFuncs:
                - str_append_max
                - var_expand_short
                - strlen
                - strlen
                - str_append.10563
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
        - Branch String:   'var-expand.c:680,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:681,7'
              BranchSideFuncs:
                - str_append_c.10564
                - str_append.10563
                - var_expand_short
                - str_append_max
                - strlen
                - strlen
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
            - BranchSide:      'var-expand.c:684,17'
              BranchSideFuncs:
                - str_append.10563
                - var_expand_short
                - str_append_max
                - strlen
                - strlen
                - str_append_c.10564
                - str_append.10563
                - strlen
                - str_append.10563
                - i_panic
                - strchr
                - var_expand_long
                - str_append_c.10564
      Callsites:
        - Src:             'var-expand.c:544,4'
          Dst:             str_append_c
        - Src:             'var-expand.c:616,23'
          Dst:             strchr
        - Src:             'var-expand.c:639,11'
          Dst:             var_expand_long
        - Src:             'var-expand.c:643,11'
          Dst:             var_expand_short
        - Src:             'var-expand.c:646,4'
          Dst:             i_panic
        - Src:             'var-expand.c:652,5'
          Dst:             str_append
        - Src:             'var-expand.c:660,19'
          Dst:             strlen
        - Src:             'var-expand.c:672,6'
          Dst:             str_append
        - Src:             'var-expand.c:675,19'
          Dst:             strlen
        - Src:             'var-expand.c:676,6'
          Dst:             str_append_max
        - Src:             'var-expand.c:679,20'
          Dst:             strlen
        - Src:             'var-expand.c:681,7'
          Dst:             str_append_c
        - Src:             'var-expand.c:684,6'
          Dst:             str_append
    - functionName:    var_expand_short
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - var_r
        - error_r
      BBCount:         39
      ICount:          249
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:179,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:180,12'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:188,6'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:180,25'
          Branch Sides:
            - BranchSide:      'var-expand.c:180,24'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:180,24'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:180,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:181,8'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:186,2'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:181,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:182,14'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:185,3'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:182,14'
          Branch Sides:
            - BranchSide:      'var-expand.c:182,33'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:182,6'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:188,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:189,21'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:202,6'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:189,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:190,8'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:199,2'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:190,41'
          Branch Sides:
            - BranchSide:      'var-expand.c:191,8'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:198,3'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:190,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:193,15'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:198,3'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:195,14'
          Branch Sides:
            - BranchSide:      'var-expand.c:195,30'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:195,6'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:202,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:203,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:206,7'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand.c:206,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:207,57'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand.c:208,54'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'var-expand.c:207,14'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:208,11'
          Dst:             t_strdup_printf
    - functionName:    var_expand_try_extension
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - data
        - var_r
        - error_r
      BBCount:         23
      ICount:          176
      EdgeCount:       28
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - strchr
        - strlen
        - strncasecmp
        - var_expand_func
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:465,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:465,25'
              BranchSideFuncs:
                - strlen
                - var_expand_func
                - strncasecmp
                - i_panic
            - BranchSide:      'var-expand.c:469,2'
              BranchSideFuncs:
                - var_expand_func
                - strncasecmp
                - i_panic
        - Branch String:   'var-expand.c:469,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:471,16'
              BranchSideFuncs:
                - strncasecmp
                - var_expand_func
                - i_panic
            - BranchSide:      'var-expand.c:478,25'
              BranchSideFuncs:
                - var_expand_func
        - Branch String:   'var-expand.c:472,42'
          Branch Sides:
            - BranchSide:      'var-expand.c:472,45'
              BranchSideFuncs:
                - var_expand_func
                - strncasecmp
                - i_panic
            - BranchSide:      'var-expand.c:477,2'
              BranchSideFuncs:
                - var_expand_func
                - strncasecmp
                - i_panic
        - Branch String:   'var-expand.c:472,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:473,10'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:477,2'
              BranchSideFuncs:
                - var_expand_func
                - strncasecmp
                - i_panic
        - Branch String:   'var-expand.c:474,4'
          Branch Sides:
            - BranchSide:      'var-expand.c:474,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:474,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'var-expand.c:474,4'
          Branch Sides:
            - BranchSide:      'var-expand.c:474,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:475,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand.c:463,20'
          Dst:             strchr
        - Src:             'var-expand.c:465,31'
          Dst:             strlen
        - Src:             'var-expand.c:472,7'
          Dst:             strncasecmp
        - Src:             'var-expand.c:474,4'
          Dst:             i_panic
        - Src:             'var-expand.c:478,9'
          Dst:             var_expand_func
    - functionName:    var_expand_extensions_init
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 815
      functionLinenumberEnd: 848
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          80
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_space_i
        - array_create_i
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:816,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:820,7'
              BranchSideFuncs:
                - array_create_i.10573
                - array_append_space_i.10574
                - array_append_space_i.10574
                - array_append_space_i.10574
                - array_append_space_i.10574
                - array_append_space_i.10574
            - BranchSide:      'var-expand.c:820,7'
              BranchSideFuncs:
                - array_create_i.10573
                - array_append_space_i.10574
                - array_append_space_i.10574
                - array_append_space_i.10574
                - array_append_space_i.10574
                - array_append_space_i.10574
        - Branch String:   'var-expand.c:819,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:823,4'
              BranchSideFuncs:
                - array_append_space_i.10574
                - array_append_space_i.10574
                - array_append_space_i.10574
                - array_append_space_i.10574
                - array_append_space_i.10574
            - BranchSide:      'var-expand.c:829,42'
              BranchSideFuncs:
                - array_append_space_i.10574
                - array_append_space_i.10574
                - array_append_space_i.10574
                - array_append_space_i.10574
      Callsites:
        - Src:             'var-expand.c:816,2'
          Dst:             array_create_i
        - Src:             'var-expand.c:823,4'
          Dst:             array_append_space_i
        - Src:             'var-expand.c:830,3'
          Dst:             array_append_space_i
        - Src:             'var-expand.c:835,9'
          Dst:             array_append_space_i
        - Src:             'var-expand.c:840,9'
          Dst:             array_append_space_i
        - Src:             'var-expand.c:845,9'
          Dst:             array_append_space_i
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 158
      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:157,2'
          Dst:             buffer_free
    - functionName:    var_expand_extensions_deinit
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 810
      functionLinenumberEnd: 812
      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:   'var-expand.c:811,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:811,2'
              BranchSideFuncs:
                - array_free_i.10626
            - BranchSide:      'var-expand.c:811,2'
              BranchSideFuncs:
                - array_free_i.10626
      Callsites:
        - Src:             'var-expand.c:811,2'
          Dst:             array_free_i
    - functionName:    var_has_long_key
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 771
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - long_key
      BBCount:         15
      ICount:          97
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - strchr
        - strncmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:775,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:775,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:777,15'
              BranchSideFuncs:
                - strchr
                - strncmp
        - Branch String:   'var-expand.c:778,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:779,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:781,14'
              BranchSideFuncs:
                - strncmp
        - Branch String:   'var-expand.c:781,47'
          Branch Sides:
            - BranchSide:      'var-expand.c:782,6'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:785,9'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:781,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:783,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:785,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand.c:774,10'
          Dst:             strchr
        - Src:             'var-expand.c:775,2'
          Dst:             i_panic
        - Src:             'var-expand.c:777,8'
          Dst:             strchr
        - Src:             'var-expand.c:781,6'
          Dst:             strncmp
    - functionName:    var_has_key
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 807
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - key
        - long_key
      BBCount:         25
      ICount:          125
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - var_get_key
        - var_has_long_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:793,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:794,8'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
            - BranchSide:      'var-expand.c:806,2'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:794,19'
          Branch Sides:
            - BranchSide:      'var-expand.c:794,22'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
            - BranchSide:      'var-expand.c:805,2'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
        - Branch String:   'var-expand.c:794,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:795,7'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
            - BranchSide:      'var-expand.c:805,2'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
        - Branch String:   'var-expand.c:797,17'
          Branch Sides:
            - BranchSide:      'var-expand.c:797,20'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
            - BranchSide:      'var-expand.c:800,8'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
        - Branch String:   'var-expand.c:797,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:798,5'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:800,8'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
        - Branch String:   'var-expand.c:800,17'
          Branch Sides:
            - BranchSide:      'var-expand.c:800,20'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
            - BranchSide:      'var-expand.c:804,3'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
        - Branch String:   'var-expand.c:800,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:801,32'
              BranchSideFuncs:
                - var_has_long_key
                - var_get_key
            - BranchSide:      'var-expand.c:804,3'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
        - Branch String:   'var-expand.c:801,9'
          Branch Sides:
            - BranchSide:      'var-expand.c:802,6'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:803,4'
              BranchSideFuncs:
                - var_get_key
                - var_has_long_key
      Callsites:
        - Src:             'var-expand.c:796,8'
          Dst:             var_get_key
        - Src:             'var-expand.c:801,9'
          Dst:             var_has_long_key
    - functionName:    var_get_key
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - var_get_key_range_full
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:759,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:760,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:761,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand.c:759,6'
          Dst:             var_get_key_range_full
    - functionName:    var_get_key_range_full
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 753
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - idx_r
        - size_r
      BBCount:         56
      ICount:          338
      EdgeCount:       73
      CyclomaticComplexity: 19
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'var-expand.c:706,24'
          Branch Sides:
            - BranchSide:      'var-expand.c:706,27'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:706,45'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:706,42'
          Branch Sides:
            - BranchSide:      'var-expand.c:706,2'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:706,45'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:706,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:707,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:709,6'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:709,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:710,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:715,2'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:711,25'
          Branch Sides:
            - BranchSide:      'var-expand.c:711,28'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:711,46'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:711,43'
          Branch Sides:
            - BranchSide:      'var-expand.c:711,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:711,46'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:711,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:712,5'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:713,2'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:716,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:717,8'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:722,2'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:717,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:718,6'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:721,3'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:722,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:716,10'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:724,6'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:724,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:726,12'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:730,16'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:734,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:735,9'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:750,13'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:735,16'
          Branch Sides:
            - BranchSide:      'var-expand.c:735,19'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:739,8'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:735,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:736,12'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:739,8'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:739,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:740,12'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:743,8'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:743,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:744,10'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:745,8'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:745,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:746,9'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:749,3'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:746,9'
          Branch Sides:
            - BranchSide:      'var-expand.c:747,6'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:748,4'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    var_get_key_range
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 766
      functionLinenumberEnd: 768
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - idx_r
        - size_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - var_get_key_range_full
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand.c:767,8'
          Dst:             var_get_key_range_full
    - functionName:    var_expand
      functionSourceFile: '/src/dovecot/src/lib/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 694
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - str
        - table
        - error_r
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - var_expand_with_funcs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand.c:695,9'
          Dst:             var_expand_with_funcs
    - functionName:    var_expand_if_str_to_comp
      functionSourceFile: '/src/dovecot/src/lib/var-expand-if.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 63
      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:   'var-expand-if.c:57,2'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:58,3'
              BranchSideFuncs:
                - strcmp
                - i_panic
            - BranchSide:      'var-expand-if.c:62,2'
              BranchSideFuncs: []
        - Branch String:   'var-expand-if.c:58,3'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:58,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand-if.c:59,14'
              BranchSideFuncs:
                - strcmp
                - i_panic
        - Branch String:   'var-expand-if.c:59,7'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:60,11'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-if.c:61,2'
              BranchSideFuncs:
                - strcmp
                - i_panic
      Callsites:
        - Src:             'var-expand-if.c:58,3'
          Dst:             i_panic
        - Src:             'var-expand-if.c:59,7'
          Dst:             strcmp
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      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_if_comp
      functionSourceFile: '/src/dovecot/src/lib/var-expand-if.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - lhs
        - _op
        - rhs
        - result_r
        - error_r
      BBCount:         40
      ICount:          371
      EdgeCount:       42
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - regcomp
        - regerror
        - regexec
        - regfree
        - str_to_intmax
        - strcmp
        - t_malloc_no0
        - t_strdup_printf
        - var_expand_if_str_to_comp
        - wildcard_match
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-if.c:72,6'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:73,65'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand-if.c:77,6'
              BranchSideFuncs:
                - 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
                - str_to_intmax
                - str_to_intmax
                - i_panic
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'var-expand-if.c:77,6'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:80,21'
              BranchSideFuncs:
                - str_to_intmax
                - str_to_intmax
                - i_panic
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'var-expand-if.c:112,9'
              BranchSideFuncs:
                - 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
        - Branch String:   'var-expand-if.c:80,7'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:81,63'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand-if.c:84,21'
              BranchSideFuncs:
                - str_to_intmax
                - i_panic
                - t_strdup_printf
        - Branch String:   'var-expand-if.c:84,7'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:85,63'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand-if.c:88,10'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'var-expand-if.c:88,3'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:90,16'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-if.c:93,16'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-if.c:96,16'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-if.c:99,16'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-if.c:102,16'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-if.c:105,16'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-if.c:108,45'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'var-expand-if.c:112,2'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:114,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'var-expand-if.c:117,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'var-expand-if.c:120,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'var-expand-if.c:123,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'var-expand-if.c:126,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'var-expand-if.c:129,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'var-expand-if.c:132,30'
              BranchSideFuncs:
                - wildcard_match
            - BranchSide:      'var-expand-if.c:135,31'
              BranchSideFuncs:
                - wildcard_match
            - BranchSide:      'var-expand-if.c:138,7'
              BranchSideFuncs:
                - regcomp
                - regexec
                - regfree
                - i_panic
                - regerror
                - t_malloc_no0
                - regerror
                - t_strdup_printf
            - BranchSide:      'var-expand-if.c:144,27'
              BranchSideFuncs:
                - regcomp
                - regexec
                - regfree
                - i_panic
                - regerror
                - t_malloc_no0
                - regerror
                - t_strdup_printf
            - BranchSide:      'var-expand-if.c:169,44'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'var-expand-if.c:144,7'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:145,11'
              BranchSideFuncs:
                - regerror
                - t_malloc_no0
                - regerror
                - t_strdup_printf
            - BranchSide:      'var-expand-if.c:154,27'
              BranchSideFuncs:
                - regexec
                - regfree
                - i_panic
        - Branch String:   'var-expand-if.c:154,7'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:155,4'
              BranchSideFuncs:
                - regfree
                - i_panic
            - BranchSide:      'var-expand-if.c:158,8'
              BranchSideFuncs:
                - regfree
        - Branch String:   'var-expand-if.c:155,4'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:155,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand-if.c:156,8'
              BranchSideFuncs:
                - regfree
      Callsites:
        - Src:             'var-expand-if.c:69,29'
          Dst:             var_expand_if_str_to_comp
        - Src:             'var-expand-if.c:73,14'
          Dst:             t_strdup_printf
        - Src:             'var-expand-if.c:80,7'
          Dst:             str_to_intmax
        - Src:             'var-expand-if.c:81,15'
          Dst:             t_strdup_printf
        - Src:             'var-expand-if.c:84,7'
          Dst:             str_to_intmax
        - Src:             'var-expand-if.c:85,15'
          Dst:             t_strdup_printf
        - Src:             'var-expand-if.c:108,4'
          Dst:             i_panic
        - Src:             'var-expand-if.c:114,15'
          Dst:             strcmp
        - Src:             'var-expand-if.c:117,15'
          Dst:             strcmp
        - Src:             'var-expand-if.c:120,15'
          Dst:             strcmp
        - Src:             'var-expand-if.c:123,15'
          Dst:             strcmp
        - Src:             'var-expand-if.c:126,15'
          Dst:             strcmp
        - Src:             'var-expand-if.c:129,15'
          Dst:             strcmp
        - Src:             'var-expand-if.c:132,15'
          Dst:             wildcard_match
        - Src:             'var-expand-if.c:135,16'
          Dst:             wildcard_match
        - Src:             'var-expand-if.c:144,13'
          Dst:             regcomp
        - Src:             'var-expand-if.c:147,10'
          Dst:             regerror
        - Src:             'var-expand-if.c:148,13'
          Dst:             t_malloc_no0
        - Src:             'var-expand-if.c:149,10'
          Dst:             regerror
        - Src:             'var-expand-if.c:150,15'
          Dst:             t_strdup_printf
        - Src:             'var-expand-if.c:154,13'
          Dst:             regexec
        - Src:             'var-expand-if.c:155,4'
          Dst:             i_panic
        - Src:             'var-expand-if.c:160,3'
          Dst:             regfree
        - Src:             'var-expand-if.c:169,3'
          Dst:             i_panic
    - 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:    1
      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:    2
      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:    1
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 274
      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:273,2'
          Branch Sides:
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './array.h:273,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './array.h:273,2'
          Dst:             i_panic
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 336
      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:334,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      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:             './array.h:210,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:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 150
      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:147,3'
          Branch Sides:
            - BranchSide:      './array.h:147,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.10675
            - BranchSide:      './array.h:148,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.10675
      Callsites:
        - Src:             './array.h:146,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:149,2'
          Dst:             array_create_from_buffer_i
    - functionName:    var_expand_if
      functionSourceFile: '/src/dovecot/src/lib/var-expand-if.c'
      linkageType:     externalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - field
        - result_r
        - error_r
      BBCount:         66
      ICount:          404
      EdgeCount:       86
      CyclomaticComplexity: 22
      functionsReached:
        - array_append_i
        - array_append_space_i
        - array_count_i
        - array_create_i
        - array_idx_i
        - i_panic
        - pool_datastack_create
        - str_append_c
        - str_c
        - str_len
        - strchr
        - t_str_new
        - t_strconcat
        - t_strdup_printf
        - var_expand_if_comp
        - var_expand_with_funcs
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-if.c:188,6'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:189,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-if.c:193,2'
              BranchSideFuncs:
                - pool_datastack_create
                - array_create_i.10694
                - t_str_new
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_append_c.10693
                - str_c
                - array_append_i.10692
                - t_str_new
                - str_append_c.10693
        - Branch String:   'var-expand-if.c:198,2'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:199,8'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - t_str_new
                - str_append_c.10693
            - BranchSide:      'var-expand-if.c:229,14'
              BranchSideFuncs:
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
        - Branch String:   'var-expand-if.c:199,7'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:200,11'
              BranchSideFuncs:
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_append_c.10693
                - str_c
                - array_append_i.10692
                - t_str_new
                - str_append_c.10693
            - BranchSide:      'var-expand-if.c:202,14'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - t_str_new
                - str_append_c.10693
        - Branch String:   'var-expand-if.c:207,7'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:208,14'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - t_str_new
                - str_append_c.10693
            - BranchSide:      'var-expand-if.c:209,14'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_append_c.10693
                - str_c
                - array_append_i.10692
                - t_str_new
        - Branch String:   'var-expand-if.c:209,24'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:209,28'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_append_c.10693
                - str_c
                - array_append_i.10692
                - t_str_new
            - BranchSide:      'var-expand-if.c:212,14'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_append_c.10693
                - str_c
                - array_append_i.10692
                - t_str_new
        - Branch String:   'var-expand-if.c:209,14'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:210,9'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - t_str_new
                - str_append_c.10693
            - BranchSide:      'var-expand-if.c:212,14'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_append_c.10693
                - str_c
                - array_append_i.10692
                - t_str_new
        - Branch String:   'var-expand-if.c:212,24'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:212,28'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_append_c.10693
                - str_c
                - array_append_i.10692
                - t_str_new
            - BranchSide:      'var-expand-if.c:214,14'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_append_c.10693
                - str_c
                - array_append_i.10692
                - t_str_new
        - Branch String:   'var-expand-if.c:212,14'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:213,9'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - t_str_new
                - str_append_c.10693
            - BranchSide:      'var-expand-if.c:214,14'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_append_c.10693
                - str_c
                - array_append_i.10692
                - t_str_new
        - Branch String:   'var-expand-if.c:214,25'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:214,29'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_append_c.10693
                - str_c
                - array_append_i.10692
                - t_str_new
            - BranchSide:      'var-expand-if.c:223,14'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - t_str_new
                - str_append_c.10693
        - Branch String:   'var-expand-if.c:214,14'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:215,16'
              BranchSideFuncs:
                - str_c
                - array_append_i.10692
                - t_str_new
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_append_c.10693
                - str_append_c.10693
            - BranchSide:      'var-expand-if.c:223,14'
              BranchSideFuncs:
                - str_append_c.10693
                - str_len.10691
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - str_c
                - array_append_i.10692
                - t_str_new
                - str_append_c.10693
        - Branch String:   'var-expand-if.c:229,6'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:230,15'
              BranchSideFuncs:
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
            - BranchSide:      'var-expand-if.c:234,6'
              BranchSideFuncs:
                - array_count_i.10690
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
        - Branch String:   'var-expand-if.c:234,6'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:235,7'
              BranchSideFuncs:
                - array_count_i.10690
                - array_count_i.10690
                - t_strdup_printf
                - array_append_i.10692
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
            - BranchSide:      'var-expand-if.c:245,2'
              BranchSideFuncs:
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
        - Branch String:   'var-expand-if.c:235,7'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:236,16'
              BranchSideFuncs:
                - array_append_i.10692
                - array_append_space_i.10689
                - array_idx_i.10685
                - pool_datastack_create
                - array_create_i.10694
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
            - BranchSide:      'var-expand-if.c:240,10'
              BranchSideFuncs:
                - array_count_i.10690
                - t_strdup_printf
        - Branch String:   'var-expand-if.c:249,2'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:251,21'
              BranchSideFuncs:
                - t_str_new
                - var_expand_with_funcs
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
            - BranchSide:      'var-expand-if.c:261,2'
              BranchSideFuncs:
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
        - Branch String:   'var-expand-if.c:252,7'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:255,11'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-if.c:257,25'
              BranchSideFuncs:
                - str_c
                - array_append_i.10692
                - array_count_i.10690
                - array_idx_i.10685
                - var_expand_if_comp
                - i_panic
                - t_str_new
                - var_expand_with_funcs
        - Branch String:   'var-expand-if.c:261,2'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:261,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand-if.c:264,28'
              BranchSideFuncs:
                - array_idx_i.10685
                - var_expand_if_comp
        - Branch String:   'var-expand-if.c:265,6'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:266,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-if.c:267,14'
              BranchSideFuncs: []
        - Branch String:   'var-expand-if.c:267,14'
          Branch Sides:
            - BranchSide:      'var-expand-if.c:267,23'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-if.c:267,33'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand-if.c:179,22'
          Dst:             t_strconcat
        - Src:             'var-expand-if.c:180,18'
          Dst:             strchr
        - Src:             'var-expand-if.c:193,2'
          Dst:             pool_datastack_create
        - Src:             'var-expand-if.c:193,2'
          Dst:             array_create_i
        - Src:             'var-expand-if.c:195,11'
          Dst:             t_str_new
        - Src:             'var-expand-if.c:203,4'
          Dst:             str_append_c
        - Src:             'var-expand-if.c:215,22'
          Dst:             str_c
        - Src:             'var-expand-if.c:216,4'
          Dst:             array_append_i
        - Src:             'var-expand-if.c:217,13'
          Dst:             t_str_new
        - Src:             'var-expand-if.c:226,3'
          Dst:             str_append_c
        - Src:             'var-expand-if.c:229,6'
          Dst:             str_len
        - Src:             'var-expand-if.c:230,21'
          Dst:             str_c
        - Src:             'var-expand-if.c:231,3'
          Dst:             array_append_i
        - Src:             'var-expand-if.c:234,6'
          Dst:             array_count_i
        - Src:             'var-expand-if.c:235,7'
          Dst:             array_count_i
        - Src:             'var-expand-if.c:237,4'
          Dst:             array_append_i
        - Src:             'var-expand-if.c:240,10'
          Dst:             array_count_i
        - Src:             'var-expand-if.c:239,15'
          Dst:             t_strdup_printf
        - Src:             'var-expand-if.c:245,2'
          Dst:             array_append_space_i
        - Src:             'var-expand-if.c:246,10'
          Dst:             array_idx_i
        - Src:             'var-expand-if.c:247,2'
          Dst:             pool_datastack_create
        - Src:             'var-expand-if.c:247,2'
          Dst:             array_create_i
        - Src:             'var-expand-if.c:251,21'
          Dst:             t_str_new
        - Src:             'var-expand-if.c:252,14'
          Dst:             var_expand_with_funcs
        - Src:             'var-expand-if.c:257,19'
          Dst:             str_c
        - Src:             'var-expand-if.c:258,3'
          Dst:             array_append_i
        - Src:             'var-expand-if.c:261,2'
          Dst:             array_count_i
        - Src:             'var-expand-if.c:261,2'
          Dst:             i_panic
        - Src:             'var-expand-if.c:264,28'
          Dst:             array_idx_i
        - Src:             'var-expand-if.c:265,6'
          Dst:             var_expand_if_comp
    - 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.10730
                - str_append_c.10729
                - str_append_c.10729
                - strpbrk
                - str_append.10728
                - str_c
        - Branch String:   'wildcard-match.c:187,2'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:181,19'
              BranchSideFuncs:
                - str_append_data.10730
                - str_append_c.10729
                - str_append_c.10729
                - strpbrk
                - str_append.10728
                - str_c
            - BranchSide:      'wildcard-match.c:188,13'
              BranchSideFuncs:
                - str_append.10728
                - 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:    4
      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: 98
      functionLinenumberEnd: 99
      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:99,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.10777
                - str_len.10777
                - str_begins_with.10775
                - strrchr
                - str_append.10776
                - strncmp
                - str_append.10776
        - 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.10777
                - str_len.10777
                - str_begins_with.10775
                - strrchr
                - str_append.10776
                - strncmp
                - str_append.10776
        - Branch String:   'backtrace-string.c:92,2'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:93,15'
              BranchSideFuncs:
                - str_len.10777
                - str_len.10777
                - str_begins_with.10775
                - strrchr
                - str_append.10776
                - free
                - strncmp
                - str_append.10776
            - 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.10776
                - str_len.10777
                - str_begins_with.10775
                - strrchr
                - str_append.10776
                - free
                - str_len.10777
                - strncmp
            - BranchSide:      'backtrace-string.c:96,15'
              BranchSideFuncs:
                - str_len.10777
                - str_begins_with.10775
                - strrchr
                - str_append.10776
                - free
                - str_len.10777
                - str_append.10776
                - strncmp
        - Branch String:   'backtrace-string.c:96,37'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:96,7'
              BranchSideFuncs:
                - strrchr
                - str_append.10776
                - free
                - str_len.10777
                - str_len.10777
                - str_begins_with.10775
                - strncmp
                - str_append.10776
            - BranchSide:      'backtrace-string.c:102,33'
              BranchSideFuncs:
                - strrchr
                - str_append.10776
                - free
                - str_len.10777
                - str_len.10777
                - str_begins_with.10775
                - strncmp
                - str_append.10776
        - Branch String:   'backtrace-string.c:96,7'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:97,8'
              BranchSideFuncs:
                - strncmp
                - strrchr
                - str_append.10776
                - free
                - str_len.10777
                - str_len.10777
                - str_begins_with.10775
                - str_append.10776
            - BranchSide:      'backtrace-string.c:97,8'
              BranchSideFuncs:
                - str_begins_with.10775
                - strrchr
                - str_append.10776
                - free
                - str_len.10777
                - str_len.10777
                - strncmp
                - str_append.10776
        - Branch String:   'backtrace-string.c:97,8'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:102,33'
              BranchSideFuncs:
                - free
                - str_len.10777
                - str_len.10777
                - str_begins_with.10775
                - strrchr
                - str_append.10776
                - strncmp
                - str_append.10776
            - BranchSide:      'backtrace-string.c:109,2'
              BranchSideFuncs:
                - free
                - str_len.10777
                - str_len.10777
                - str_begins_with.10775
                - strrchr
                - str_append.10776
                - strncmp
                - str_append.10776
        - Branch String:   'backtrace-string.c:96,7'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:102,33'
              BranchSideFuncs:
                - free
                - str_len.10777
                - str_len.10777
                - str_begins_with.10775
                - strrchr
                - str_append.10776
                - strncmp
                - str_append.10776
            - BranchSide:      'backtrace-string.c:109,2'
              BranchSideFuncs:
                - free
                - str_len.10777
                - str_len.10777
                - str_begins_with.10775
                - strrchr
                - str_append.10776
                - strncmp
                - str_append.10776
        - Branch String:   'backtrace-string.c:103,8'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:104,11'
              BranchSideFuncs:
                - str_append.10776
                - free
                - str_len.10777
                - str_len.10777
                - str_begins_with.10775
                - strrchr
                - strncmp
                - str_append.10776
            - BranchSide:      'backtrace-string.c:106,14'
              BranchSideFuncs:
                - str_append.10776
                - free
                - str_len.10777
                - str_len.10777
                - str_begins_with.10775
                - strrchr
                - strncmp
                - str_append.10776
      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:    cpu_count_get
      functionSourceFile: '/src/dovecot/src/lib/cpu-count.c'
      linkageType:     externalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 39
      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:18,6'
          Branch Sides:
            - BranchSide:      'cpu-count.c:19,14'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'cpu-count.c:22,11'
              BranchSideFuncs:
                - __sched_cpucount
      Callsites:
        - Src:             'cpu-count.c:18,6'
          Dst:             sched_getaffinity
        - Src:             'cpu-count.c:19,14'
          Dst:             t_strdup_printf
        - Src:             'cpu-count.c:22,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:    is_in_group
      functionSourceFile: '/src/dovecot/src/lib/eacces-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - gid
      BBCount:         12
      ICount:          68
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - getegid
        - restrict_get_groups_list
      functionUses:    1
      BranchProfiles:
        - Branch String:   'eacces-error.c:18,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:19,3'
              BranchSideFuncs: []
            - BranchSide:      'eacces-error.c:21,9'
              BranchSideFuncs:
                - restrict_get_groups_list
        - Branch String:   'eacces-error.c:22,2'
          Branch Sides:
            - BranchSide:      'eacces-error.c:23,7'
              BranchSideFuncs: []
            - BranchSide:      'eacces-error.c:26,2'
              BranchSideFuncs: []
        - Branch String:   'eacces-error.c:23,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:24,4'
              BranchSideFuncs: []
            - BranchSide:      'eacces-error.c:25,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'eacces-error.c:18,6'
          Dst:             getegid
        - Src:             'eacces-error.c:21,9'
          Dst:             restrict_get_groups_list
    - functionName:    test_manual_access
      functionSourceFile: '/src/dovecot/src/lib/eacces-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - access_mode
        - write_eacces
        - errmsg
      BBCount:         31
      ICount:          192
      EdgeCount:       37
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - dec2str
        - geteuid
        - getgrgid
        - i_unreached
        - is_in_group
        - stat
        - str_printfa
        - write_eacces_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'eacces-error.c:58,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:59,15'
              BranchSideFuncs:
                - str_printfa
            - BranchSide:      'eacces-error.c:63,10'
              BranchSideFuncs:
                - geteuid
                - is_in_group
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
                - write_eacces_error
                - i_unreached
        - Branch String:   'eacces-error.c:63,2'
          Branch Sides:
            - BranchSide:      'eacces-error.c:65,8'
              BranchSideFuncs:
                - geteuid
                - is_in_group
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
                - write_eacces_error
            - BranchSide:      'eacces-error.c:68,8'
              BranchSideFuncs:
                - geteuid
                - is_in_group
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
                - write_eacces_error
            - BranchSide:      'eacces-error.c:71,8'
              BranchSideFuncs:
                - geteuid
                - is_in_group
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
                - write_eacces_error
            - BranchSide:      'eacces-error.c:74,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'eacces-error.c:77,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:78,20'
              BranchSideFuncs:
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
                - write_eacces_error
            - BranchSide:      'eacces-error.c:79,26'
              BranchSideFuncs:
                - is_in_group
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
                - write_eacces_error
        - Branch String:   'eacces-error.c:79,11'
          Branch Sides:
            - BranchSide:      'eacces-error.c:80,20'
              BranchSideFuncs:
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
                - write_eacces_error
            - BranchSide:      'eacces-error.c:82,13'
              BranchSideFuncs:
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
                - write_eacces_error
        - Branch String:   'eacces-error.c:82,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:83,22'
              BranchSideFuncs:
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
                - write_eacces_error
            - BranchSide:      'eacces-error.c:84,20'
              BranchSideFuncs:
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
                - write_eacces_error
        - Branch String:   'eacces-error.c:87,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:88,3'
              BranchSideFuncs: []
            - BranchSide:      'eacces-error.c:90,6'
              BranchSideFuncs:
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
                - write_eacces_error
        - Branch String:   'eacces-error.c:90,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:91,22'
              BranchSideFuncs:
                - write_eacces_error
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
            - BranchSide:      'eacces-error.c:92,6'
              BranchSideFuncs:
                - __errno_location
                - dec2str
                - str_printfa
                - getgrgid
                - str_printfa
        - Branch String:   'eacces-error.c:92,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:95,15'
              BranchSideFuncs:
                - dec2str
                - str_printfa
                - getgrgid
                - __errno_location
                - str_printfa
            - BranchSide:      'eacces-error.c:101,2'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'eacces-error.c:98,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:99,16'
              BranchSideFuncs:
                - str_printfa
                - __errno_location
            - BranchSide:      'eacces-error.c:100,2'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'eacces-error.c:58,6'
          Dst:             stat
        - Src:             'eacces-error.c:59,3'
          Dst:             str_printfa
        - Src:             'eacces-error.c:74,3'
          Dst:             i_unreached
        - Src:             'eacces-error.c:77,19'
          Dst:             geteuid
        - Src:             'eacces-error.c:79,11'
          Dst:             is_in_group
        - Src:             'eacces-error.c:91,3'
          Dst:             write_eacces_error
        - Src:             'eacces-error.c:96,8'
          Dst:             dec2str
        - Src:             'eacces-error.c:95,3'
          Dst:             str_printfa
        - Src:             'eacces-error.c:97,11'
          Dst:             getgrgid
        - Src:             'eacces-error.c:99,4'
          Dst:             str_printfa
        - Src:             'eacces-error.c:101,2'
          Dst:             __errno_location
    - functionName:    write_eacces_error
      functionSourceFile: '/src/dovecot/src/lib/eacces-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - errmsg
        - path
        - mode
      BBCount:         8
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - i_unreached
        - str_printfa
      functionUses:    3
      BranchProfiles:
        - Branch String:   'eacces-error.c:33,2'
          Branch Sides:
            - BranchSide:      'eacces-error.c:35,5'
              BranchSideFuncs:
                - str_printfa
            - BranchSide:      'eacces-error.c:38,5'
              BranchSideFuncs:
                - str_printfa
            - BranchSide:      'eacces-error.c:41,5'
              BranchSideFuncs:
                - str_printfa
            - BranchSide:      'eacces-error.c:44,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'eacces-error.c:44,3'
          Dst:             i_unreached
        - Src:             'eacces-error.c:46,2'
          Dst:             str_printfa
    - functionName:    getgrgid
      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:    test_access
      functionSourceFile: '/src/dovecot/src/lib/eacces-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - access_mode
        - errmsg
      BBCount:         30
      ICount:          159
      EdgeCount:       36
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - access
        - getuid
        - i_unreached
        - stat
        - str_append
        - str_printfa
        - t_strconcat
        - test_manual_access
        - write_eacces_error
      functionUses:    4
      BranchProfiles:
        - Branch String:   'eacces-error.c:109,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:110,14'
              BranchSideFuncs:
                - access
                - __errno_location
                - str_printfa
                - write_eacces_error
                - test_manual_access
                - __errno_location
                - str_append.10836
            - BranchSide:      'eacces-error.c:129,10'
              BranchSideFuncs:
                - test_manual_access
                - t_strconcat
                - stat
                - __errno_location
                - __errno_location
                - __errno_location
                - str_printfa
                - write_eacces_error
                - i_unreached
        - Branch String:   'eacces-error.c:110,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:111,4'
              BranchSideFuncs: []
            - BranchSide:      'eacces-error.c:112,7'
              BranchSideFuncs:
                - __errno_location
                - str_printfa
                - write_eacces_error
                - test_manual_access
                - __errno_location
                - str_append.10836
        - Branch String:   'eacces-error.c:112,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:113,23'
              BranchSideFuncs:
                - write_eacces_error
                - test_manual_access
                - __errno_location
                - str_append.10836
            - BranchSide:      'eacces-error.c:121,16'
              BranchSideFuncs:
                - str_printfa
        - Branch String:   'eacces-error.c:114,8'
          Branch Sides:
            - BranchSide:      'eacces-error.c:116,16'
              BranchSideFuncs:
                - str_append.10836
                - __errno_location
            - BranchSide:      'eacces-error.c:119,4'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'eacces-error.c:129,2'
          Branch Sides:
            - BranchSide:      'eacces-error.c:131,24'
              BranchSideFuncs:
                - t_strconcat
                - stat
                - __errno_location
                - __errno_location
                - __errno_location
                - str_printfa
                - write_eacces_error
            - BranchSide:      'eacces-error.c:142,3'
              BranchSideFuncs:
                - test_manual_access
            - BranchSide:      'eacces-error.c:142,3'
              BranchSideFuncs:
                - test_manual_access
            - BranchSide:      'eacces-error.c:144,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'eacces-error.c:131,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:132,4'
              BranchSideFuncs: []
            - BranchSide:      'eacces-error.c:133,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - str_printfa
                - write_eacces_error
        - Branch String:   'eacces-error.c:133,23'
          Branch Sides:
            - BranchSide:      'eacces-error.c:133,26'
              BranchSideFuncs: []
            - BranchSide:      'eacces-error.c:134,4'
              BranchSideFuncs: []
        - Branch String:   'eacces-error.c:133,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:134,4'
              BranchSideFuncs: []
            - BranchSide:      'eacces-error.c:135,7'
              BranchSideFuncs:
                - __errno_location
                - str_printfa
                - write_eacces_error
        - Branch String:   'eacces-error.c:135,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:136,23'
              BranchSideFuncs:
                - write_eacces_error
            - BranchSide:      'eacces-error.c:138,16'
              BranchSideFuncs:
                - str_printfa
      Callsites:
        - Src:             'eacces-error.c:109,6'
          Dst:             getuid
        - Src:             'eacces-error.c:109,18'
          Dst:             geteuid
        - Src:             'eacces-error.c:110,7'
          Dst:             access
        - Src:             'eacces-error.c:112,7'
          Dst:             __errno_location
        - Src:             'eacces-error.c:113,4'
          Dst:             write_eacces_error
        - Src:             'eacces-error.c:114,8'
          Dst:             test_manual_access
        - Src:             'eacces-error.c:116,5'
          Dst:             str_append
        - Src:             'eacces-error.c:119,4'
          Dst:             __errno_location
        - Src:             'eacces-error.c:121,4'
          Dst:             str_printfa
        - Src:             'eacces-error.c:131,12'
          Dst:             t_strconcat
        - Src:             'eacces-error.c:131,7'
          Dst:             stat
        - Src:             'eacces-error.c:133,7'
          Dst:             __errno_location
        - Src:             'eacces-error.c:133,26'
          Dst:             __errno_location
        - Src:             'eacces-error.c:135,7'
          Dst:             __errno_location
        - Src:             'eacces-error.c:136,4'
          Dst:             write_eacces_error
        - Src:             'eacces-error.c:138,4'
          Dst:             str_printfa
        - Src:             'eacces-error.c:144,3'
          Dst:             i_unreached
        - Src:             'eacces-error.c:147,9'
          Dst:             test_manual_access
    - 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:    9
      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:    eperm_error_get_chgrp
      functionSourceFile: '/src/dovecot/src/lib/eacces-error.c'
      linkageType:     externalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - func
        - path
        - gid
        - gid_origin
      BBCount:         12
      ICount:          105
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - dec2str
        - getegid
        - getgrgid
        - str_append
        - str_c
        - str_printfa
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'eacces-error.c:304,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:305,15'
              BranchSideFuncs:
                - str_printfa
                - getegid
                - dec2str
                - str_printfa
                - getegid
                - getgrgid
                - str_append.10836
                - __errno_location
                - str_c
                - str_printfa
                - str_printfa
            - BranchSide:      'eacces-error.c:307,14'
              BranchSideFuncs:
                - getegid
                - dec2str
                - str_printfa
                - getegid
                - getgrgid
                - str_append.10836
                - __errno_location
                - str_c
                - str_printfa
                - str_printfa
        - Branch String:   'eacces-error.c:310,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:311,15'
              BranchSideFuncs:
                - str_printfa
                - str_append.10836
                - __errno_location
                - str_c
                - str_printfa
            - BranchSide:      'eacces-error.c:312,6'
              BranchSideFuncs:
                - str_append.10836
                - __errno_location
                - str_c
                - str_printfa
        - Branch String:   'eacces-error.c:312,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:312,6'
              BranchSideFuncs:
                - str_printfa
                - str_append.10836
                - __errno_location
                - str_c
            - BranchSide:      'eacces-error.c:313,15'
              BranchSideFuncs:
                - str_printfa
                - str_append.10836
                - __errno_location
                - str_c
      Callsites:
        - Src:             'eacces-error.c:298,19'
          Dst:             __errno_location
        - Src:             'eacces-error.c:300,11'
          Dst:             t_str_new
        - Src:             'eacces-error.c:302,53'
          Dst:             dec2str
        - Src:             'eacces-error.c:302,2'
          Dst:             str_printfa
        - Src:             'eacces-error.c:303,10'
          Dst:             getgrgid
        - Src:             'eacces-error.c:305,3'
          Dst:             str_printfa
        - Src:             'eacces-error.c:308,15'
          Dst:             getegid
        - Src:             'eacces-error.c:308,7'
          Dst:             dec2str
        - Src:             'eacces-error.c:307,2'
          Dst:             str_printfa
        - Src:             'eacces-error.c:309,19'
          Dst:             getegid
        - Src:             'eacces-error.c:309,10'
          Dst:             getgrgid
        - Src:             'eacces-error.c:311,3'
          Dst:             str_printfa
        - Src:             'eacces-error.c:313,3'
          Dst:             str_printfa
        - Src:             'eacces-error.c:314,2'
          Dst:             str_append
        - Src:             'eacces-error.c:316,2'
          Dst:             __errno_location
        - Src:             'eacces-error.c:317,9'
          Dst:             str_c
    - functionName:    eacces_error_get_creating
      functionSourceFile: '/src/dovecot/src/lib/eacces-error.c'
      linkageType:     externalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - func
        - path
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eacces_error_get_full
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eacces-error.c:290,9'
          Dst:             eacces_error_get_full
    - functionName:    eacces_error_get_full
      functionSourceFile: '/src/dovecot/src/lib/eacces-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - func
        - path
        - creating
      BBCount:         106
      ICount:          562
      EdgeCount:       138
      CyclomaticComplexity: 34
      functionsReached:
        - __errno_location
        - dec2str
        - getegid
        - geteuid
        - i_error
        - i_getgrgid
        - i_getpwuid
        - stat
        - str_append
        - str_append_c
        - str_c
        - str_printfa
        - strcmp
        - strrchr
        - t_get_working_dir
        - t_str_new
        - t_strconcat
        - t_strdup
        - t_strdup_until
        - test_access
      functionUses:    2
      BranchProfiles:
        - Branch String:   'eacces-error.c:164,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:166,7'
              BranchSideFuncs:
                - t_get_working_dir
                - str_printfa
                - t_strconcat
                - geteuid
                - dec2str
                - str_printfa
                - geteuid
                - i_getpwuid
                - str_append.10836
                - getegid
                - dec2str
                - str_printfa
                - getegid
                - i_getgrgid
                - str_append.10836
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
                - str_append.10836
                - str_append_c.10841
                - __errno_location
                - str_c
                - str_append.10836
                - t_strdup
                - str_printfa
                - str_append.10836
                - t_strdup
                - str_printfa
                - i_error
                - str_printfa
            - BranchSide:      'eacces-error.c:174,14'
              BranchSideFuncs:
                - geteuid
                - dec2str
                - str_printfa
                - geteuid
                - i_getpwuid
                - str_append.10836
                - getegid
                - dec2str
                - str_printfa
                - getegid
                - i_getgrgid
                - str_append.10836
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
                - str_append.10836
                - str_append_c.10841
                - __errno_location
                - str_c
                - str_append.10836
                - t_strdup
                - str_printfa
                - str_append.10836
                - t_strdup
                - str_printfa
        - Branch String:   'eacces-error.c:166,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:167,41'
              BranchSideFuncs:
                - i_error
                - str_printfa
                - geteuid
                - dec2str
                - str_printfa
                - geteuid
                - i_getpwuid
                - str_append.10836
                - getegid
                - dec2str
                - str_printfa
                - getegid
                - i_getgrgid
                - str_append.10836
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
                - str_append.10836
                - str_append_c.10841
                - __errno_location
                - str_c
                - str_append.10836
                - t_strdup
                - str_printfa
                - str_append.10836
                - t_strdup
                - str_printfa
            - BranchSide:      'eacces-error.c:170,16'
              BranchSideFuncs:
                - str_printfa
                - t_strconcat
                - geteuid
                - dec2str
                - str_printfa
                - geteuid
                - i_getpwuid
                - str_append.10836
                - getegid
                - dec2str
                - str_printfa
                - getegid
                - i_getgrgid
                - str_append.10836
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
                - str_append.10836
                - str_append_c.10841
                - __errno_location
                - str_c
                - str_append.10836
                - t_strdup
                - str_printfa
                - str_append.10836
                - t_strdup
                - str_printfa
        - Branch String:   'eacces-error.c:177,2'
          Branch Sides:
            - BranchSide:      'eacces-error.c:179,14'
              BranchSideFuncs:
                - str_append.10836
                - getegid
                - dec2str
                - str_printfa
                - getegid
                - i_getgrgid
                - str_append.10836
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
                - str_append.10836
                - str_append_c.10841
                - __errno_location
                - str_c
                - str_append.10836
                - t_strdup
                - str_printfa
            - BranchSide:      'eacces-error.c:182,14'
              BranchSideFuncs:
                - str_append.10836
                - getegid
                - dec2str
                - str_printfa
                - getegid
                - i_getgrgid
                - str_append.10836
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
                - str_append.10836
                - str_append_c.10841
                - __errno_location
                - str_c
                - str_append.10836
                - t_strdup
                - str_printfa
            - BranchSide:      'eacces-error.c:185,25'
              BranchSideFuncs:
                - t_strdup
                - str_printfa
                - getegid
                - dec2str
                - str_printfa
                - getegid
                - i_getgrgid
                - str_append.10836
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
                - str_append.10836
                - str_append_c.10841
                - __errno_location
                - str_c
                - str_append.10836
                - t_strdup
                - str_printfa
        - Branch String:   'eacces-error.c:191,2'
          Branch Sides:
            - BranchSide:      'eacces-error.c:193,14'
              BranchSideFuncs:
                - str_append.10836
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
                - str_append.10836
                - str_append_c.10841
                - __errno_location
                - str_c
            - BranchSide:      'eacces-error.c:196,14'
              BranchSideFuncs:
                - str_append.10836
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
                - str_append.10836
                - str_append_c.10841
                - __errno_location
                - str_c
            - BranchSide:      'eacces-error.c:199,28'
              BranchSideFuncs:
                - t_strdup
                - str_printfa
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
                - str_append.10836
                - str_append_c.10841
                - __errno_location
                - str_c
        - Branch String:   'eacces-error.c:204,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:205,14'
              BranchSideFuncs:
                - str_append.10836
                - str_append_c.10841
                - __errno_location
                - str_c
            - BranchSide:      'eacces-error.c:211,14'
              BranchSideFuncs:
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
        - Branch String:   'eacces-error.c:212,2'
          Branch Sides:
            - BranchSide:      'eacces-error.c:213,20'
              BranchSideFuncs:
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strcmp
                - strcmp
                - strcmp
            - BranchSide:      'eacces-error.c:234,6'
              BranchSideFuncs:
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
        - Branch String:   'eacces-error.c:213,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:214,4'
              BranchSideFuncs:
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
            - BranchSide:      'eacces-error.c:216,24'
              BranchSideFuncs:
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strcmp
                - strcmp
                - strrchr
                - strcmp
        - Branch String:   'eacces-error.c:218,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:219,4'
              BranchSideFuncs:
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
            - BranchSide:      'eacces-error.c:220,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - str_printfa
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strcmp
                - strcmp
                - strrchr
                - t_strdup_until
                - stat
                - strcmp
        - Branch String:   'eacces-error.c:220,23'
          Branch Sides:
            - BranchSide:      'eacces-error.c:220,33'
              BranchSideFuncs:
                - strcmp
                - __errno_location
                - str_printfa
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strcmp
                - strcmp
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
            - BranchSide:      'eacces-error.c:222,14'
              BranchSideFuncs:
                - __errno_location
                - str_printfa
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strcmp
                - strcmp
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - strcmp
        - Branch String:   'eacces-error.c:220,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:222,3'
              BranchSideFuncs:
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
            - BranchSide:      'eacces-error.c:222,14'
              BranchSideFuncs:
                - __errno_location
                - str_printfa
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strcmp
                - strcmp
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - strcmp
        - Branch String:   'eacces-error.c:222,30'
          Branch Sides:
            - BranchSide:      'eacces-error.c:222,33'
              BranchSideFuncs:
                - str_printfa
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strcmp
                - strcmp
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - strcmp
            - BranchSide:      'eacces-error.c:228,16'
              BranchSideFuncs:
                - str_printfa
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
        - Branch String:   'eacces-error.c:222,42'
          Branch Sides:
            - BranchSide:      'eacces-error.c:223,14'
              BranchSideFuncs:
                - strcmp
                - str_printfa
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strcmp
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - strcmp
            - BranchSide:      'eacces-error.c:228,16'
              BranchSideFuncs:
                - str_printfa
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
        - Branch String:   'eacces-error.c:222,14'
          Branch Sides:
            - BranchSide:      'eacces-error.c:226,3'
              BranchSideFuncs:
                - strcmp
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
                - strrchr
                - t_strdup_until
                - stat
                - __errno_location
                - __errno_location
                - str_printfa
                - strcmp
                - strcmp
            - BranchSide:      'eacces-error.c:228,16'
              BranchSideFuncs:
                - str_printfa
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - test_access
                - test_access
                - str_append.10836
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
        - Branch String:   'eacces-error.c:234,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:236,19'
              BranchSideFuncs:
                - test_access
                - test_access
                - str_append.10836
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - __errno_location
                - test_access
                - test_access
                - __errno_location
                - __errno_location
            - BranchSide:      'eacces-error.c:255,6'
              BranchSideFuncs:
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
        - Branch String:   'eacces-error.c:236,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:237,8'
              BranchSideFuncs:
                - __errno_location
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:239,14'
              BranchSideFuncs:
                - test_access
                - str_append.10836
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - __errno_location
                - test_access
                - test_access
                - __errno_location
        - Branch String:   'eacces-error.c:237,8'
          Branch Sides:
            - BranchSide:      'eacces-error.c:238,18'
              BranchSideFuncs:
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:239,3'
              BranchSideFuncs:
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
        - Branch String:   'eacces-error.c:239,23'
          Branch Sides:
            - BranchSide:      'eacces-error.c:239,38'
              BranchSideFuncs:
                - test_access
                - test_access
                - str_append.10836
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - __errno_location
                - test_access
                - __errno_location
            - BranchSide:      'eacces-error.c:242,14'
              BranchSideFuncs:
                - test_access
                - str_append.10836
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - __errno_location
                - test_access
        - Branch String:   'eacces-error.c:239,14'
          Branch Sides:
            - BranchSide:      'eacces-error.c:240,8'
              BranchSideFuncs:
                - __errno_location
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:242,14'
              BranchSideFuncs:
                - test_access
                - str_append.10836
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - __errno_location
                - test_access
        - Branch String:   'eacces-error.c:240,8'
          Branch Sides:
            - BranchSide:      'eacces-error.c:241,18'
              BranchSideFuncs:
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:242,3'
              BranchSideFuncs:
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
        - Branch String:   'eacces-error.c:242,32'
          Branch Sides:
            - BranchSide:      'eacces-error.c:243,19'
              BranchSideFuncs:
                - test_access
                - test_access
                - str_append.10836
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - __errno_location
            - BranchSide:      'eacces-error.c:244,15'
              BranchSideFuncs:
                - test_access
                - str_append.10836
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - __errno_location
        - Branch String:   'eacces-error.c:242,14'
          Branch Sides:
            - BranchSide:      'eacces-error.c:244,3'
              BranchSideFuncs:
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:244,15'
              BranchSideFuncs:
                - test_access
                - str_append.10836
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
                - __errno_location
        - Branch String:   'eacces-error.c:244,24'
          Branch Sides:
            - BranchSide:      'eacces-error.c:244,39'
              BranchSideFuncs:
                - str_append.10836
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:251,15'
              BranchSideFuncs:
                - str_append.10836
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
        - Branch String:   'eacces-error.c:244,14'
          Branch Sides:
            - BranchSide:      'eacces-error.c:248,8'
              BranchSideFuncs:
                - __errno_location
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:251,15'
              BranchSideFuncs:
                - str_append.10836
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
        - Branch String:   'eacces-error.c:248,8'
          Branch Sides:
            - BranchSide:      'eacces-error.c:249,18'
              BranchSideFuncs:
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:250,3'
              BranchSideFuncs:
                - geteuid
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
                - dec2str
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
        - Branch String:   'eacces-error.c:255,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:257,14'
              BranchSideFuncs:
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:271,6'
              BranchSideFuncs:
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
        - Branch String:   'eacces-error.c:257,11'
          Branch Sides:
            - BranchSide:      'eacces-error.c:258,7'
              BranchSideFuncs:
                - dec2str
                - dec2str
                - str_printfa
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - i_getpwuid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:267,13'
              BranchSideFuncs:
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - str_append.10836
        - Branch String:   'eacces-error.c:258,23'
          Branch Sides:
            - BranchSide:      'eacces-error.c:258,40'
              BranchSideFuncs:
                - i_getpwuid
                - dec2str
                - dec2str
                - str_printfa
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:263,16'
              BranchSideFuncs:
                - dec2str
                - dec2str
                - str_printfa
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
        - Branch String:   'eacces-error.c:258,57'
          Branch Sides:
            - BranchSide:      'eacces-error.c:259,17'
              BranchSideFuncs:
                - strcmp
                - dec2str
                - dec2str
                - str_printfa
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:263,16'
              BranchSideFuncs:
                - dec2str
                - dec2str
                - str_printfa
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
        - Branch String:   'eacces-error.c:258,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:260,16'
              BranchSideFuncs:
                - dec2str
                - str_printfa
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:263,16'
              BranchSideFuncs:
                - dec2str
                - dec2str
                - str_printfa
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
        - Branch String:   'eacces-error.c:271,15'
          Branch Sides:
            - BranchSide:      'eacces-error.c:271,18'
              BranchSideFuncs:
                - str_append_c.10841
                - __errno_location
                - str_c
                - getegid
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:278,2'
              BranchSideFuncs:
                - str_append_c.10841
                - __errno_location
                - str_c
        - Branch String:   'eacces-error.c:271,34'
          Branch Sides:
            - BranchSide:      'eacces-error.c:271,40'
              BranchSideFuncs:
                - getegid
                - str_append_c.10841
                - __errno_location
                - str_c
                - i_getgrgid
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:278,2'
              BranchSideFuncs:
                - str_append_c.10841
                - __errno_location
                - str_c
        - Branch String:   'eacces-error.c:271,6'
          Branch Sides:
            - BranchSide:      'eacces-error.c:272,21'
              BranchSideFuncs:
                - i_getgrgid
                - str_append_c.10841
                - __errno_location
                - str_c
                - strcmp
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:278,2'
              BranchSideFuncs:
                - str_append_c.10841
                - __errno_location
                - str_c
        - Branch String:   'eacces-error.c:272,41'
          Branch Sides:
            - BranchSide:      'eacces-error.c:273,20'
              BranchSideFuncs:
                - strcmp
                - str_append_c.10841
                - __errno_location
                - str_c
                - dec2str
                - str_printfa
            - BranchSide:      'eacces-error.c:277,2'
              BranchSideFuncs:
                - str_append_c.10841
                - __errno_location
                - str_c
        - Branch String:   'eacces-error.c:272,7'
          Branch Sides:
            - BranchSide:      'eacces-error.c:274,16'
              BranchSideFuncs:
                - dec2str
                - str_printfa
                - str_append_c.10841
                - __errno_location
                - str_c
            - BranchSide:      'eacces-error.c:277,2'
              BranchSideFuncs:
                - str_append_c.10841
                - __errno_location
                - str_c
      Callsites:
        - Src:             'eacces-error.c:161,15'
          Dst:             __errno_location
        - Src:             'eacces-error.c:162,11'
          Dst:             t_str_new
        - Src:             'eacces-error.c:163,2'
          Dst:             str_printfa
        - Src:             'eacces-error.c:166,7'
          Dst:             t_get_working_dir
        - Src:             'eacces-error.c:167,4'
          Dst:             i_error
        - Src:             'eacces-error.c:168,4'
          Dst:             str_printfa
        - Src:             'eacces-error.c:170,4'
          Dst:             str_printfa
        - Src:             'eacces-error.c:171,11'
          Dst:             t_strconcat
        - Src:             'eacces-error.c:175,15'
          Dst:             geteuid
        - Src:             'eacces-error.c:175,7'
          Dst:             dec2str
        - Src:             'eacces-error.c:174,2'
          Dst:             str_printfa
        - Src:             'eacces-error.c:177,21'
          Dst:             geteuid
        - Src:             'eacces-error.c:177,10'
          Dst:             i_getpwuid
        - Src:             'eacces-error.c:179,3'
          Dst:             str_append
        - Src:             'eacces-error.c:182,3'
          Dst:             str_append
        - Src:             'eacces-error.c:185,13'
          Dst:             t_strdup
        - Src:             'eacces-error.c:186,3'
          Dst:             str_printfa
        - Src:             'eacces-error.c:190,42'
          Dst:             getegid
        - Src:             'eacces-error.c:190,34'
          Dst:             dec2str
        - Src:             'eacces-error.c:190,2'
          Dst:             str_printfa
        - Src:             'eacces-error.c:191,21'
          Dst:             getegid
        - Src:             'eacces-error.c:191,10'
          Dst:             i_getgrgid
        - Src:             'eacces-error.c:193,3'
          Dst:             str_append
        - Src:             'eacces-error.c:196,3'
          Dst:             str_append
        - Src:             'eacces-error.c:199,13'
          Dst:             t_strdup
        - Src:             'eacces-error.c:200,3'
          Dst:             str_printfa
        - Src:             'eacces-error.c:205,3'
          Dst:             str_append
        - Src:             'eacces-error.c:206,3'
          Dst:             str_append_c
        - Src:             'eacces-error.c:207,3'
          Dst:             __errno_location
        - Src:             'eacces-error.c:208,10'
          Dst:             str_c
        - Src:             'eacces-error.c:212,9'
          Dst:             strcmp
        - Src:             'eacces-error.c:213,12'
          Dst:             strrchr
        - Src:             'eacces-error.c:216,9'
          Dst:             t_strdup_until
        - Src:             'eacces-error.c:217,9'
          Dst:             stat
        - Src:             'eacces-error.c:220,7'
          Dst:             __errno_location
        - Src:             'eacces-error.c:220,26'
          Dst:             strcmp
        - Src:             'eacces-error.c:222,14'
          Dst:             __errno_location
        - Src:             'eacces-error.c:223,7'
          Dst:             strcmp
        - Src:             'eacces-error.c:228,4'
          Dst:             str_printfa
        - Src:             'eacces-error.c:236,7'
          Dst:             test_access
        - Src:             'eacces-error.c:237,8'
          Dst:             __errno_location
        - Src:             'eacces-error.c:239,26'
          Dst:             test_access
        - Src:             'eacces-error.c:240,8'
          Dst:             __errno_location
        - Src:             'eacces-error.c:243,7'
          Dst:             test_access
        - Src:             'eacces-error.c:244,27'
          Dst:             test_access
        - Src:             'eacces-error.c:248,8'
          Dst:             __errno_location
        - Src:             'eacces-error.c:251,4'
          Dst:             str_append
        - Src:             'eacces-error.c:257,24'
          Dst:             geteuid
        - Src:             'eacces-error.c:258,26'
          Dst:             i_getpwuid
        - Src:             'eacces-error.c:259,7'
          Dst:             strcmp
        - Src:             'eacces-error.c:261,9'
          Dst:             dec2str
        - Src:             'eacces-error.c:260,4'
          Dst:             str_printfa
        - Src:             'eacces-error.c:264,9'
          Dst:             dec2str
        - Src:             'eacces-error.c:264,29'
          Dst:             dec2str
        - Src:             'eacces-error.c:263,4'
          Dst:             str_printfa
        - Src:             'eacces-error.c:269,3'
          Dst:             str_append
        - Src:             'eacces-error.c:271,50'
          Dst:             getegid
        - Src:             'eacces-error.c:272,7'
          Dst:             i_getgrgid
        - Src:             'eacces-error.c:273,7'
          Dst:             strcmp
        - Src:             'eacces-error.c:275,9'
          Dst:             dec2str
        - Src:             'eacces-error.c:274,4'
          Dst:             str_printfa
        - Src:             'eacces-error.c:278,2'
          Dst:             str_append_c
        - Src:             'eacces-error.c:279,2'
          Dst:             __errno_location
        - Src:             'eacces-error.c:280,9'
          Dst:             str_c
    - functionName:    eacces_error_get
      functionSourceFile: '/src/dovecot/src/lib/eacces-error.c'
      linkageType:     externalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - func
        - path
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eacces_error_get_full
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eacces-error.c:285,9'
          Dst:             eacces_error_get_full
    - 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.10880
                - i_panic
            - BranchSide:      'fdpass.c:162,2'
              BranchSideFuncs:
                - recvmsg
                - i_memcpy.10880
                - 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.10880
        - Branch String:   'fdpass.c:177,6'
          Branch Sides:
            - BranchSide:      'fdpass.c:178,4'
              BranchSideFuncs: []
            - BranchSide:      'fdpass.c:187,9'
              BranchSideFuncs:
                - i_memcpy.10880
        - Branch String:   'fdpass.c:187,9'
          Branch Sides:
            - BranchSide:      'fdpass.c:187,7'
              BranchSideFuncs:
                - i_memcpy.10880
            - BranchSide:      'fdpass.c:187,7'
              BranchSideFuncs:
                - i_memcpy.10880
        - Branch String:   'fdpass.c:188,7'
          Branch Sides:
            - BranchSide:      'fdpass.c:188,7'
              BranchSideFuncs:
                - i_memcpy.10880
            - BranchSide:      'fdpass.c:189,4'
              BranchSideFuncs: []
        - Branch String:   'fdpass.c:188,7'
          Branch Sides:
            - BranchSide:      'fdpass.c:188,7'
              BranchSideFuncs:
                - i_memcpy.10880
            - BranchSide:      'fdpass.c:189,4'
              BranchSideFuncs: []
        - Branch String:   'fdpass.c:188,7'
          Branch Sides:
            - BranchSide:      'fdpass.c:188,7'
              BranchSideFuncs:
                - i_memcpy.10880
            - BranchSide:      'fdpass.c:189,4'
              BranchSideFuncs: []
        - Branch String:   'fdpass.c:188,6'
          Branch Sides:
            - BranchSide:      'fdpass.c:189,4'
              BranchSideFuncs:
                - i_memcpy.10880
            - BranchSide:      'fdpass.c:191,3'
              BranchSideFuncs:
                - i_memcpy.10880
      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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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.10880
                - i_panic
            - BranchSide:      'fdpass.c:112,2'
              BranchSideFuncs:
                - sendmsg
                - i_memcpy.10880
                - 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.10880
        - Branch String:   'fdpass.c:122,6'
          Branch Sides:
            - BranchSide:      'fdpass.c:122,6'
              BranchSideFuncs:
                - i_memcpy.10880
                - sendmsg
            - BranchSide:      'fdpass.c:124,3'
              BranchSideFuncs:
                - i_memcpy.10880
                - sendmsg
        - Branch String:   'fdpass.c:128,10'
          Branch Sides:
            - BranchSide:      'fdpass.c:128,8'
              BranchSideFuncs:
                - i_memcpy.10880
                - sendmsg
            - BranchSide:      'fdpass.c:128,8'
              BranchSideFuncs:
                - i_memcpy.10880
                - 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:    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:    2
      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:    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: 138
      functionLinenumberEnd: 141
      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:139,6'
          Branch Sides:
            - BranchSide:      './mempool.h:139,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:140,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.10946
            - BranchSide:      'ioloop-notify-fd.c:35,19'
              BranchSideFuncs:
                - p_free_internal.10946
        - Branch String:   'ioloop-notify-fd.c:37,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-fd.c:38,20'
              BranchSideFuncs:
                - p_free_internal.10946
            - BranchSide:      'ioloop-notify-fd.c:39,2'
              BranchSideFuncs:
                - p_free_internal.10946
      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: 108
      functionLinenumberEnd: 112
      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:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:109,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:109,6'
          Branch Sides:
            - BranchSide:      './mempool.h:110,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:112,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:110,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
    - 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.10978
                - body
                - i_memcpy.10978
                - body
                - i_memcpy.10978
        - Branch String:   'md4.c:170,6'
          Branch Sides:
            - BranchSide:      'md4.c:171,3'
              BranchSideFuncs:
                - i_memcpy.10978
                - body
                - i_memcpy.10978
                - body
                - i_memcpy.10978
            - BranchSide:      'md4.c:172,13'
              BranchSideFuncs:
                - i_memcpy.10978
                - body
                - i_memcpy.10978
                - body
                - i_memcpy.10978
        - Branch String:   'md4.c:176,6'
          Branch Sides:
            - BranchSide:      'md4.c:177,15'
              BranchSideFuncs:
                - i_memcpy.10978
                - body
                - i_memcpy.10978
                - body
                - i_memcpy.10978
            - BranchSide:      'md4.c:190,6'
              BranchSideFuncs:
                - i_memcpy.10978
                - body
        - Branch String:   'md4.c:179,7'
          Branch Sides:
            - BranchSide:      'md4.c:180,4'
              BranchSideFuncs:
                - i_memcpy.10978
            - BranchSide:      'md4.c:184,3'
              BranchSideFuncs:
                - i_memcpy.10978
                - body
                - i_memcpy.10978
                - body
        - Branch String:   'md4.c:190,6'
          Branch Sides:
            - BranchSide:      'md4.c:191,15'
              BranchSideFuncs:
                - body
                - i_memcpy.10978
            - BranchSide:      'md4.c:195,2'
              BranchSideFuncs:
                - i_memcpy.10978
      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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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.11008
                - body.11008
                - safe_memset
            - BranchSide:      'md5.c:229,11'
              BranchSideFuncs:
                - body.11008
                - body.11008
                - 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.11009
                - body.11008
                - i_memcpy.11009
                - body.11008
                - i_memcpy.11009
        - Branch String:   'md5.c:187,6'
          Branch Sides:
            - BranchSide:      'md5.c:188,3'
              BranchSideFuncs:
                - i_memcpy.11009
                - body.11008
                - i_memcpy.11009
                - body.11008
                - i_memcpy.11009
            - BranchSide:      'md5.c:189,13'
              BranchSideFuncs:
                - i_memcpy.11009
                - body.11008
                - i_memcpy.11009
                - body.11008
                - i_memcpy.11009
        - Branch String:   'md5.c:193,6'
          Branch Sides:
            - BranchSide:      'md5.c:194,15'
              BranchSideFuncs:
                - i_memcpy.11009
                - body.11008
                - i_memcpy.11009
                - body.11008
                - i_memcpy.11009
            - BranchSide:      'md5.c:207,6'
              BranchSideFuncs:
                - i_memcpy.11009
                - body.11008
        - Branch String:   'md5.c:196,7'
          Branch Sides:
            - BranchSide:      'md5.c:197,4'
              BranchSideFuncs:
                - i_memcpy.11009
            - BranchSide:      'md5.c:201,3'
              BranchSideFuncs:
                - i_memcpy.11009
                - body.11008
                - i_memcpy.11009
                - body.11008
        - Branch String:   'md5.c:207,6'
          Branch Sides:
            - BranchSide:      'md5.c:208,15'
              BranchSideFuncs:
                - body.11008
                - i_memcpy.11009
            - BranchSide:      'md5.c:212,2'
              BranchSideFuncs:
                - i_memcpy.11009
      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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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:    2
      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:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    hmac_update
      functionSourceFile: '/src/dovecot/src/lib/./hmac.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - _ctx
        - data
        - size
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pkcs5_pbkdf2
      functionSourceFile: '/src/dovecot/src/lib/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - hash
        - password
        - password_len
        - salt
        - salt_len
        - iter
        - length
        - result
      BBCount:         21
      ICount:          212
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - buffer_append
        - hmac_final
        - hmac_init
        - hmac_update
        - htonl
        - i_memcpy
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs5.c:50,17'
          Branch Sides:
            - BranchSide:      'pkcs5.c:50,30'
              BranchSideFuncs: []
            - BranchSide:      'pkcs5.c:50,20'
              BranchSideFuncs:
                - buffer_append
                - htonl
                - hmac_init
                - hmac_update
                - hmac_update
                - hmac_final
                - i_memcpy.11033
                - hmac_init
                - hmac_update
                - hmac_final
        - Branch String:   'pkcs5.c:50,6'
          Branch Sides:
            - BranchSide:      'pkcs5.c:50,30'
              BranchSideFuncs: []
            - BranchSide:      'pkcs5.c:52,14'
              BranchSideFuncs:
                - buffer_append
                - htonl
                - hmac_init
                - hmac_update
                - hmac_update
                - hmac_final
                - i_memcpy.11033
                - hmac_init
                - hmac_update
                - hmac_final
        - Branch String:   'pkcs5.c:59,2'
          Branch Sides:
            - BranchSide:      'pkcs5.c:60,16'
              BranchSideFuncs:
                - htonl
                - hmac_init
                - hmac_update
                - hmac_update
                - hmac_final
                - i_memcpy.11033
                - buffer_append
                - hmac_init
                - hmac_update
                - hmac_final
            - BranchSide:      'pkcs5.c:79,16'
              BranchSideFuncs:
                - buffer_append
        - Branch String:   'pkcs5.c:70,3'
          Branch Sides:
            - BranchSide:      'pkcs5.c:71,21'
              BranchSideFuncs:
                - hmac_init
                - hmac_update
                - hmac_final
                - buffer_append
                - htonl
                - hmac_init
                - hmac_update
                - hmac_update
                - hmac_final
                - i_memcpy.11033
            - BranchSide:      'pkcs5.c:77,2'
              BranchSideFuncs:
                - buffer_append
                - htonl
                - hmac_init
                - hmac_update
                - hmac_update
                - hmac_final
                - i_memcpy.11033
                - hmac_init
                - hmac_update
                - hmac_final
        - Branch String:   'pkcs5.c:74,4'
          Branch Sides:
            - BranchSide:      'pkcs5.c:75,21'
              BranchSideFuncs:
                - buffer_append
                - htonl
                - hmac_init
                - hmac_update
                - hmac_update
                - hmac_final
                - i_memcpy.11033
                - hmac_init
                - hmac_update
                - hmac_final
            - BranchSide:      'pkcs5.c:76,3'
              BranchSideFuncs:
                - buffer_append
                - htonl
                - hmac_init
                - hmac_update
                - hmac_update
                - hmac_final
                - i_memcpy.11033
                - hmac_init
                - hmac_update
                - hmac_final
      Callsites:
        - Src:             'pkcs5.c:62,7'
          Dst:             htonl
        - Src:             'pkcs5.c:63,3'
          Dst:             hmac_init
        - Src:             'pkcs5.c:64,3'
          Dst:             hmac_update
        - Src:             'pkcs5.c:65,3'
          Dst:             hmac_update
        - Src:             'pkcs5.c:66,3'
          Dst:             hmac_final
        - Src:             'pkcs5.c:68,3'
          Dst:             i_memcpy
        - Src:             'pkcs5.c:71,4'
          Dst:             hmac_init
        - Src:             'pkcs5.c:72,4'
          Dst:             hmac_update
        - Src:             'pkcs5.c:73,4'
          Dst:             hmac_final
        - Src:             'pkcs5.c:79,2'
          Dst:             buffer_append
    - functionName:    pkcs5_pbkdf1
      functionSourceFile: '/src/dovecot/src/lib/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - hash
        - password
        - password_len
        - salt
        - salt_len
        - iter
        - length
        - result
      BBCount:         15
      ICount:          167
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs5.c:19,17'
          Branch Sides:
            - BranchSide:      'pkcs5.c:20,31'
              BranchSideFuncs: []
            - BranchSide:      'pkcs5.c:20,3'
              BranchSideFuncs:
                - buffer_append
        - Branch String:   'pkcs5.c:19,6'
          Branch Sides:
            - BranchSide:      'pkcs5.c:20,31'
              BranchSideFuncs: []
            - BranchSide:      'pkcs5.c:21,6'
              BranchSideFuncs:
                - buffer_append
        - Branch String:   'pkcs5.c:21,6'
          Branch Sides:
            - BranchSide:      'pkcs5.c:21,16'
              BranchSideFuncs: []
            - BranchSide:      'pkcs5.c:23,19'
              BranchSideFuncs:
                - buffer_append
        - Branch String:   'pkcs5.c:32,2'
          Branch Sides:
            - BranchSide:      'pkcs5.c:33,3'
              BranchSideFuncs:
                - buffer_append
            - BranchSide:      'pkcs5.c:38,16'
              BranchSideFuncs:
                - buffer_append
      Callsites:
        - Src:             'pkcs5.c:38,2'
          Dst:             buffer_append
    - functionName:    pkcs5_pbkdf
      functionSourceFile: '/src/dovecot/src/lib/pkcs5.c'
      linkageType:     externalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - mode
        - hash
        - password
        - password_len
        - salt
        - salt_len
        - iterations
        - dk_len
        - result
      BBCount:         9
      ICount:          82
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - i_unreached
        - pkcs5_pbkdf1
        - pkcs5_pbkdf2
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs5.c:90,6'
          Branch Sides:
            - BranchSide:      'pkcs5.c:91,23'
              BranchSideFuncs:
                - pkcs5_pbkdf1
            - BranchSide:      'pkcs5.c:93,11'
              BranchSideFuncs:
                - i_unreached
                - pkcs5_pbkdf2
      Callsites:
        - Src:             'pkcs5.c:91,10'
          Dst:             pkcs5_pbkdf1
        - Src:             'pkcs5.c:94,10'
          Dst:             pkcs5_pbkdf2
        - Src:             'pkcs5.c:96,2'
          Dst:             i_unreached
    - 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.11095
                - sha512_transf
                - sha512_transf
                - i_memcpy.11095
        - Branch String:   'sha2.c:524,12'
          Branch Sides:
            - BranchSide:      'sha2.c:524,28'
              BranchSideFuncs:
                - i_memcpy.11095
                - sha512_transf
                - sha512_transf
                - i_memcpy.11095
            - BranchSide:      'sha2.c:524,34'
              BranchSideFuncs:
                - i_memcpy.11095
                - sha512_transf
                - sha512_transf
                - i_memcpy.11095
        - 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.11095
      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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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.11095
                - sha384_transf
                - sha384_transf
                - i_memcpy.11095
        - Branch String:   'sha2.c:394,12'
          Branch Sides:
            - BranchSide:      'sha2.c:394,28'
              BranchSideFuncs:
                - i_memcpy.11095
                - sha384_transf
                - sha384_transf
                - i_memcpy.11095
            - BranchSide:      'sha2.c:394,34'
              BranchSideFuncs:
                - i_memcpy.11095
                - sha384_transf
                - sha384_transf
                - i_memcpy.11095
        - 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.11095
      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.11095
                - sha256_transf
                - sha256_transf
                - i_memcpy.11095
        - Branch String:   'sha2.c:264,12'
          Branch Sides:
            - BranchSide:      'sha2.c:264,28'
              BranchSideFuncs:
                - i_memcpy.11095
                - sha256_transf
                - sha256_transf
                - i_memcpy.11095
            - BranchSide:      'sha2.c:264,34'
              BranchSideFuncs:
                - i_memcpy.11095
                - sha256_transf
                - sha256_transf
                - i_memcpy.11095
        - 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.11095
      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: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,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:    hmac_hkdf
      functionSourceFile: '/src/dovecot/src/lib/hmac.c'
      linkageType:     externalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - method
        - salt
        - salt_len
        - ikm
        - ikm_len
        - info
        - info_len
        - okm_r
        - okm_len
      BBCount:         62
      ICount:          381
      EdgeCount:       72
      CyclomaticComplexity: 12
      functionsReached:
        - buffer_append
        - hmac_final
        - hmac_init
        - hmac_update
        - i_panic
        - safe_memset
      functionUses:    0
      BranchProfiles:
        - Branch String:   'hmac.c:105,2'
          Branch Sides:
            - BranchSide:      'hmac.c:105,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hmac.c:106,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'hmac.c:106,2'
          Branch Sides:
            - BranchSide:      'hmac.c:106,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hmac.c:109,18'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'hmac.c:116,2'
          Branch Sides:
            - BranchSide:      'hmac.c:116,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'hmac.c:116,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'hmac.c:116,2'
          Branch Sides:
            - BranchSide:      'hmac.c:116,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hmac.c:117,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'hmac.c:117,2'
          Branch Sides:
            - BranchSide:      'hmac.c:117,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'hmac.c:117,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'hmac.c:117,2'
          Branch Sides:
            - BranchSide:      'hmac.c:117,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hmac.c:119,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
                - i_panic
        - Branch String:   'hmac.c:119,2'
          Branch Sides:
            - BranchSide:      'hmac.c:119,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
                - i_panic
            - BranchSide:      'hmac.c:119,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
                - i_panic
        - Branch String:   'hmac.c:119,2'
          Branch Sides:
            - BranchSide:      'hmac.c:119,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hmac.c:120,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
        - Branch String:   'hmac.c:120,2'
          Branch Sides:
            - BranchSide:      'hmac.c:120,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
            - BranchSide:      'hmac.c:120,2'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
                - i_panic
        - Branch String:   'hmac.c:120,2'
          Branch Sides:
            - BranchSide:      'hmac.c:120,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hmac.c:124,6'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
        - Branch String:   'hmac.c:124,6'
          Branch Sides:
            - BranchSide:      'hmac.c:125,8'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
            - BranchSide:      'hmac.c:126,6'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
        - Branch String:   'hmac.c:126,6'
          Branch Sides:
            - BranchSide:      'hmac.c:127,8'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
            - BranchSide:      'hmac.c:130,22'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_final
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
        - Branch String:   'hmac.c:135,38'
          Branch Sides:
            - BranchSide:      'hmac.c:135,41'
              BranchSideFuncs:
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
            - BranchSide:      'hmac.c:135,2'
              BranchSideFuncs:
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - hmac_update.11191
        - Branch String:   'hmac.c:135,2'
          Branch Sides:
            - BranchSide:      'hmac.c:136,26'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - safe_memset
                - safe_memset
                - hmac_update.11191
            - BranchSide:      'hmac.c:151,2'
              BranchSideFuncs:
                - safe_memset
                - safe_memset
        - Branch String:   'hmac.c:138,7'
          Branch Sides:
            - BranchSide:      'hmac.c:139,10'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - safe_memset
                - safe_memset
                - hmac_update.11191
            - BranchSide:      'hmac.c:140,29'
              BranchSideFuncs:
                - hmac_init
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - safe_memset
                - safe_memset
                - hmac_update.11191
        - Branch String:   'hmac.c:141,7'
          Branch Sides:
            - BranchSide:      'hmac.c:142,32'
              BranchSideFuncs:
                - hmac_update.11191
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - safe_memset
                - safe_memset
                - hmac_init
            - BranchSide:      'hmac.c:143,26'
              BranchSideFuncs:
                - hmac_update.11191
                - hmac_update.11191
                - hmac_final
                - buffer_append
                - safe_memset
                - safe_memset
                - hmac_init
                - hmac_update.11191
      Callsites:
        - Src:             'hmac.c:105,2'
          Dst:             i_panic
        - Src:             'hmac.c:106,2'
          Dst:             i_panic
        - Src:             'hmac.c:116,2'
          Dst:             i_panic
        - Src:             'hmac.c:117,2'
          Dst:             i_panic
        - Src:             'hmac.c:119,2'
          Dst:             i_panic
        - Src:             'hmac.c:120,2'
          Dst:             i_panic
        - Src:             'hmac.c:130,2'
          Dst:             hmac_init
        - Src:             'hmac.c:131,2'
          Dst:             hmac_update
        - Src:             'hmac.c:132,2'
          Dst:             hmac_final
        - Src:             'hmac.c:140,3'
          Dst:             hmac_init
        - Src:             'hmac.c:142,4'
          Dst:             hmac_update
        - Src:             'hmac.c:143,3'
          Dst:             hmac_update
        - Src:             'hmac.c:144,3'
          Dst:             hmac_update
        - Src:             'hmac.c:146,3'
          Dst:             hmac_final
        - Src:             'hmac.c:147,3'
          Dst:             buffer_append
        - Src:             'hmac.c:151,2'
          Dst:             safe_memset
        - Src:             'hmac.c:152,2'
          Dst:             safe_memset
    - functionName:    hmac_init
      functionSourceFile: '/src/dovecot/src/lib/hmac.c'
      linkageType:     externalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - _ctx
        - key
        - key_len
        - meth
      BBCount:         18
      ICount:          257
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - i_panic
        - safe_memset
      functionUses:    5
      BranchProfiles:
        - Branch String:   'hmac.c:26,2'
          Branch Sides:
            - BranchSide:      'hmac.c:26,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hmac.c:28,14'
              BranchSideFuncs:
                - i_memcpy.11195
                - safe_memset
                - safe_memset
                - i_memcpy.11195
        - Branch String:   'hmac.c:30,6'
          Branch Sides:
            - BranchSide:      'hmac.c:31,3'
              BranchSideFuncs:
                - i_memcpy.11195
                - safe_memset
                - safe_memset
                - i_memcpy.11195
            - BranchSide:      'hmac.c:38,6'
              BranchSideFuncs:
                - i_memcpy.11195
                - safe_memset
                - safe_memset
                - i_memcpy.11195
        - Branch String:   'hmac.c:38,6'
          Branch Sides:
            - BranchSide:      'hmac.c:39,3'
              BranchSideFuncs:
                - i_memcpy.11195
                - i_memcpy.11195
                - safe_memset
                - safe_memset
            - BranchSide:      'hmac.c:40,18'
              BranchSideFuncs:
                - i_memcpy.11195
                - safe_memset
                - safe_memset
        - Branch String:   'hmac.c:43,2'
          Branch Sides:
            - BranchSide:      'hmac.c:44,10'
              BranchSideFuncs:
                - safe_memset
                - safe_memset
            - BranchSide:      'hmac.c:48,2'
              BranchSideFuncs:
                - safe_memset
                - safe_memset
      Callsites:
        - Src:             'hmac.c:26,2'
          Dst:             i_panic
        - Src:             'hmac.c:39,3'
          Dst:             i_memcpy
        - Src:             'hmac.c:41,2'
          Dst:             i_memcpy
        - Src:             'hmac.c:53,2'
          Dst:             safe_memset
        - Src:             'hmac.c:54,2'
          Dst:             safe_memset
    - functionName:    hmac_update
      functionSourceFile: '/src/dovecot/src/lib/./hmac.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - _ctx
        - data
        - size
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmac_final
      functionSourceFile: '/src/dovecot/src/lib/hmac.c'
      linkageType:     externalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _ctx
        - digest
      BBCount:         3
      ICount:          64
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      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:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:80,2'
          Branch Sides:
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:80,2'
          Dst:             i_panic
    - functionName:    t_hmac_str
      functionSourceFile: '/src/dovecot/src/lib/hmac.c'
      linkageType:     externalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - meth
        - key
        - key_len
        - data
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - t_hmac_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hmac.c:96,47'
          Dst:             strlen
        - Src:             'hmac.c:96,9'
          Dst:             t_hmac_data
    - functionName:    t_hmac_data
      functionSourceFile: '/src/dovecot/src/lib/hmac.c'
      linkageType:     externalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - meth
        - key
        - key_len
        - data
        - data_len
      BBCount:         24
      ICount:          142
      EdgeCount:       27
      CyclomaticComplexity: 5
      functionsReached:
        - buffer_create_dynamic
        - buffer_get_space_unsafe
        - hmac_final
        - hmac_init
        - hmac_update
        - i_panic
        - pool_datastack_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'hmac.c:72,2'
          Branch Sides:
            - BranchSide:      'hmac.c:72,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hmac.c:73,2'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - hmac_init
                - buffer_get_space_unsafe
                - hmac_final
                - hmac_update.11191
                - i_panic
                - i_panic
        - Branch String:   'hmac.c:73,2'
          Branch Sides:
            - BranchSide:      'hmac.c:73,2'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - hmac_init
                - buffer_get_space_unsafe
                - hmac_final
                - hmac_update.11191
                - i_panic
                - i_panic
            - BranchSide:      'hmac.c:73,2'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - hmac_init
                - buffer_get_space_unsafe
                - hmac_final
                - hmac_update.11191
                - i_panic
                - i_panic
        - Branch String:   'hmac.c:73,2'
          Branch Sides:
            - BranchSide:      'hmac.c:73,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hmac.c:74,2'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - hmac_init
                - buffer_get_space_unsafe
                - hmac_final
                - hmac_update.11191
                - i_panic
        - Branch String:   'hmac.c:74,2'
          Branch Sides:
            - BranchSide:      'hmac.c:74,2'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - hmac_init
                - buffer_get_space_unsafe
                - hmac_final
                - hmac_update.11191
                - i_panic
            - BranchSide:      'hmac.c:74,2'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - hmac_init
                - buffer_get_space_unsafe
                - hmac_final
                - hmac_update.11191
                - i_panic
        - Branch String:   'hmac.c:74,2'
          Branch Sides:
            - BranchSide:      'hmac.c:74,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hmac.c:76,18'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - hmac_init
                - buffer_get_space_unsafe
                - hmac_final
                - hmac_update.11191
        - Branch String:   'hmac.c:78,6'
          Branch Sides:
            - BranchSide:      'hmac.c:78,6'
              BranchSideFuncs:
                - hmac_update.11191
                - buffer_get_space_unsafe
                - hmac_final
            - BranchSide:      'hmac.c:79,21'
              BranchSideFuncs:
                - hmac_update.11191
                - buffer_get_space_unsafe
                - hmac_final
      Callsites:
        - Src:             'hmac.c:72,2'
          Dst:             i_panic
        - Src:             'hmac.c:73,2'
          Dst:             i_panic
        - Src:             'hmac.c:74,2'
          Dst:             i_panic
        - Src:             'hmac.c:76,18'
          Dst:             pool_datastack_create
        - Src:             'hmac.c:76,18'
          Dst:             buffer_create_dynamic
        - Src:             'hmac.c:77,2'
          Dst:             hmac_init
        - Src:             'hmac.c:79,3'
          Dst:             hmac_update
        - Src:             'hmac.c:80,23'
          Dst:             buffer_get_space_unsafe
        - Src:             'hmac.c:81,2'
          Dst:             hmac_final
    - functionName:    t_hmac_buffer
      functionSourceFile: '/src/dovecot/src/lib/hmac.c'
      linkageType:     externalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - meth
        - key
        - key_len
        - data
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_hmac_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hmac.c:89,9'
          Dst:             t_hmac_data
...
