---
Fuzzer filename: '/src/fuzz_daemon_connection.cpp'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    __gxx_personality_v0
      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:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __clang_call_terminate
      functionSourceFile: ''
      linkageType:     WeakODRLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          3
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - __cxa_begin_catch
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __cxa_begin_catch
      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:    __cxa_allocate_exception
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _ZNSt20bad_array_new_lengthC1Ev
      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:    _ZNSt20bad_array_new_lengthD1Ev
      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:    __cxa_throw
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _ZNSt12length_errorC2B8ne220000EPKc
      functionSourceFile: '/usr/local/bin/../include/c++/v1/stdexcept'
      linkageType:     WeakODRLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _ZNSt11logic_errorC2EPKc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/local/bin/../include/c++/v1/stdexcept:154,66'
          Dst:             _ZNSt11logic_errorC2EPKc
    - functionName:    _ZNSt11logic_errorC2EPKc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _ZNSt12length_errorD1Ev
      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:    __cxa_free_exception
      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:    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:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/fuzz_daemon_connection.cpp'
      linkageType:     externalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         63
      ICount:          318
      EdgeCount:       119
      CyclomaticComplexity: 58
      functionsReached:
        - _Z13final_cleanupR14MHD_ConnectionR10MHD_Daemon
        - _Z19is_post_parse_readyRK14MHD_Connection
        - _Z22init_connection_bufferR18FuzzedDataProviderR14MHD_Connection
        - _Z22init_daemon_connectionR18FuzzedDataProviderR10MHD_DaemonR14MHD_Connection
        - _Z24prepare_body_and_processR14MHD_ConnectionRNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEmb
        - _Z25prepare_headers_and_parseR14MHD_Connectionm
        - _Z26init_parsing_configurationR18FuzzedDataProviderR14MHD_Connection
        - mhd_conn_event_loop_state_update
        - mhd_conn_tls_check
        - mhd_connection_set_cork_state
        - mhd_connection_set_nodelay_state
        - mhd_pool_create
        - mhd_pool_destroy
        - mhd_stream_call_app_request_cb
        - mhd_stream_process_req_recv_finished
      functionUses:    0
      BranchProfiles:
        - Branch String:   'fuzz_daemon_connection.cpp:79,5'
          Branch Sides:    []
      Callsites:
        - Src:             'fuzz_daemon_connection.cpp:48,3'
          Dst:             mhd_pool_destroy
        - Src:             'fuzz_daemon_connection.cpp:49,12'
          Dst:             mhd_pool_create
        - Src:             'fuzz_daemon_connection.cpp:54,3'
          Dst:             _Z22init_daemon_connectionR18FuzzedDataProviderR10MHD_DaemonR14MHD_Connection
        - Src:             'fuzz_daemon_connection.cpp:55,3'
          Dst:             _Z26init_parsing_configurationR18FuzzedDataProviderR14MHD_Connection
        - Src:             'fuzz_daemon_connection.cpp:56,3'
          Dst:             _Z22init_connection_bufferR18FuzzedDataProviderR14MHD_Connection
        - Src:             'fuzz_daemon_connection.cpp:57,3'
          Dst:             _Z25prepare_headers_and_parseR14MHD_Connectionm
        - Src:             'fuzz_daemon_connection.cpp:76,3'
          Dst:             _Z24prepare_body_and_processR14MHD_ConnectionRNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEmb
        - Src:             'fuzz_daemon_connection.cpp:81,9'
          Dst:             mhd_conn_event_loop_state_update
        - Src:             'fuzz_daemon_connection.cpp:87,11'
          Dst:             mhd_stream_call_app_request_cb
        - Src:             'fuzz_daemon_connection.cpp:94,13'
          Dst:             _Z19is_post_parse_readyRK14MHD_Connection
        - Src:             'fuzz_daemon_connection.cpp:95,11'
          Dst:             mhd_stream_process_req_recv_finished
        - Src:             'fuzz_daemon_connection.cpp:100,9'
          Dst:             mhd_conn_tls_check
        - Src:             'fuzz_daemon_connection.cpp:104,9'
          Dst:             mhd_connection_set_nodelay_state
        - Src:             'fuzz_daemon_connection.cpp:108,9'
          Dst:             mhd_connection_set_cork_state
        - Src:             'fuzz_daemon_connection.cpp:114,3'
          Dst:             _Z13final_cleanupR14MHD_ConnectionR10MHD_Daemon
    - functionName:    LLVMFuzzerInitialize
      functionSourceFile: '/src/fuzz_daemon_connection.cpp'
      linkageType:     externalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _Z19destroy_global_poolv
        - atexit
        - mhd_pool_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz_daemon_connection.cpp:35,12'
          Dst:             mhd_pool_create
        - Src:             'fuzz_daemon_connection.cpp:36,3'
          Dst:             atexit
        - Src:             'fuzz_daemon_connection.cpp:36,3'
          Dst:             _Z19destroy_global_poolv
    - 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:    _GLOBAL__sub_I_connection_helper.cpp
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 0
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __cxx_global_var_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'connection_helper.cpp:0,0'
          Dst:             __cxx_global_var_init
        - Src:             'connection_helper.cpp:0,0'
          Dst:             __cxx_global_var_init
    - functionName:    __cxx_global_var_init
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 0
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __cxa_atexit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection_helper.cpp:0,0'
          Dst:             __cxa_atexit
    - functionName:    __cxx_global_var_init
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 0
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __cxa_atexit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection_helper.cpp:0,0'
          Dst:             __cxa_atexit
    - functionName:    __cxa_atexit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _ZZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC1B8ne220000EOS5_ENKUlRS5_E_clES7_
      functionSourceFile: '/usr/local/bin/../include/c++/v1/string'
      linkageType:     InternalLinkage
      functionLinenumber: 1020
      functionLinenumberEnd: 1023
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _Z13final_cleanupR14MHD_ConnectionR10MHD_Daemon
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 506
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _Z22clear_post_parse_readyRK14MHD_Connection
        - mhd_daemon_free_lbuf
        - mhd_stream_process_req_recv_finished
        - mhd_stream_release_write_buffer
        - mhd_stream_switch_from_recv_to_send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection_helper.cpp:508,3'
          Dst:             mhd_stream_switch_from_recv_to_send
        - Src:             'connection_helper.cpp:509,3'
          Dst:             mhd_stream_process_req_recv_finished
        - Src:             'connection_helper.cpp:510,3'
          Dst:             mhd_stream_release_write_buffer
        - Src:             'connection_helper.cpp:514,5'
          Dst:             mhd_daemon_free_lbuf
        - Src:             'connection_helper.cpp:518,3'
          Dst:             _Z22clear_post_parse_readyRK14MHD_Connection
    - functionName:    _Z22clear_post_parse_readyRK14MHD_Connection
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    '_ZZ24prepare_body_and_processR14MHD_ConnectionRNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEmbENK3$_0clEPKcm'
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - snprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'connection_helper.cpp:433,23'
          Dst:             snprintf
    - functionName:    snprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _Z24prepare_body_and_processR14MHD_ConnectionRNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEmb
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 406
      functionLinenumberEnd: 504
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         65
      ICount:          394
      EdgeCount:       110
      CyclomaticComplexity: 47
      functionsReached:
        - _Z20ensure_lbuf_capacityR14MHD_Connectionm
        - _Z21mark_post_parse_readyR14MHD_Connection
        - '_ZZ24prepare_body_and_processR14MHD_ConnectionRNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEmbENK3$_0clEPKcm'
        - mhd_pool_try_alloc
        - mhd_stream_post_parse
        - mhd_stream_prepare_for_post_parse
        - mhd_stream_process_request_body
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection_helper.cpp:422,5'
          Dst:             mhd_stream_prepare_for_post_parse
        - Src:             'connection_helper.cpp:423,5'
          Dst:             mhd_stream_post_parse
        - Src:             'connection_helper.cpp:424,5'
          Dst:             _Z21mark_post_parse_readyR14MHD_Connection
        - Src:             'connection_helper.cpp:443,9'
          Dst:             '_ZZ24prepare_body_and_processR14MHD_ConnectionRNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEmbENK3$_0clEPKcm'
        - Src:             'connection_helper.cpp:446,9'
          Dst:             '_ZZ24prepare_body_and_processR14MHD_ConnectionRNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEmbENK3$_0clEPKcm'
        - Src:             'connection_helper.cpp:447,9'
          Dst:             '_ZZ24prepare_body_and_processR14MHD_ConnectionRNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEmbENK3$_0clEPKcm'
        - Src:             'connection_helper.cpp:469,26'
          Dst:             mhd_pool_try_alloc
        - Src:             'connection_helper.cpp:482,11'
          Dst:             _Z20ensure_lbuf_capacityR14MHD_Connectionm
        - Src:             'connection_helper.cpp:487,9'
          Dst:             mhd_stream_prepare_for_post_parse
        - Src:             'connection_helper.cpp:488,9'
          Dst:             mhd_stream_process_request_body
        - Src:             'connection_helper.cpp:489,9'
          Dst:             _Z21mark_post_parse_readyR14MHD_Connection
        - Src:             'connection_helper.cpp:493,9'
          Dst:             mhd_stream_prepare_for_post_parse
        - Src:             'connection_helper.cpp:494,9'
          Dst:             mhd_stream_post_parse
        - Src:             'connection_helper.cpp:495,9'
          Dst:             _Z21mark_post_parse_readyR14MHD_Connection
        - Src:             'connection_helper.cpp:499,7'
          Dst:             mhd_stream_prepare_for_post_parse
        - Src:             'connection_helper.cpp:500,7'
          Dst:             mhd_stream_post_parse
        - Src:             'connection_helper.cpp:501,7'
          Dst:             _Z21mark_post_parse_readyR14MHD_Connection
    - functionName:    _Z21mark_post_parse_readyR14MHD_Connection
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _Z20ensure_lbuf_capacityR14MHD_Connectionm
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          134
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - mhd_daemon_extend_lbuf_up_to
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection_helper.cpp:110,5'
          Dst:             mhd_daemon_extend_lbuf_up_to
    - functionName:    _ZL22destroy_error_response14MHD_Connection
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MHD_response_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'connection_helper.cpp:63,5'
          Dst:             MHD_response_destroy
    - functionName:    '_ZZ25prepare_headers_and_parseR14MHD_ConnectionmENK3$_0clEPKcRKNSt3__112basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEE'
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          93
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_stream_add_field
        - mhd_stream_alloc_memory
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'connection_helper.cpp:353,25'
          Dst:             strlen
        - Src:             'connection_helper.cpp:355,37'
          Dst:             mhd_stream_alloc_memory
        - Src:             'connection_helper.cpp:356,37'
          Dst:             mhd_stream_alloc_memory
        - Src:             'connection_helper.cpp:368,5'
          Dst:             mhd_stream_add_field
    - functionName:    _Z25prepare_headers_and_parseR14MHD_Connectionm
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 350
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          224
      EdgeCount:       39
      CyclomaticComplexity: 4
      functionsReached:
        - _ZL22destroy_error_response14MHD_Connection
        - '_ZZ25prepare_headers_and_parseR14MHD_ConnectionmENK3$_0clEPKcRKNSt3__112basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEE'
        - mhd_stream_get_request_line
        - mhd_stream_parse_request_headers
        - mhd_stream_switch_to_rq_headers_proc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection_helper.cpp:370,3'
          Dst:             '_ZZ25prepare_headers_and_parseR14MHD_ConnectionmENK3$_0clEPKcRKNSt3__112basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEE'
        - Src:             'connection_helper.cpp:372,5'
          Dst:             '_ZZ25prepare_headers_and_parseR14MHD_ConnectionmENK3$_0clEPKcRKNSt3__112basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEE'
        - Src:             'connection_helper.cpp:375,5'
          Dst:             '_ZZ25prepare_headers_and_parseR14MHD_ConnectionmENK3$_0clEPKcRKNSt3__112basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEE'
        - Src:             'connection_helper.cpp:388,5'
          Dst:             '_ZZ25prepare_headers_and_parseR14MHD_ConnectionmENK3$_0clEPKcRKNSt3__112basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEE'
        - Src:             'connection_helper.cpp:393,19'
          Dst:             mhd_stream_get_request_line
        - Src:             'connection_helper.cpp:394,7'
          Dst:             _ZL22destroy_error_response14MHD_Connection
        - Src:             'connection_helper.cpp:398,5'
          Dst:             mhd_stream_switch_to_rq_headers_proc
        - Src:             'connection_helper.cpp:400,3'
          Dst:             mhd_stream_parse_request_headers
        - Src:             'connection_helper.cpp:403,3'
          Dst:             _ZL22destroy_error_response14MHD_Connection
    - functionName:    _Z26init_parsing_configurationR18FuzzedDataProviderR14MHD_Connection
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          124
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _Z12dummy_readerP11MHD_RequestPvPK10MHD_StringPK18MHD_StringNullableS7_S7_mPKvm8MHD_Bool
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      'N/A'
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _Z10dummy_doneP11MHD_RequestPv19MHD_PostParseResult
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _ZL17pick_http_versionR18FuzzedDataProvider
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          101
      EdgeCount:       34
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection_helper.cpp:82,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    _ZL11pick_methodR18FuzzedDataProvider
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _Z22init_connection_bufferR18FuzzedDataProviderR14MHD_Connection
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         293
      ICount:          1461
      EdgeCount:       488
      CyclomaticComplexity: 197
      functionsReached:
        - _ZL11pick_methodR18FuzzedDataProvider
        - _ZL17pick_http_versionR18FuzzedDataProvider
        - '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - mhd_pool_try_alloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection_helper.cpp:246,5'
          Branch Sides:    []
        - Branch String:   'connection_helper.cpp:262,3'
          Branch Sides:    []
      Callsites:
        - Src:             'connection_helper.cpp:190,34'
          Dst:             mhd_pool_try_alloc
        - Src:             'connection_helper.cpp:200,30'
          Dst:             _ZL11pick_methodR18FuzzedDataProvider
        - Src:             'connection_helper.cpp:201,31'
          Dst:             _ZL17pick_http_versionR18FuzzedDataProvider
        - Src:             'connection_helper.cpp:217,61'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:229,51'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:231,51'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:233,50'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:242,46'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:253,39'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:258,88'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:265,83'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:268,67'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:271,44'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:277,85'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:280,91'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:288,44'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:292,55'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:296,41'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:298,41'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:301,88'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:305,33'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:306,21'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
        - Src:             'connection_helper.cpp:306,29'
          Dst:             '_ZZ22init_connection_bufferR18FuzzedDataProviderR14MHD_ConnectionENK3$_0clEb'
    - functionName:    _ZL16dummy_request_cbPvP11MHD_RequestPK10MHD_String15MHD_HTTP_Methodm
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _Z22init_daemon_connectionR18FuzzedDataProviderR10MHD_DaemonR14MHD_Connection
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          414
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _Z19is_post_parse_readyRK14MHD_Connection
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _Z19destroy_global_poolv
      functionSourceFile: '/src/connection_helper.cpp'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mhd_pool_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection_helper.cpp:41,17'
          Dst:             mhd_pool_destroy
    - functionName:    mhd_pool_reset
      functionSourceFile: '/src/mhd2/src/mhd2/mempool_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          103
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_pool_deallocate
      functionSourceFile: '/src/mhd2/src/mhd2/mempool_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          122
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_pool_reallocate
      functionSourceFile: '/src/mhd2/src/mhd2/mempool_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 599
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          232
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_pool_try_alloc
      functionSourceFile: '/src/mhd2/src/mhd2/mempool_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          107
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_pool_is_resizable_inplace
      functionSourceFile: '/src/mhd2/src/mhd2/mempool_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          45
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_pool_allocate
      functionSourceFile: '/src/mhd2/src/mhd2/mempool_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          101
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_pool_get_free
      functionSourceFile: '/src/mhd2/src/mhd2/mempool_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_pool_destroy
      functionSourceFile: '/src/mhd2/src/mhd2/mempool_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - munmap
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'mempool_funcs.c:395,5'
          Dst:             munmap
    - 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:    mhd_pool_create
      functionSourceFile: '/src/mhd2/src/mhd2/mempool_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          152
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - calloc
        - mmap
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'mempool_funcs.c:341,32'
          Dst:             mmap
        - Src:             'mempool_funcs.c:364,34'
          Dst:             calloc
    - 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:    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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_init_mem_pools
      functionSourceFile: '/src/mhd2/src/mhd2/mempool_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sysconf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mempool_funcs.c:253,12'
          Dst:             sysconf
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_iov_emu
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1605
      functionLinenumberEnd: 1659
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          230
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - mhd_send_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:1621,11'
          Dst:             mhd_send_data
    - functionName:    mhd_send_data
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 904
      functionLinenumberEnd: 922
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_send_plain
        - mhd_send_tls
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:910,12'
          Dst:             mhd_send_tls
        - Src:             'mhd_send.c:917,10'
          Dst:             mhd_send_plain
    - functionName:    mhd_send_tls
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 854
      functionLinenumberEnd: 891
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          115
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - mhd_tls_gnu_conn_send
        - post_send_setopt
        - pre_send_setopt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:862,3'
          Dst:             pre_send_setopt
        - Src:             'mhd_send.c:864,9'
          Dst:             mhd_tls_gnu_conn_send
        - Src:             'mhd_send.c:888,5'
          Dst:             post_send_setopt
    - functionName:    mhd_send_plain
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 781
      functionLinenumberEnd: 841
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          156
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - mhd_socket_error_get_from_sys_err
        - post_send_setopt
        - pre_send_setopt
        - send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:795,3'
          Dst:             pre_send_setopt
        - Src:             'mhd_send.c:797,9'
          Dst:             send
        - Src:             'mhd_send.c:812,46'
          Dst:             __errno_location
        - Src:             'mhd_send.c:812,11'
          Dst:             mhd_socket_error_get_from_sys_err
        - Src:             'mhd_send.c:838,5'
          Dst:             post_send_setopt
    - functionName:    pre_send_setopt
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 554
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          88
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - mhd_connection_set_cork_state
        - mhd_connection_set_nodelay_state
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:353,9'
          Dst:             mhd_connection_set_cork_state
        - Src:             'mhd_send.c:366,5'
          Dst:             mhd_connection_set_nodelay_state
    - functionName:    send
      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:    __errno_location
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    post_send_setopt
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 602
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          132
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - mhd_connection_set_cork_state
        - mhd_connection_set_nodelay_state
        - mhd_logger
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:649,9'
          Dst:             mhd_connection_set_nodelay_state
        - Src:             'mhd_send.c:653,9'
          Dst:             mhd_connection_set_cork_state
        - Src:             'mhd_send.c:662,9'
          Dst:             mhd_connection_set_cork_state
        - Src:             'mhd_send.c:666,9'
          Dst:             mhd_connection_set_nodelay_state
        - Src:             'mhd_send.c:764,3'
          Dst:             mhd_logger
    - functionName:    mhd_connection_set_nodelay_state
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          114
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - mhd_logger
        - setsockopt
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:227,12'
          Dst:             setsockopt
        - Src:             'mhd_send.c:237,14'
          Dst:             __errno_location
        - Src:             'mhd_send.c:247,5'
          Dst:             mhd_logger
    - functionName:    mhd_connection_set_cork_state
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          114
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - mhd_logger
        - setsockopt
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:270,12'
          Dst:             setsockopt
        - Src:             'mhd_send.c:280,14'
          Dst:             __errno_location
        - Src:             'mhd_send.c:291,5'
          Dst:             mhd_logger
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_iov_nontls
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1433
      functionLinenumberEnd: 1574
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          295
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - mhd_socket_error_get_from_sys_err
        - post_send_setopt
        - pre_send_setopt
        - sendmsg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:1474,3'
          Dst:             pre_send_setopt
        - Src:             'mhd_send.c:1475,9'
          Dst:             sendmsg
        - Src:             'mhd_send.c:1521,46'
          Dst:             __errno_location
        - Src:             'mhd_send.c:1521,11'
          Dst:             mhd_socket_error_get_from_sys_err
        - Src:             'mhd_send.c:1553,7'
          Dst:             post_send_setopt
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_send_iovec
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1671
      functionLinenumberEnd: 1702
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - send_iov_emu
        - send_iov_nontls
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:1694,10'
          Dst:             send_iov_nontls
        - Src:             'mhd_send.c:1699,10'
          Dst:             send_iov_emu
    - functionName:    mhd_send_sendfile
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1191
      functionLinenumberEnd: 1404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         55
      ICount:          372
      EdgeCount:       75
      CyclomaticComplexity: 22
      functionsReached:
        - __errno_location
        - mhd_socket_error_get_from_sys_err
        - post_send_setopt
        - pre_send_setopt
        - sendfile64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:1243,3'
          Dst:             pre_send_setopt
        - Src:             'mhd_send.c:1258,11'
          Dst:             sendfile64
        - Src:             'mhd_send.c:1265,26'
          Dst:             __errno_location
        - Src:             'mhd_send.c:1278,15'
          Dst:             mhd_socket_error_get_from_sys_err
        - Src:             'mhd_send.c:1400,5'
          Dst:             post_send_setopt
    - functionName:    sendfile64
      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:    mhd_send_hdr_and_body
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 936
      functionLinenumberEnd: 1176
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
        - size_t
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         85
      ICount:          527
      EdgeCount:       115
      CyclomaticComplexity: 32
      functionsReached:
        - __errno_location
        - mhd_send_data
        - mhd_socket_error_get_from_sys_err
        - post_send_setopt
        - pre_send_setopt
        - sendmsg
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:1010,11'
          Dst:             mhd_send_data
        - Src:             'mhd_send.c:1027,13'
          Dst:             mhd_send_data
        - Src:             'mhd_send.c:1063,3'
          Dst:             pre_send_setopt
        - Src:             'mhd_send.c:1087,9'
          Dst:             sendmsg
        - Src:             'mhd_send.c:1124,46'
          Dst:             __errno_location
        - Src:             'mhd_send.c:1124,11'
          Dst:             mhd_socket_error_get_from_sys_err
        - Src:             'mhd_send.c:1152,5'
          Dst:             post_send_setopt
        - Src:             'mhd_send.c:1166,5'
          Dst:             post_send_setopt
    - functionName:    iov_max_init_
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sysconf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:173,14'
          Dst:             sysconf
    - functionName:    mhd_send_init_once
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_send.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - iov_max_init_
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_send.c:211,3'
          Dst:             iov_max_init_
    - functionName:    mhd_logger
      functionSourceFile: '/src/mhd2/src/mhd2/daemon_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    63
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_daemon_free_lbuf
      functionSourceFile: '/src/mhd2/src/mhd2/daemon_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mhd_daemon_reclaim_lbuf
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon_funcs.c:271,3'
          Dst:             mhd_daemon_reclaim_lbuf
    - functionName:    mhd_daemon_reclaim_lbuf
      functionSourceFile: '/src/mhd2/src/mhd2/daemon_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_daemon_get_master_daemon
        - mhd_panic
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon_funcs.c:143,38'
          Dst:             mhd_daemon_get_master_daemon
        - Src:             'daemon_funcs.c:145,3'
          Dst:             pthread_mutex_lock
        - Src:             'daemon_funcs.c:145,3'
          Dst:             mhd_panic
        - Src:             'daemon_funcs.c:147,3'
          Dst:             pthread_mutex_unlock
        - Src:             'daemon_funcs.c:147,3'
          Dst:             mhd_panic
    - functionName:    mhd_daemon_get_master_daemon
      functionSourceFile: '/src/mhd2/src/mhd2/daemon_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_mutex_lock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_mutex_unlock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_daemon_claim_lbuf_up_to
      functionSourceFile: '/src/mhd2/src/mhd2/daemon_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          117
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - mhd_daemon_get_master_daemon
        - mhd_panic
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon_funcs.c:118,38'
          Dst:             mhd_daemon_get_master_daemon
        - Src:             'daemon_funcs.c:123,3'
          Dst:             pthread_mutex_lock
        - Src:             'daemon_funcs.c:123,3'
          Dst:             mhd_panic
        - Src:             'daemon_funcs.c:134,3'
          Dst:             pthread_mutex_unlock
        - Src:             'daemon_funcs.c:134,3'
          Dst:             mhd_panic
    - functionName:    mhd_daemon_extend_lbuf_up_to
      functionSourceFile: '/src/mhd2/src/mhd2/daemon_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          160
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - mhd_daemon_claim_lbuf_up_to
        - mhd_daemon_reclaim_lbuf
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon_funcs.c:217,15'
          Dst:             mhd_daemon_claim_lbuf_up_to
        - Src:             'daemon_funcs.c:228,7'
          Dst:             mhd_daemon_reclaim_lbuf
        - Src:             'daemon_funcs.c:236,34'
          Dst:             realloc
        - Src:             'daemon_funcs.c:242,7'
          Dst:             mhd_daemon_reclaim_lbuf
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_daemon_grow_lbuf
      functionSourceFile: '/src/mhd2/src/mhd2/daemon_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_daemon_claim_lbuf
        - mhd_daemon_reclaim_lbuf
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon_funcs.c:185,9'
          Dst:             mhd_daemon_claim_lbuf
        - Src:             'daemon_funcs.c:191,17'
          Dst:             realloc
        - Src:             'daemon_funcs.c:194,5'
          Dst:             mhd_daemon_reclaim_lbuf
    - functionName:    mhd_daemon_claim_lbuf
      functionSourceFile: '/src/mhd2/src/mhd2/daemon_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          107
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - mhd_daemon_get_master_daemon
        - mhd_panic
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon_funcs.c:95,38'
          Dst:             mhd_daemon_get_master_daemon
        - Src:             'daemon_funcs.c:101,3'
          Dst:             pthread_mutex_lock
        - Src:             'daemon_funcs.c:101,3'
          Dst:             mhd_panic
        - Src:             'daemon_funcs.c:107,3'
          Dst:             pthread_mutex_unlock
        - Src:             'daemon_funcs.c:107,3'
          Dst:             mhd_panic
    - functionName:    mhd_daemon_get_lbuf
      functionSourceFile: '/src/mhd2/src/mhd2/daemon_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          64
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_daemon_claim_lbuf
        - mhd_daemon_reclaim_lbuf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon_funcs.c:157,9'
          Dst:             mhd_daemon_claim_lbuf
        - Src:             'daemon_funcs.c:167,5'
          Dst:             mhd_daemon_reclaim_lbuf
    - functionName:    mhd_daemon_trigger_itc
      functionSourceFile: '/src/mhd2/src/mhd2/daemon_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - mhd_logger
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon_funcs.c:76,9'
          Dst:             write
        - Src:             'daemon_funcs.c:76,9'
          Dst:             __errno_location
        - Src:             'daemon_funcs.c:78,5'
          Dst:             mhd_logger
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_stream_add_field
      functionSourceFile: '/src/mhd2/src/mhd2/request_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_stream_add_field_nullable
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'request_funcs.c:88,10'
          Dst:             mhd_stream_add_field_nullable
    - functionName:    mhd_stream_add_field_nullable
      functionSourceFile: '/src/mhd2/src/mhd2/request_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          107
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_stream_alloc_memory
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'request_funcs.c:62,7'
          Dst:             mhd_stream_alloc_memory
    - functionName:    MHD_response_destroy
      functionSourceFile: '/src/mhd2/src/mhd2/response_destroy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_panic
        - mhd_response_dec_use_count
        - response_full_deinit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'response_destroy.c:128,5'
          Dst:             mhd_panic
        - Src:             'response_destroy.c:140,5'
          Dst:             response_full_deinit
        - Src:             'response_destroy.c:144,3'
          Dst:             mhd_response_dec_use_count
    - functionName:    response_full_deinit
      functionSourceFile: '/src/mhd2/src/mhd2/response_destroy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_response_deinit_content_data
        - mhd_response_deinit_reusable
        - mhd_response_remove_all_headers
        - mhd_response_remove_auth_digest_headers
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'response_destroy.c:78,3'
          Dst:             mhd_response_remove_auth_digest_headers
        - Src:             'response_destroy.c:80,3'
          Dst:             mhd_response_remove_all_headers
        - Src:             'response_destroy.c:84,5'
          Dst:             mhd_response_deinit_reusable
        - Src:             'response_destroy.c:85,3'
          Dst:             mhd_response_deinit_content_data
    - functionName:    mhd_response_dec_use_count
      functionSourceFile: '/src/mhd2/src/mhd2/response_destroy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_panic
        - response_full_deinit
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'response_destroy.c:97,5'
          Dst:             mhd_panic
        - Src:             'response_destroy.c:105,3'
          Dst:             response_full_deinit
    - functionName:    mhd_response_inc_use_count
      functionSourceFile: '/src/mhd2/src/mhd2/response_destroy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          53
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_panic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'response_destroy.c:114,5'
          Dst:             mhd_panic
    - functionName:    response_set_properties
      functionSourceFile: '/src/mhd2/src/mhd2/response_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          155
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_response_check_frozen_freeze
      functionSourceFile: '/src/mhd2/src/mhd2/response_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          101
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - mhd_panic
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - response_set_properties
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'response_funcs.c:138,5'
          Dst:             pthread_mutex_lock
        - Src:             'response_funcs.c:138,5'
          Dst:             mhd_panic
        - Src:             'response_funcs.c:148,5'
          Dst:             response_set_properties
        - Src:             'response_funcs.c:152,5'
          Dst:             pthread_mutex_unlock
        - Src:             'response_funcs.c:152,5'
          Dst:             mhd_panic
    - functionName:    mhd_response_deinit_reusable
      functionSourceFile: '/src/mhd2/src/mhd2/response_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          34
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - mhd_panic
        - pthread_mutex_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'response_funcs.c:88,3'
          Dst:             pthread_mutex_destroy
        - Src:             'response_funcs.c:88,3'
          Dst:             mhd_panic
    - functionName:    pthread_mutex_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    response_make_reusable
      functionSourceFile: '/src/mhd2/src/mhd2/response_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - pthread_mutex_destroy
        - pthread_mutex_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'response_funcs.c:67,7'
          Dst:             pthread_mutex_init
        - Src:             'response_funcs.c:74,12'
          Dst:             pthread_mutex_destroy
    - functionName:    pthread_mutex_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_conn_pre_clean
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1130
      functionLinenumberEnd: 1170
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          109
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_conn_pre_clean_part1
        - mhd_pool_destroy
        - mhd_response_dec_use_count
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:1143,3'
          Dst:             mhd_conn_pre_clean_part1
        - Src:             'stream_funcs.c:1151,5'
          Dst:             mhd_response_dec_use_count
        - Src:             'stream_funcs.c:1163,3'
          Dst:             mhd_pool_destroy
    - functionName:    mhd_conn_pre_clean_part1
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1084
      functionLinenumberEnd: 1124
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          160
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - epoll_ctl
        - mhd_conn_mark_unready
        - mhd_daemon_free_lbuf
        - mhd_log_extr_event_dereg_failed
        - mhd_logger
        - mhd_stream_call_dcc_cleanup_if_needed
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:1086,3'
          Dst:             mhd_conn_mark_unready
        - Src:             'stream_funcs.c:1088,3'
          Dst:             mhd_stream_call_dcc_cleanup_if_needed
        - Src:             'stream_funcs.c:1090,5'
          Dst:             mhd_daemon_free_lbuf
        - Src:             'stream_funcs.c:1104,9'
          Dst:             mhd_log_extr_event_dereg_failed
        - Src:             'stream_funcs.c:1114,14'
          Dst:             epoll_ctl
        - Src:             'stream_funcs.c:1119,7'
          Dst:             mhd_logger
    - functionName:    mhd_conn_mark_unready
      functionSourceFile: '/src/mhd2/src/mhd2/./conn_mark_ready.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_conn_remove_from_timeout_lists
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 744
      functionLinenumberEnd: 754
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          203
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_stream_resumed_activity_mark
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 738
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          149
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - mhd_monotonic_msec_counter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:729,24'
          Dst:             mhd_monotonic_msec_counter
    - functionName:    mhd_stream_update_activity_mark
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 690
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          177
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - mhd_monotonic_msec_counter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:702,22'
          Dst:             mhd_monotonic_msec_counter
    - functionName:    mhd_stream_is_timeout_expired
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          95
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - mhd_logger
        - mhd_monotonic_msec_counter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:651,9'
          Dst:             mhd_monotonic_msec_counter
        - Src:             'stream_funcs.c:667,9'
          Dst:             mhd_logger
        - Src:             'stream_funcs.c:673,7'
          Dst:             mhd_logger
    - functionName:    mhd_conn_start_closing
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 1078
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         162
      ICount:          754
      EdgeCount:       203
      CyclomaticComplexity: 43
      functionsReached:
        - mhd_conn_remove_from_timeout_lists
        - mhd_logger
        - mhd_socket_set_hard_close
        - mhd_socket_shut_wr
        - mhd_tls_gnu_conn_shutdown
      functionUses:    38
      BranchProfiles:
        - Branch String:   'stream_funcs.c:782,3'
          Branch Sides:    []
        - Branch String:   'stream_funcs.c:890,5'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_funcs.c:1001,12'
          Dst:             mhd_socket_set_hard_close
        - Src:             'stream_funcs.c:1022,39'
          Dst:             mhd_tls_gnu_conn_shutdown
        - Src:             'stream_funcs.c:1028,32'
          Dst:             mhd_socket_shut_wr
        - Src:             'stream_funcs.c:1049,5'
          Dst:             mhd_logger
        - Src:             'stream_funcs.c:1072,5'
          Dst:             mhd_conn_remove_from_timeout_lists
    - functionName:    mhd_stream_finish_req_serving
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 636
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          167
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - mhd_conn_start_closing
        - mhd_pool_reset
        - mhd_response_dec_use_count
        - mhd_stream_call_dcc_cleanup_if_needed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:551,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_funcs.c:575,5'
          Dst:             mhd_stream_call_dcc_cleanup_if_needed
        - Src:             'stream_funcs.c:583,7'
          Dst:             mhd_response_dec_use_count
        - Src:             'stream_funcs.c:629,18'
          Dst:             mhd_pool_reset
    - functionName:    mhd_stream_switch_from_recv_to_send
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 528
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_stream_shrink_read_buffer
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:527,3'
          Dst:             mhd_stream_shrink_read_buffer
    - functionName:    mhd_stream_shrink_read_buffer
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          88
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_pool_deallocate
        - mhd_pool_reallocate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:170,5'
          Dst:             mhd_pool_deallocate
        - Src:             'stream_funcs.c:178,15'
          Dst:             mhd_pool_reallocate
    - functionName:    mhd_stream_get_no_space_err_status_code
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         86
      ICount:          471
      EdgeCount:       120
      CyclomaticComplexity: 36
      functionsReached:
        - mhd_request_get_value_n
        - mhd_str_equal_caseless_bin_n
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:370,10'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'stream_funcs.c:401,18'
          Dst:             mhd_request_get_value_n
    - functionName:    mhd_stream_release_write_buffer
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_pool_deallocate
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:238,3'
          Dst:             mhd_pool_deallocate
    - functionName:    mhd_stream_maximize_write_buffer
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_pool_get_free
        - mhd_pool_reallocate
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:199,15'
          Dst:             mhd_pool_get_free
        - Src:             'stream_funcs.c:210,15'
          Dst:             mhd_pool_reallocate
    - functionName:    mhd_stream_alloc_memory
      functionSourceFile: '/src/mhd2/src/mhd2/stream_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          163
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - mhd_pool_allocate
        - mhd_pool_is_resizable_inplace
        - mhd_pool_reallocate
        - mhd_pool_try_alloc
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_funcs.c:95,9'
          Dst:             mhd_pool_try_alloc
        - Src:             'stream_funcs.c:101,7'
          Dst:             mhd_pool_is_resizable_inplace
        - Src:             'stream_funcs.c:110,22'
          Dst:             mhd_pool_reallocate
        - Src:             'stream_funcs.c:123,12'
          Dst:             mhd_pool_is_resizable_inplace
        - Src:             'stream_funcs.c:131,22'
          Dst:             mhd_pool_reallocate
        - Src:             'stream_funcs.c:145,9'
          Dst:             mhd_pool_allocate
    - functionName:    mhd_conn_mark_ready
      functionSourceFile: '/src/mhd2/src/mhd2/./conn_mark_ready.h'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_conn_mark_ready_update3
      functionSourceFile: '/src/mhd2/src/mhd2/./conn_mark_ready.h'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_conn_mark_ready
        - mhd_conn_mark_unready
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './conn_mark_ready.h:132,5'
          Dst:             mhd_conn_mark_ready
        - Src:             './conn_mark_ready.h:134,5'
          Dst:             mhd_conn_mark_unready
    - functionName:    mhd_conn_mark_unready
      functionSourceFile: '/src/mhd2/src/mhd2/./conn_mark_ready.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_conn_mark_ready_update2
      functionSourceFile: '/src/mhd2/src/mhd2/./conn_mark_ready.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_conn_mark_ready_update3
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './conn_mark_ready.h:150,3'
          Dst:             mhd_conn_mark_ready_update3
    - functionName:    mhd_conn_mark_ready_update
      functionSourceFile: '/src/mhd2/src/mhd2/./conn_mark_ready.h'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_conn_mark_ready_update2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './conn_mark_ready.h:164,3'
          Dst:             mhd_conn_mark_ready_update2
    - functionName:    update_active_state
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_states.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_conn_event_loop_state_update
        - mhd_conn_mark_ready_update
        - mhd_conn_start_closing
        - mhd_stream_check_and_grow_read_buffer_space
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_states.c:242,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_states.c:246,3'
          Dst:             mhd_conn_event_loop_state_update
        - Src:             'stream_process_states.c:251,11'
          Dst:             mhd_stream_check_and_grow_read_buffer_space
        - Src:             'stream_process_states.c:265,3'
          Dst:             mhd_conn_mark_ready_update
    - functionName:    mhd_conn_event_loop_state_update
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_states.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          185
      EdgeCount:       66
      CyclomaticComplexity: 34
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'stream_process_states.c:90,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    finish_resume
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_states.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_conn_process_data
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_states.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 584
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         129
      ICount:          678
      EdgeCount:       168
      CyclomaticComplexity: 41
      functionsReached:
        - finish_resume
        - mhd_conn_mark_unready
        - mhd_conn_remove_from_timeout_lists
        - mhd_conn_start_closing
        - mhd_socket_error_get_from_socket
        - mhd_stream_build_header_response
        - mhd_stream_call_app_final_upload_cb
        - mhd_stream_call_app_request_cb
        - mhd_stream_call_dcc_cleanup_if_needed
        - mhd_stream_finish_req_serving
        - mhd_stream_get_request_headers
        - mhd_stream_get_request_line
        - mhd_stream_is_timeout_expired
        - mhd_stream_parse_request_headers
        - mhd_stream_prep_chunked_body
        - mhd_stream_prep_chunked_footer
        - mhd_stream_prep_unchunked_body
        - mhd_stream_process_req_recv_finished
        - mhd_stream_process_request_body
        - mhd_stream_reset_rq_hdr_proc_state
        - mhd_stream_switch_from_recv_to_send
        - mhd_stream_switch_to_rq_headers_proc
        - mhd_upgrade_finish_switch_to_upgraded
        - mhd_upgrade_try_start_upgrading
        - update_active_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'stream_process_states.c:328,5'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_process_states.c:284,7'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_states.c:294,5'
          Dst:             finish_resume
        - Src:             'stream_process_states.c:303,32'
          Dst:             mhd_socket_error_get_from_socket
        - Src:             'stream_process_states.c:304,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_states.c:314,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_states.c:332,11'
          Dst:             mhd_stream_get_request_line
        - Src:             'stream_process_states.c:342,7'
          Dst:             mhd_stream_switch_to_rq_headers_proc
        - Src:             'stream_process_states.c:346,11'
          Dst:             mhd_stream_get_request_headers
        - Src:             'stream_process_states.c:356,7'
          Dst:             mhd_stream_parse_request_headers
        - Src:             'stream_process_states.c:360,11'
          Dst:             mhd_stream_call_app_request_cb
        - Src:             'stream_process_states.c:385,11'
          Dst:             mhd_stream_process_request_body
        - Src:             'stream_process_states.c:397,7'
          Dst:             mhd_stream_reset_rq_hdr_proc_state
        - Src:             'stream_process_states.c:402,11'
          Dst:             mhd_stream_get_request_headers
        - Src:             'stream_process_states.c:416,11'
          Dst:             mhd_stream_call_app_final_upload_cb
        - Src:             'stream_process_states.c:423,11'
          Dst:             mhd_stream_process_req_recv_finished
        - Src:             'stream_process_states.c:429,7'
          Dst:             mhd_stream_switch_from_recv_to_send
        - Src:             'stream_process_states.c:430,13'
          Dst:             mhd_stream_build_header_response
        - Src:             'stream_process_states.c:450,13'
          Dst:             mhd_upgrade_try_start_upgrading
        - Src:             'stream_process_states.c:467,11'
          Dst:             mhd_stream_prep_unchunked_body
        - Src:             'stream_process_states.c:485,11'
          Dst:             mhd_stream_prep_chunked_body
        - Src:             'stream_process_states.c:493,7'
          Dst:             mhd_stream_call_dcc_cleanup_if_needed
        - Src:             'stream_process_states.c:494,11'
          Dst:             mhd_stream_prep_chunked_footer
        - Src:             'stream_process_states.c:505,7'
          Dst:             mhd_stream_finish_req_serving
        - Src:             'stream_process_states.c:513,11'
          Dst:             mhd_upgrade_finish_switch_to_upgraded
        - Src:             'stream_process_states.c:554,5'
          Dst:             mhd_conn_mark_unready
        - Src:             'stream_process_states.c:555,5'
          Dst:             mhd_conn_remove_from_timeout_lists
        - Src:             'stream_process_states.c:566,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_states.c:574,7'
          Dst:             mhd_stream_is_timeout_expired
        - Src:             'stream_process_states.c:576,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_states.c:580,9'
          Dst:             update_active_state
    - functionName:    handle_req_chunk_size_line_no_space
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3738
      functionLinenumberEnd: 3764
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memchr
        - mhd_stream_get_no_space_err_status_code
        - respond_with_error_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:3746,15'
          Dst:             memchr
        - Src:             'stream_process_request.c:3752,7'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:3757,14'
          Dst:             mhd_stream_get_no_space_err_status_code
        - Src:             'stream_process_request.c:3761,3'
          Dst:             respond_with_error_len
    - 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:    24
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_cookies_string
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2345
      functionLinenumberEnd: 2540
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         171
      ICount:          917
      EdgeCount:       235
      CyclomaticComplexity: 66
      functionsReached:
        - mhd_stream_add_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:2487,13'
          Dst:             mhd_stream_add_field
        - Src:             'stream_process_request.c:2501,13'
          Dst:             mhd_stream_add_field
    - functionName:    request_add_get_arg
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1220
      functionLinenumberEnd: 1223
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_stream_add_field_nullable
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:1223,10'
          Dst:             mhd_stream_add_field_nullable
    - functionName:    parse_http_std_method
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 477
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         33
      ICount:          185
      EdgeCount:       41
      CyclomaticComplexity: 10
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stream_process_request.c:483,3'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_process_request.c:489,14'
          Dst:             memcmp
        - Src:             'stream_process_request.c:496,19'
          Dst:             memcmp
        - Src:             'stream_process_request.c:508,14'
          Dst:             memcmp
        - Src:             'stream_process_request.c:515,19'
          Dst:             memcmp
        - Src:             'stream_process_request.c:525,14'
          Dst:             memcmp
        - Src:             'stream_process_request.c:537,14'
          Dst:             memcmp
        - Src:             'stream_process_request.c:544,19'
          Dst:             memcmp
        - Src:             'stream_process_request.c:554,14'
          Dst:             memcmp
    - 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:    23
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_http_version
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 590
      functionLinenumberEnd: 642
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          221
      EdgeCount:       50
      CyclomaticComplexity: 15
      functionsReached:
        - respond_with_error_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:602,5'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:628,5'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:638,3'
          Dst:             respond_with_error_len
    - functionName:    handle_recv_no_space
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3780
      functionLinenumberEnd: 3882
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          152
      EdgeCount:       31
      CyclomaticComplexity: 5
      functionsReached:
        - handle_req_chunk_size_line_no_space
        - handle_req_footers_no_space
        - handle_req_headers_no_space
        - mhd_conn_start_closing
        - respond_with_error_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stream_process_request.c:3805,3'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_process_request.c:3811,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_request.c:3826,7'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:3831,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_request.c:3839,5'
          Dst:             handle_req_headers_no_space
        - Src:             'stream_process_request.c:3846,5'
          Dst:             handle_req_headers_no_space
        - Src:             'stream_process_request.c:3855,7'
          Dst:             handle_req_headers_no_space
        - Src:             'stream_process_request.c:3863,9'
          Dst:             handle_req_headers_no_space
        - Src:             'stream_process_request.c:3867,9'
          Dst:             handle_req_chunk_size_line_no_space
        - Src:             'stream_process_request.c:3874,5'
          Dst:             handle_req_footers_no_space
    - functionName:    handle_req_headers_no_space
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1571
      functionLinenumberEnd: 1581
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_stream_get_no_space_err_status_code
        - respond_with_error_len
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:1574,14'
          Dst:             mhd_stream_get_no_space_err_status_code
        - Src:             'stream_process_request.c:1578,3'
          Dst:             respond_with_error_len
    - functionName:    handle_req_footers_no_space
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1599
      functionLinenumberEnd: 1608
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - respond_with_error_len
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:1604,3'
          Dst:             respond_with_error_len
    - functionName:    try_grow_read_buffer
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3900
      functionLinenumberEnd: 3971
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          196
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - mhd_pool_get_free
        - mhd_pool_is_resizable_inplace
        - mhd_pool_reallocate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:3906,16'
          Dst:             mhd_pool_get_free
        - Src:             'stream_process_request.c:3943,9'
          Dst:             mhd_pool_is_resizable_inplace
        - Src:             'stream_process_request.c:3951,17'
          Dst:             mhd_pool_reallocate
    - functionName:    mhd_stream_check_and_grow_read_buffer_space
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3976
      functionLinenumberEnd: 4104
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         63
      ICount:          335
      EdgeCount:       72
      CyclomaticComplexity: 11
      functionsReached:
        - handle_recv_no_space
        - try_grow_read_buffer
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stream_process_request.c:4046,5'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_process_request.c:4032,7'
          Dst:             try_grow_read_buffer
        - Src:             'stream_process_request.c:4101,5'
          Dst:             handle_recv_no_space
    - functionName:    mhd_stream_process_req_recv_finished
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3711
      functionLinenumberEnd: 3719
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_daemon_free_lbuf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:3713,5'
          Dst:             mhd_daemon_free_lbuf
    - functionName:    mhd_stream_call_app_final_upload_cb
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3663
      functionLinenumberEnd: 3706
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          146
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_daemon_free_lbuf
        - mhd_stream_process_post_finish
        - mhd_stream_process_upload_action
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:3671,12'
          Dst:             mhd_stream_process_post_finish
        - Src:             'stream_process_request.c:3701,19'
          Dst:             mhd_stream_process_upload_action
        - Src:             'stream_process_request.c:3703,5'
          Dst:             mhd_daemon_free_lbuf
    - functionName:    mhd_stream_process_upload_action
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3151
      functionLinenumberEnd: 3227
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          237
      EdgeCount:       46
      CyclomaticComplexity: 7
      functionsReached:
        - mhd_conn_start_closing
        - mhd_logger
        - mhd_response_dec_use_count
      functionUses:    7
      BranchProfiles:
        - Branch String:   'stream_process_request.c:3160,7'
          Branch Sides:    []
        - Branch String:   'stream_process_request.c:3191,3'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_process_request.c:3164,9'
          Dst:             mhd_response_dec_use_count
        - Src:             'stream_process_request.c:3182,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:3218,5'
          Dst:             mhd_conn_start_closing
    - functionName:    process_request_nonchunked_body
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3552
      functionLinenumberEnd: 3647
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          297
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - mhd_stream_post_parse
        - mhd_stream_process_upload_action
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:3581,21'
          Dst:             mhd_stream_post_parse
        - Src:             'stream_process_request.c:3631,23'
          Dst:             mhd_stream_process_upload_action
    - functionName:    process_request_chunked_body
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3232
      functionLinenumberEnd: 3547
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         166
      ICount:          1098
      EdgeCount:       224
      CyclomaticComplexity: 60
      functionsReached:
        - mhd_daemon_free_lbuf
        - mhd_daemon_grow_lbuf
        - mhd_stream_post_parse
        - mhd_stream_process_upload_action
        - mhd_strx_to_uint64_n
        - respond_with_error_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:3281,9'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:3327,17'
          Dst:             mhd_strx_to_uint64_n
        - Src:             'stream_process_request.c:3426,9'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:3430,9'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:3445,23'
          Dst:             mhd_stream_post_parse
        - Src:             'stream_process_request.c:3475,18'
          Dst:             mhd_daemon_grow_lbuf
        - Src:             'stream_process_request.c:3483,15'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:3498,13'
          Dst:             mhd_daemon_free_lbuf
        - Src:             'stream_process_request.c:3499,17'
          Dst:             mhd_stream_process_upload_action
        - Src:             'stream_process_request.c:3526,25'
          Dst:             mhd_stream_process_upload_action
    - functionName:    mhd_stream_process_request_body
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3653
      functionLinenumberEnd: 3658
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - process_request_chunked_body
        - process_request_nonchunked_body
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:3655,12'
          Dst:             process_request_chunked_body
        - Src:             'stream_process_request.c:3657,10'
          Dst:             process_request_nonchunked_body
    - functionName:    need_100_continue
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2927
      functionLinenumberEnd: 2945
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_and_alloc_buf_for_upload_processing
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2958
      functionLinenumberEnd: 3002
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          144
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - mhd_daemon_get_lbuf
        - respond_with_error_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:2985,9'
          Dst:             mhd_daemon_get_lbuf
        - Src:             'stream_process_request.c:2995,5'
          Dst:             respond_with_error_len
    - functionName:    mhd_stream_call_app_request_cb
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3007
      functionLinenumberEnd: 3135
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         53
      ICount:          364
      EdgeCount:       63
      CyclomaticComplexity: 12
      functionsReached:
        - check_and_alloc_buf_for_upload_processing
        - mhd_conn_start_closing
        - mhd_logger
        - mhd_panic
        - mhd_response_dec_use_count
        - mhd_stream_prepare_for_post_parse
        - need_100_continue
      functionUses:    2
      BranchProfiles:
        - Branch String:   'stream_process_request.c:3036,5'
          Branch Sides:    []
        - Branch String:   'stream_process_request.c:3068,3'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_process_request.c:3016,5'
          Dst:             mhd_panic
        - Src:             'stream_process_request.c:3032,5'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:3040,7'
          Dst:             mhd_response_dec_use_count
        - Src:             'stream_process_request.c:3077,13'
          Dst:             check_and_alloc_buf_for_upload_processing
        - Src:             'stream_process_request.c:3079,11'
          Dst:             need_100_continue
        - Src:             'stream_process_request.c:3097,11'
          Dst:             mhd_stream_prepare_for_post_parse
        - Src:             'stream_process_request.c:3102,9'
          Dst:             need_100_continue
        - Src:             'stream_process_request.c:3126,5'
          Dst:             mhd_conn_start_closing
    - functionName:    handle_req_cookie_no_space
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2639
      functionLinenumberEnd: 2649
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_stream_get_no_space_err_status_code
        - respond_with_error_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:2642,14'
          Dst:             mhd_stream_get_no_space_err_status_code
        - Src:             'stream_process_request.c:2646,3'
          Dst:             respond_with_error_len
    - functionName:    parse_cookie_header
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2553
      functionLinenumberEnd: 2629
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          188
      EdgeCount:       31
      CyclomaticComplexity: 7
      functionsReached:
        - mhd_logger
        - mhd_stream_alloc_memory
        - parse_cookies_string
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stream_process_request.c:2586,3'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_process_request.c:2567,18'
          Dst:             mhd_stream_alloc_memory
        - Src:             'stream_process_request.c:2583,17'
          Dst:             parse_cookies_string
        - Src:             'stream_process_request.c:2592,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2605,9'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2610,9'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2615,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2619,5'
          Dst:             mhd_logger
    - functionName:    mhd_stream_parse_request_headers
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2657
      functionLinenumberEnd: 2915
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         127
      ICount:          809
      EdgeCount:       174
      CyclomaticComplexity: 49
      functionsReached:
        - handle_req_cookie_no_space
        - mhd_logger
        - mhd_str_equal_caseless_bin_n
        - mhd_str_has_token_caseless
        - mhd_str_to_uint64_n
        - parse_cookie_header
        - respond_with_error_len
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:2684,9'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'stream_process_request.c:2691,9'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2693,9'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2703,9'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'stream_process_request.c:2710,20'
          Dst:             mhd_str_to_uint64_n
        - Src:             'stream_process_request.c:2719,9'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2722,9'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2730,9'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2733,9'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2747,13'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2755,11'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2763,11'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2778,9'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'stream_process_request.c:2782,11'
          Dst:             mhd_str_has_token_caseless
        - Src:             'stream_process_request.c:2792,13'
          Dst:             mhd_str_has_token_caseless
        - Src:             'stream_process_request.c:2802,9'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'stream_process_request.c:2806,11'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'stream_process_request.c:2815,9'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2818,9'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2830,9'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'stream_process_request.c:2835,11'
          Dst:             parse_cookie_header
        - Src:             'stream_process_request.c:2838,9'
          Dst:             handle_req_cookie_no_space
        - Src:             'stream_process_request.c:2846,9'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'stream_process_request.c:2850,11'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'stream_process_request.c:2858,11'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2861,11'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2876,7'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2886,5'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2897,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2899,7'
          Dst:             respond_with_error_len
    - functionName:    get_req_header
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1650
      functionLinenumberEnd: 2095
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         165
      ICount:          1041
      EdgeCount:       223
      CyclomaticComplexity: 60
      functionsReached:
        - mhd_logger
        - respond_with_error_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:1753,13'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1757,13'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1782,11'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1786,11'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1833,13'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1837,13'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1862,11'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:1872,15'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1876,15'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1945,13'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1949,13'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1968,13'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1972,13'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1991,11'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1995,11'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2024,17'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2028,17'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2041,15'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2045,15'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2062,17'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:2066,17'
          Dst:             respond_with_error_len
    - functionName:    mhd_stream_get_request_headers
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2115
      functionLinenumberEnd: 2307
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         64
      ICount:          431
      EdgeCount:       84
      CyclomaticComplexity: 22
      functionsReached:
        - get_req_header
        - handle_req_footers_no_space
        - handle_req_headers_no_space
        - mhd_logger
        - mhd_stream_add_field
        - mhd_stream_reset_rq_hdr_proc_state
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:2130,11'
          Dst:             get_req_header
        - Src:             'stream_process_request.c:2155,13'
          Dst:             mhd_stream_add_field
        - Src:             'stream_process_request.c:2166,11'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2170,11'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2178,11'
          Dst:             handle_req_headers_no_space
        - Src:             'stream_process_request.c:2180,11'
          Dst:             handle_req_footers_no_space
        - Src:             'stream_process_request.c:2186,7'
          Dst:             mhd_stream_reset_rq_hdr_proc_state
        - Src:             'stream_process_request.c:2216,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2220,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2227,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2233,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2244,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2247,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2253,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:2258,7'
          Dst:             mhd_logger
    - functionName:    mhd_stream_reset_rq_hdr_proc_state
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2107
      functionLinenumberEnd: 2109
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_stream_switch_to_rq_headers_proc
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1549
      functionLinenumberEnd: 1553
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_stream_reset_rq_hdr_proc_state
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:1551,3'
          Dst:             mhd_stream_reset_rq_hdr_proc_state
    - functionName:    process_request_target
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1317
      functionLinenumberEnd: 1392
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          181
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_logger
        - mhd_parse_get_args
        - mhd_str_pct_decode_lenient_n
        - mhd_stream_get_no_space_err_status_code
        - request_add_get_arg
        - respond_with_error_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:1355,11'
          Dst:             mhd_parse_get_args
        - Src:             'stream_process_request.c:1355,11'
          Dst:             request_add_get_arg
        - Src:             'stream_process_request.c:1360,7'
          Dst:             mhd_logger
        - Src:             'stream_process_request.c:1363,7'
          Dst:             mhd_stream_get_no_space_err_status_code
        - Src:             'stream_process_request.c:1363,7'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1384,5'
          Dst:             mhd_str_pct_decode_lenient_n
    - functionName:    mhd_parse_get_args
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1235
      functionLinenumberEnd: 1306
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          280
      EdgeCount:       54
      CyclomaticComplexity: 14
      functionsReached:
        - mhd_str_pct_decode_lenient_n
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:1280,9'
          Dst:             mhd_str_pct_decode_lenient_n
        - Src:             'stream_process_request.c:1295,16'
          Dst:             mhd_str_pct_decode_lenient_n
    - functionName:    send_redirect_fixed_rq_target
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1411
      functionLinenumberEnd: 1487
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          217
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_conn_start_closing
        - respond_with_error_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stream_process_request.c:1450,5'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_process_request.c:1432,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_request.c:1480,3'
          Dst:             respond_with_error_len
    - functionName:    get_request_line_inner
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 1205
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         223
      ICount:          1491
      EdgeCount:       304
      CyclomaticComplexity: 83
      functionsReached:
        - mhd_conn_start_closing
        - parse_http_std_method
        - parse_http_version
        - respond_with_error_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:767,11'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_request.c:838,13'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:843,13'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_request.c:866,11'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:871,11'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_request.c:953,17'
          Dst:             parse_http_version
        - Src:             'stream_process_request.c:991,9'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:996,9'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_request.c:1059,13'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_request.c:1066,11'
          Dst:             parse_http_std_method
        - Src:             'stream_process_request.c:1092,17'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1097,17'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_request.c:1186,11'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_request.c:1194,9'
          Dst:             mhd_conn_start_closing
    - functionName:    mhd_stream_get_request_line
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1492
      functionLinenumberEnd: 1544
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          147
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - get_request_line_inner
        - process_request_target
        - respond_with_error_len
        - send_redirect_fixed_rq_target
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_request.c:1500,9'
          Dst:             get_request_line_inner
        - Src:             'stream_process_request.c:1510,7'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1528,7'
          Dst:             respond_with_error_len
        - Src:             'stream_process_request.c:1535,7'
          Dst:             send_redirect_fixed_rq_target
        - Src:             'stream_process_request.c:1539,9'
          Dst:             process_request_target
    - functionName:    get_date_str
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          170
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - gmtime_r
        - mhd_uint16_to_str
        - mhd_uint8_to_str_pad
        - time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_reply.c:424,22'
          Dst:             time
        - Src:             'stream_process_reply.c:427,15'
          Dst:             gmtime_r
        - Src:             'stream_process_reply.c:453,12'
          Dst:             mhd_uint8_to_str_pad
        - Src:             'stream_process_reply.c:464,12'
          Dst:             mhd_uint16_to_str
        - Src:             'stream_process_reply.c:469,3'
          Dst:             mhd_uint8_to_str_pad
        - Src:             'stream_process_reply.c:471,3'
          Dst:             mhd_uint8_to_str_pad
        - Src:             'stream_process_reply.c:473,3'
          Dst:             mhd_uint8_to_str_pad
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gmtime_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_reply_body_needed
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_conn_reuse
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          113
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - mhd_stream_has_header_token
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_reply.c:178,9'
          Dst:             mhd_stream_has_header_token
    - functionName:    add_user_headers
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          301
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - mhd_str_equal_caseless_bin_n
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_reply.c:586,11'
          Dst:             mhd_str_equal_caseless_bin_n
    - functionName:    get_date_header
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_date_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_reply.c:500,9'
          Dst:             get_date_str
    - functionName:    buffer_append
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          46
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_connection_reply
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          89
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - mhd_logger
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_reply.c:376,5'
          Dst:             mhd_logger
        - Src:             'stream_process_reply.c:385,5'
          Dst:             mhd_logger
    - functionName:    setup_reply_properties
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 359
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         46
      ICount:          287
      EdgeCount:       58
      CyclomaticComplexity: 14
      functionsReached:
        - get_conn_reuse
        - is_reply_body_needed
      functionUses:    1
      BranchProfiles:
        - Branch String:   'stream_process_reply.c:322,5'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_process_reply.c:278,19'
          Dst:             get_conn_reuse
        - Src:             'stream_process_reply.c:279,17'
          Dst:             is_reply_body_needed
    - functionName:    prep_chunked_footer_inn
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1414
      functionLinenumberEnd: 1468
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          91
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_stream_maximize_write_buffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_reply.c:1424,14'
          Dst:             mhd_stream_maximize_write_buffer
    - functionName:    mhd_stream_prep_chunked_footer
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1473
      functionLinenumberEnd: 1483
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mhd_conn_start_closing
        - prep_chunked_footer_inn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_reply.c:1474,9'
          Dst:             prep_chunked_footer_inn
        - Src:             'stream_process_reply.c:1476,5'
          Dst:             mhd_conn_start_closing
    - functionName:    mhd_stream_prep_chunked_body
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1257
      functionLinenumberEnd: 1400
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         44
      ICount:          388
      EdgeCount:       59
      CyclomaticComplexity: 17
      functionsReached:
        - mhd_conn_start_closing
        - mhd_stream_call_dcc_cleanup_if_needed
        - mhd_uint32_to_strx
        - preprocess_dcc_action
        - read_response_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_reply.c:1273,3'
          Dst:             mhd_stream_call_dcc_cleanup_if_needed
        - Src:             'stream_process_reply.c:1278,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_reply.c:1337,11'
          Dst:             preprocess_dcc_action
        - Src:             'stream_process_reply.c:1352,7'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_reply.c:1363,11'
          Dst:             read_response_file
        - Src:             'stream_process_reply.c:1378,19'
          Dst:             mhd_uint32_to_strx
    - functionName:    mhd_stream_call_dcc_cleanup_if_needed
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    preprocess_dcc_action
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 987
      functionLinenumberEnd: 1039
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          157
      EdgeCount:       36
      CyclomaticComplexity: 8
      functionsReached:
        - mhd_conn_start_closing
        - mhd_logger
      functionUses:    2
      BranchProfiles:
        - Branch String:   'stream_process_reply.c:1010,3'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_process_reply.c:1001,7'
          Dst:             mhd_logger
        - Src:             'stream_process_reply.c:1020,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_reply.c:1025,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_reply.c:1035,3'
          Dst:             mhd_conn_start_closing
    - functionName:    read_response_file
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1062
      functionLinenumberEnd: 1099
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          88
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - mhd_conn_start_closing
        - mhd_read_file
      functionUses:    2
      BranchProfiles:
        - Branch String:   'stream_process_reply.c:1066,3'
          Branch Sides:    []
      Callsites:
        - Src:             'stream_process_reply.c:1066,11'
          Dst:             mhd_read_file
        - Src:             'stream_process_reply.c:1075,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_reply.c:1080,5'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_reply.c:1086,5'
          Dst:             mhd_conn_start_closing
    - functionName:    mhd_stream_prep_unchunked_body
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1104
      functionLinenumberEnd: 1252
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         43
      ICount:          389
      EdgeCount:       58
      CyclomaticComplexity: 17
      functionsReached:
        - mhd_conn_start_closing
        - mhd_stream_alloc_memory
        - mhd_stream_call_dcc_cleanup_if_needed
        - preprocess_dcc_action
        - read_response_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_reply.c:1111,3'
          Dst:             mhd_stream_call_dcc_cleanup_if_needed
        - Src:             'stream_process_reply.c:1159,13'
          Dst:             preprocess_dcc_action
        - Src:             'stream_process_reply.c:1176,9'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_reply.c:1194,13'
          Dst:             read_response_file
        - Src:             'stream_process_reply.c:1220,26'
          Dst:             mhd_stream_alloc_memory
        - Src:             'stream_process_reply.c:1225,7'
          Dst:             mhd_conn_start_closing
    - functionName:    build_header_response_inn
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 682
      functionLinenumberEnd: 950
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         106
      ICount:          676
      EdgeCount:       147
      CyclomaticComplexity: 43
      functionsReached:
        - add_user_headers
        - buffer_append
        - check_connection_reply
        - get_date_header
        - mhd_HTTP_status_code_to_string_int
        - mhd_auth_digest_get_new_nonce
        - mhd_conn_start_closing
        - mhd_stream_maximize_write_buffer
        - mhd_uint16_to_str
        - mhd_uint64_to_str
        - setup_reply_properties
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_reply.c:695,3'
          Dst:             setup_reply_properties
        - Src:             'stream_process_reply.c:717,3'
          Dst:             check_connection_reply
        - Src:             'stream_process_reply.c:750,3'
          Dst:             mhd_stream_maximize_write_buffer
        - Src:             'stream_process_reply.c:768,13'
          Dst:             buffer_append
        - Src:             'stream_process_reply.c:773,13'
          Dst:             buffer_append
        - Src:             'stream_process_reply.c:779,11'
          Dst:             buffer_append
        - Src:             'stream_process_reply.c:787,10'
          Dst:             mhd_uint16_to_str
        - Src:             'stream_process_reply.c:795,16'
          Dst:             mhd_HTTP_status_code_to_string_int
        - Src:             'stream_process_reply.c:797,11'
          Dst:             buffer_append
        - Src:             'stream_process_reply.c:832,9'
          Dst:             get_date_header
        - Src:             'stream_process_reply.c:842,13'
          Dst:             buffer_append
        - Src:             'stream_process_reply.c:848,13'
          Dst:             buffer_append
        - Src:             'stream_process_reply.c:862,11'
          Dst:             mhd_auth_digest_get_new_nonce
        - Src:             'stream_process_reply.c:865,7'
          Dst:             mhd_conn_start_closing
        - Src:             'stream_process_reply.c:876,13'
          Dst:             buffer_append
        - Src:             'stream_process_reply.c:888,9'
          Dst:             add_user_headers
        - Src:             'stream_process_reply.c:903,13'
          Dst:             buffer_append
        - Src:             'stream_process_reply.c:917,17'
          Dst:             buffer_append
        - Src:             'stream_process_reply.c:920,21'
          Dst:             mhd_uint64_to_str
    - functionName:    mhd_stream_build_header_response
      functionSourceFile: '/src/mhd2/src/mhd2/stream_process_reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 955
      functionLinenumberEnd: 971
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - build_header_response_inn
        - mhd_conn_start_closing
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'stream_process_reply.c:956,9'
          Dst:             build_header_response_inn
        - Src:             'stream_process_reply.c:964,5'
          Dst:             mhd_conn_start_closing
    - functionName:    report_invalid_termination
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 607
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_logger
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:608,3'
          Dst:             mhd_logger
    - functionName:    check_post_leftovers_text
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2986
      functionLinenumberEnd: 3091
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          278
      EdgeCount:       38
      CyclomaticComplexity: 7
      functionsReached:
        - process_complete_field
        - report_invalid_termination
        - report_low_lbuf_mem
        - reset_parse_field_data_text
      functionUses:    1
      BranchProfiles:
        - Branch String:   'post_parser_funcs.c:2997,3'
          Branch Sides:    []
      Callsites:
        - Src:             'post_parser_funcs.c:3008,14'
          Dst:             report_low_lbuf_mem
        - Src:             'post_parser_funcs.c:3065,5'
          Dst:             report_invalid_termination
        - Src:             'post_parser_funcs.c:3074,14'
          Dst:             report_low_lbuf_mem
        - Src:             'post_parser_funcs.c:3077,7'
          Dst:             process_complete_field
        - Src:             'post_parser_funcs.c:3088,3'
          Dst:             reset_parse_field_data_text
    - functionName:    report_low_lbuf_mem
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 598
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mhd_logger
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:584,3'
          Dst:             mhd_logger
    - functionName:    process_complete_field
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 972
      functionLinenumberEnd: 997
      functionDepth:   0
      returnType:      bool
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - process_complete_field_all
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:988,10'
          Dst:             process_complete_field_all
    - functionName:    reset_parse_field_data_text
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_complete_field_all
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 941
      functionDepth:   0
      returnType:      bool
      argCount:        15
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          238
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - add_parsed_post_field
        - is_value_streaming_needed
        - make_post_strings_from_buf_and_indices
        - mhd_logger
        - mhd_stream_process_upload_action
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:843,7'
          Dst:             is_value_streaming_needed
        - Src:             'post_parser_funcs.c:852,5'
          Dst:             make_post_strings_from_buf_and_indices
        - Src:             'post_parser_funcs.c:877,11'
          Dst:             mhd_stream_process_upload_action
        - Src:             'post_parser_funcs.c:922,11'
          Dst:             add_parsed_post_field
        - Src:             'post_parser_funcs.c:930,7'
          Dst:             mhd_logger
    - functionName:    is_value_streaming_needed
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 627
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_post_strings_from_buf_and_indices
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 714
      functionLinenumberEnd: 748
      functionDepth:   0
      returnType:      void
      argCount:        13
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          124
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_parsed_post_field
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 694
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          119
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_stream_alloc_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:678,12'
          Dst:             mhd_stream_alloc_memory
    - functionName:    check_post_leftovers_mpart
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2842
      functionLinenumberEnd: 2969
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          375
      EdgeCount:       66
      CyclomaticComplexity: 8
      functionsReached:
        - process_complete_field_all
        - report_invalid_termination
        - report_low_lbuf_mem
        - reset_parse_field_data_mpart_cont
      functionUses:    1
      BranchProfiles:
        - Branch String:   'post_parser_funcs.c:2860,3'
          Branch Sides:    []
      Callsites:
        - Src:             'post_parser_funcs.c:2934,5'
          Dst:             report_invalid_termination
        - Src:             'post_parser_funcs.c:2943,14'
          Dst:             report_low_lbuf_mem
        - Src:             'post_parser_funcs.c:2947,9'
          Dst:             process_complete_field_all
        - Src:             'post_parser_funcs.c:2965,3'
          Dst:             reset_parse_field_data_mpart_cont
    - functionName:    reset_parse_field_data_mpart_cont
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_post_leftovers_urlenc
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2686
      functionLinenumberEnd: 2825
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          414
      EdgeCount:       60
      CyclomaticComplexity: 13
      functionsReached:
        - mhd_str_pct_decode_lenient_n
        - process_complete_field
        - report_low_lbuf_mem
        - reset_parse_field_data_urlenc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'post_parser_funcs.c:2702,3'
          Branch Sides:    []
      Callsites:
        - Src:             'post_parser_funcs.c:2712,18'
          Dst:             mhd_str_pct_decode_lenient_n
        - Src:             'post_parser_funcs.c:2722,14'
          Dst:             report_low_lbuf_mem
        - Src:             'post_parser_funcs.c:2762,21'
          Dst:             mhd_str_pct_decode_lenient_n
        - Src:             'post_parser_funcs.c:2808,14'
          Dst:             report_low_lbuf_mem
        - Src:             'post_parser_funcs.c:2811,7'
          Dst:             process_complete_field
        - Src:             'post_parser_funcs.c:2822,3'
          Dst:             reset_parse_field_data_urlenc
    - functionName:    reset_parse_field_data_urlenc
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_partial_value_all
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1047
      functionLinenumberEnd: 1126
      functionDepth:   0
      returnType:      bool
      argCount:        14
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          167
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - make_post_strings_from_buf_and_indices
        - mhd_stream_process_upload_action
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:1075,3'
          Dst:             make_post_strings_from_buf_and_indices
        - Src:             'post_parser_funcs.c:1103,9'
          Dst:             mhd_stream_process_upload_action
    - functionName:    process_partial_value
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1158
      functionLinenumberEnd: 1178
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - process_partial_value_all
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:1170,10'
          Dst:             process_partial_value_all
    - functionName:    reset_parse_field_data_mpart_init
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_mpart_header
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          200
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - mhd_logger
        - mhd_str_starts_with_token_req_param
        - mhd_str_unquote
        - mhd_stream_alloc_memory
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:121,9'
          Dst:             mhd_str_starts_with_token_req_param
        - Src:             'post_parser_funcs.c:132,5'
          Dst:             mhd_logger
        - Src:             'post_parser_funcs.c:150,5'
          Dst:             mhd_logger
        - Src:             'post_parser_funcs.c:163,9'
          Dst:             mhd_stream_alloc_memory
        - Src:             'post_parser_funcs.c:171,5'
          Dst:             mhd_logger
        - Src:             'post_parser_funcs.c:198,16'
          Dst:             mhd_str_unquote
    - functionName:    check_post_leftovers
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3102
      functionLinenumberEnd: 3133
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          117
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - check_post_leftovers_mpart
        - check_post_leftovers_text
        - check_post_leftovers_urlenc
        - extend_lbuf_up_to
      functionUses:    1
      BranchProfiles:
        - Branch String:   'post_parser_funcs.c:3110,3'
          Branch Sides:    []
      Callsites:
        - Src:             'post_parser_funcs.c:3106,12'
          Dst:             extend_lbuf_up_to
        - Src:             'post_parser_funcs.c:3113,12'
          Dst:             check_post_leftovers_urlenc
        - Src:             'post_parser_funcs.c:3117,12'
          Dst:             check_post_leftovers_mpart
        - Src:             'post_parser_funcs.c:3121,12'
          Dst:             check_post_leftovers_text
    - functionName:    extend_lbuf_up_to
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 571
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_daemon_extend_lbuf_up_to
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:568,10'
          Dst:             mhd_daemon_extend_lbuf_up_to
    - functionName:    mhd_stream_process_post_finish
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3138
      functionLinenumberEnd: 3160
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          106
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - check_post_leftovers
        - mhd_daemon_free_lbuf
        - mhd_stream_process_upload_action
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:3147,9'
          Dst:             check_post_leftovers
        - Src:             'post_parser_funcs.c:3156,19'
          Dst:             mhd_stream_process_upload_action
        - Src:             'post_parser_funcs.c:3158,5'
          Dst:             mhd_daemon_free_lbuf
    - functionName:    parse_post_text
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2584
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         81
      ICount:          535
      EdgeCount:       102
      CyclomaticComplexity: 23
      functionsReached:
        - is_value_streaming_needed
        - mhd_logger
        - process_complete_field
        - process_partial_value
        - reset_parse_field_data_text
      functionUses:    1
      BranchProfiles:
        - Branch String:   'post_parser_funcs.c:2393,5'
          Branch Sides:    []
      Callsites:
        - Src:             'post_parser_funcs.c:2479,9'
          Dst:             reset_parse_field_data_text
        - Src:             'post_parser_funcs.c:2501,11'
          Dst:             process_complete_field
        - Src:             'post_parser_funcs.c:2514,11'
          Dst:             reset_parse_field_data_text
        - Src:             'post_parser_funcs.c:2519,7'
          Dst:             reset_parse_field_data_text
        - Src:             'post_parser_funcs.c:2536,7'
          Dst:             mhd_logger
        - Src:             'post_parser_funcs.c:2545,7'
          Dst:             mhd_logger
        - Src:             'post_parser_funcs.c:2566,7'
          Dst:             is_value_streaming_needed
        - Src:             'post_parser_funcs.c:2568,9'
          Dst:             process_partial_value
    - functionName:    parse_post_mpart
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1456
      functionLinenumberEnd: 2364
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         335
      ICount:          2517
      EdgeCount:       437
      CyclomaticComplexity: 104
      functionsReached:
        - is_value_streaming_needed
        - memchr
        - memcmp
        - memmem
        - mhd_logger
        - mhd_str_equal_caseless_bin_n
        - mhd_str_pct_decode_lenient_n
        - mhd_str_starts_with_token_req_param
        - mhd_str_unquote
        - process_complete_field_all
        - process_partial_value_all
        - reset_parse_field_data_mpart_cont
      functionUses:    1
      BranchProfiles:
        - Branch String:   'post_parser_funcs.c:1478,5'
          Branch Sides:    []
      Callsites:
        - Src:             'post_parser_funcs.c:1495,38'
          Dst:             memmem
        - Src:             'post_parser_funcs.c:1500,38'
          Dst:             memmem
        - Src:             'post_parser_funcs.c:1539,33'
          Dst:             memchr
        - Src:             'post_parser_funcs.c:1608,18'
          Dst:             memcmp
        - Src:             'post_parser_funcs.c:1629,18'
          Dst:             memcmp
        - Src:             'post_parser_funcs.c:1642,18'
          Dst:             memcmp
        - Src:             'post_parser_funcs.c:1743,20'
          Dst:             memcmp
        - Src:             'post_parser_funcs.c:1802,15'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'post_parser_funcs.c:1824,19'
          Dst:             mhd_str_starts_with_token_req_param
        - Src:             'post_parser_funcs.c:1861,21'
          Dst:             mhd_str_starts_with_token_req_param
        - Src:             'post_parser_funcs.c:1888,23'
          Dst:             mhd_str_unquote
        - Src:             'post_parser_funcs.c:1903,21'
          Dst:             mhd_str_pct_decode_lenient_n
        - Src:             'post_parser_funcs.c:1925,36'
          Dst:             mhd_str_unquote
        - Src:             'post_parser_funcs.c:1940,19'
          Dst:             mhd_str_pct_decode_lenient_n
        - Src:             'post_parser_funcs.c:1965,9'
          Dst:             mhd_logger
        - Src:             'post_parser_funcs.c:1999,38'
          Dst:             memmem
        - Src:             'post_parser_funcs.c:2004,38'
          Dst:             memmem
        - Src:             'post_parser_funcs.c:2047,33'
          Dst:             memchr
        - Src:             'post_parser_funcs.c:2111,18'
          Dst:             memcmp
        - Src:             'post_parser_funcs.c:2132,18'
          Dst:             memcmp
        - Src:             'post_parser_funcs.c:2145,18'
          Dst:             memcmp
        - Src:             'post_parser_funcs.c:2224,11'
          Dst:             process_complete_field_all
        - Src:             'post_parser_funcs.c:2259,9'
          Dst:             reset_parse_field_data_mpart_cont
        - Src:             'post_parser_funcs.c:2278,9'
          Dst:             mhd_logger
        - Src:             'post_parser_funcs.c:2287,9'
          Dst:             mhd_logger
        - Src:             'post_parser_funcs.c:2322,9'
          Dst:             is_value_streaming_needed
        - Src:             'post_parser_funcs.c:2327,9'
          Dst:             is_value_streaming_needed
        - Src:             'post_parser_funcs.c:2342,7'
          Dst:             process_partial_value_all
    - functionName:    memmem
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_post_urlenc
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1196
      functionLinenumberEnd: 1439
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         94
      ICount:          704
      EdgeCount:       120
      CyclomaticComplexity: 28
      functionsReached:
        - is_value_streaming_needed
        - mhd_str_pct_decode_lenient_n
        - process_complete_field
        - process_partial_value
        - reset_parse_field_data_urlenc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'post_parser_funcs.c:1227,5'
          Branch Sides:    []
      Callsites:
        - Src:             'post_parser_funcs.c:1212,9'
          Dst:             process_partial_value
        - Src:             'post_parser_funcs.c:1269,24'
          Dst:             mhd_str_pct_decode_lenient_n
        - Src:             'post_parser_funcs.c:1317,27'
          Dst:             mhd_str_pct_decode_lenient_n
        - Src:             'post_parser_funcs.c:1330,26'
          Dst:             mhd_str_pct_decode_lenient_n
        - Src:             'post_parser_funcs.c:1345,11'
          Dst:             process_complete_field
        - Src:             'post_parser_funcs.c:1358,11'
          Dst:             reset_parse_field_data_urlenc
        - Src:             'post_parser_funcs.c:1363,7'
          Dst:             reset_parse_field_data_urlenc
        - Src:             'post_parser_funcs.c:1386,7'
          Dst:             is_value_streaming_needed
        - Src:             'post_parser_funcs.c:1398,9'
          Dst:             mhd_str_pct_decode_lenient_n
        - Src:             'post_parser_funcs.c:1412,9'
          Dst:             process_partial_value
    - functionName:    mhd_stream_post_parse
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2592
      functionLinenumberEnd: 2669
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          293
      EdgeCount:       49
      CyclomaticComplexity: 12
      functionsReached:
        - extend_lbuf_up_to
        - parse_post_mpart
        - parse_post_text
        - parse_post_urlenc
        - report_low_lbuf_mem
      functionUses:    5
      BranchProfiles:
        - Branch String:   'post_parser_funcs.c:2633,5'
          Branch Sides:    []
      Callsites:
        - Src:             'post_parser_funcs.c:2613,12'
          Dst:             extend_lbuf_up_to
        - Src:             'post_parser_funcs.c:2636,11'
          Dst:             parse_post_urlenc
        - Src:             'post_parser_funcs.c:2642,11'
          Dst:             parse_post_mpart
        - Src:             'post_parser_funcs.c:2648,11'
          Dst:             parse_post_text
        - Src:             'post_parser_funcs.c:2666,12'
          Dst:             report_low_lbuf_mem
    - functionName:    init_post_parse_data
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - reset_parse_field_data_mpart_init
        - reset_parse_field_data_text
        - reset_parse_field_data_urlenc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'post_parser_funcs.c:425,3'
          Branch Sides:    []
      Callsites:
        - Src:             'post_parser_funcs.c:428,5'
          Dst:             reset_parse_field_data_urlenc
        - Src:             'post_parser_funcs.c:431,5'
          Dst:             reset_parse_field_data_mpart_init
        - Src:             'post_parser_funcs.c:434,5'
          Dst:             reset_parse_field_data_text
    - functionName:    detect_mpart_boundary_from_the_header
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          74
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_logger
        - mhd_request_get_value_n
        - process_mpart_header
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:302,14'
          Dst:             mhd_request_get_value_n
        - Src:             'post_parser_funcs.c:307,5'
          Dst:             mhd_logger
        - Src:             'post_parser_funcs.c:317,9'
          Dst:             process_mpart_header
        - Src:             'post_parser_funcs.c:326,5'
          Dst:             mhd_logger
    - functionName:    detect_post_enc
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          129
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - mhd_logger
        - mhd_request_get_value_n
        - mhd_str_equal_caseless_bin_n
        - mhd_str_starts_with_token_opt_param
        - process_mpart_header
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:222,14'
          Dst:             mhd_request_get_value_n
        - Src:             'post_parser_funcs.c:227,5'
          Dst:             mhd_logger
        - Src:             'post_parser_funcs.c:237,7'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'post_parser_funcs.c:249,11'
          Dst:             process_mpart_header
        - Src:             'post_parser_funcs.c:270,9'
          Dst:             mhd_str_starts_with_token_opt_param
        - Src:             'post_parser_funcs.c:277,3'
          Dst:             mhd_logger
    - functionName:    mhd_stream_prepare_for_post_parse
      functionSourceFile: '/src/mhd2/src/mhd2/post_parser_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 483
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          92
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - detect_mpart_boundary_from_the_header
        - detect_post_enc
        - init_post_parse_data
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'post_parser_funcs.c:452,11'
          Dst:             detect_post_enc
        - Src:             'post_parser_funcs.c:463,11'
          Dst:             detect_mpart_boundary_from_the_header
        - Src:             'post_parser_funcs.c:480,3'
          Dst:             init_post_parse_data
    - functionName:    response_add_auth_digest_challenge_alg
      functionSourceFile: '/src/mhd2/src/mhd2/response_auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          515
      EdgeCount:       69
      CyclomaticComplexity: 18
      functionsReached:
        - mhd_str_quote
        - realloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'response_auth_digest.c:246,13'
          Dst:             mhd_str_quote
        - Src:             'response_auth_digest.c:286,15'
          Dst:             mhd_str_quote
        - Src:             'response_auth_digest.c:348,15'
          Dst:             realloc
    - functionName:    response_add_auth_digest_challenge_int
      functionSourceFile: '/src/mhd2/src/mhd2/response_auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          342
      EdgeCount:       80
      CyclomaticComplexity: 24
      functionsReached:
        - memchr
        - mhd_response_remove_auth_digest_headers
        - response_add_auth_digest_challenge_alg
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'response_auth_digest.c:407,13'
          Dst:             strlen
        - Src:             'response_auth_digest.c:411,15'
          Dst:             strlen
        - Src:             'response_auth_digest.c:416,15'
          Dst:             strlen
        - Src:             'response_auth_digest.c:424,16'
          Dst:             memchr
        - Src:             'response_auth_digest.c:425,16'
          Dst:             memchr
        - Src:             'response_auth_digest.c:429,17'
          Dst:             memchr
        - Src:             'response_auth_digest.c:430,17'
          Dst:             memchr
        - Src:             'response_auth_digest.c:434,17'
          Dst:             memchr
        - Src:             'response_auth_digest.c:435,17'
          Dst:             memchr
        - Src:             'response_auth_digest.c:436,17'
          Dst:             memchr
        - Src:             'response_auth_digest.c:451,11'
          Dst:             response_add_auth_digest_challenge_alg
        - Src:             'response_auth_digest.c:464,11'
          Dst:             response_add_auth_digest_challenge_alg
        - Src:             'response_auth_digest.c:477,11'
          Dst:             response_add_auth_digest_challenge_alg
        - Src:             'response_auth_digest.c:491,5'
          Dst:             mhd_response_remove_auth_digest_headers
    - functionName:    mhd_response_remove_auth_digest_headers
      functionSourceFile: '/src/mhd2/src/mhd2/response_auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          114
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MHD_response_add_auth_digest_challenge
      functionSourceFile: '/src/mhd2/src/mhd2/response_auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 555
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          159
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - mhd_panic
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - response_add_auth_digest_challenge_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'response_auth_digest.c:529,11'
          Dst:             pthread_mutex_lock
        - Src:             'response_auth_digest.c:541,11'
          Dst:             response_add_auth_digest_challenge_int
        - Src:             'response_auth_digest.c:552,5'
          Dst:             pthread_mutex_unlock
        - Src:             'response_auth_digest.c:552,5'
          Dst:             mhd_panic
    - functionName:    test_header
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2331
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          185
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2355,18'
          Dst:             memcmp
        - Src:             'auth_digest.c:2364,18'
          Dst:             memcmp
    - functionName:    check_argument_match
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2393
      functionLinenumberEnd: 2419
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - mhd_parse_get_args
        - test_header
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2399,9'
          Dst:             mhd_parse_get_args
        - Src:             'auth_digest.c:2399,9'
          Dst:             test_header
    - functionName:    mhd_GET_32BIT_LE_UNALIGN
      functionSourceFile: '/src/mhd2/src/mhd2/./mhd_bithelpers.h'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_nonce_timestamp
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2145
      functionLinenumberEnd: 2147
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_GET_32BIT_LE_UNALIGN
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2147,10'
          Dst:             mhd_GET_32BIT_LE_UNALIGN
    - functionName:    digest_update_cbuf
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1713
      functionLinenumberEnd: 1717
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - digest_update
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:1714,3'
          Dst:             digest_update
    - functionName:    digest_update
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1644
      functionLinenumberEnd: 1685
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - mhd_MD5_update
        - mhd_SHA256_update
        - mhd_SHA512_256_update
      functionUses:    11
      BranchProfiles:
        - Branch String:   'auth_digest.c:1648,3'
          Branch Sides:    []
      Callsites:
        - Src:             'auth_digest.c:1652,5'
          Dst:             mhd_MD5_update
        - Src:             'auth_digest.c:1661,5'
          Dst:             mhd_SHA256_update
        - Src:             'auth_digest.c:1670,5'
          Dst:             mhd_SHA512_256_update
    - functionName:    check_uri_match
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2439
      functionLinenumberEnd: 2481
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          137
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - check_argument_match
        - memchr
        - memcmp
        - mhd_str_pct_decode_lenient_n
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2449,20'
          Dst:             memchr
        - Src:             'auth_digest.c:2461,13'
          Dst:             mhd_str_pct_decode_lenient_n
        - Src:             'auth_digest.c:2467,13'
          Dst:             memcmp
        - Src:             'auth_digest.c:2475,9'
          Dst:             check_argument_match
    - functionName:    digest_update_buf
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1729
      functionLinenumberEnd: 1733
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - digest_update
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:1730,3'
          Dst:             digest_update
    - functionName:    get_unquoted_param_copy
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2607
      functionLinenumberEnd: 2639
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          103
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - get_buffer_for_size
        - mhd_str_unquote
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2614,5'
          Dst:             get_buffer_for_size
        - Src:             'auth_digest.c:2633,5'
          Dst:             mhd_str_unquote
    - functionName:    get_buffer_for_size
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2505
      functionLinenumberEnd: 2527
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_nonce_nc
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2197
      functionLinenumberEnd: 2308
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          357
      EdgeCount:       81
      CyclomaticComplexity: 22
      functionsReached:
        - get_nonce_timestamp
        - memchr
        - memcmp
        - mhd_hex_to_bin
        - mhd_panic
        - nonce_to_index
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2211,7'
          Dst:             mhd_hex_to_bin
        - Src:             'auth_digest.c:2216,16'
          Dst:             memchr
        - Src:             'auth_digest.c:2217,19'
          Dst:             memchr
        - Src:             'auth_digest.c:2218,19'
          Dst:             memchr
        - Src:             'auth_digest.c:2219,19'
          Dst:             memchr
        - Src:             'auth_digest.c:2220,19'
          Dst:             memchr
        - Src:             'auth_digest.c:2221,19'
          Dst:             memchr
        - Src:             'auth_digest.c:2224,16'
          Dst:             get_nonce_timestamp
        - Src:             'auth_digest.c:2227,18'
          Dst:             nonce_to_index
        - Src:             'auth_digest.c:2230,3'
          Dst:             pthread_mutex_lock
        - Src:             'auth_digest.c:2230,3'
          Dst:             mhd_panic
        - Src:             'auth_digest.c:2233,13'
          Dst:             memcmp
        - Src:             'auth_digest.c:2305,3'
          Dst:             pthread_mutex_unlock
        - Src:             'auth_digest.c:2305,3'
          Dst:             mhd_panic
    - functionName:    nonce_to_index
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - simple_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:268,10'
          Dst:             simple_hash
    - functionName:    simple_hash
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          70
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_unquoted_param
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2557
      functionLinenumberEnd: 2586
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          98
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - get_buffer_for_size
        - mhd_str_unquote
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2570,9'
          Dst:             get_buffer_for_size
        - Src:             'auth_digest.c:2578,9'
          Dst:             mhd_str_unquote
    - functionName:    digest_reset
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1838
      functionLinenumberEnd: 1900
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          49
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - mhd_MD5_init
        - mhd_SHA256_init
        - mhd_SHA512_256_init
      functionUses:    3
      BranchProfiles:
        - Branch String:   'auth_digest.c:1842,3'
          Branch Sides:    []
      Callsites:
        - Src:             'auth_digest.c:1851,5'
          Dst:             mhd_MD5_init
        - Src:             'auth_digest.c:1867,5'
          Dst:             mhd_SHA256_init
        - Src:             'auth_digest.c:1883,5'
          Dst:             mhd_SHA512_256_init
    - functionName:    is_param_equal_caseless
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2681
      functionLinenumberEnd: 2691
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_str_equal_caseless_bin_n
        - mhd_str_equal_caseless_quoted_bin_n
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2685,12'
          Dst:             mhd_str_equal_caseless_quoted_bin_n
        - Src:             'auth_digest.c:2690,11'
          Dst:             mhd_str_equal_caseless_bin_n
    - functionName:    is_param_equal
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2655
      functionLinenumberEnd: 2665
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - mhd_str_equal_quoted_bin_n
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2659,12'
          Dst:             mhd_str_equal_quoted_bin_n
        - Src:             'auth_digest.c:2664,16'
          Dst:             memcmp
    - functionName:    digest_auth_check_all_inner
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2743
      functionLinenumberEnd: 3156
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         206
      ICount:          1223
      EdgeCount:       280
      CyclomaticComplexity: 76
      functionsReached:
        - calc_userdigest
        - calc_userhash
        - check_nonce_nc
        - check_uri_match
        - digest_calc_hash
        - digest_get_size
        - digest_init_one_time
        - digest_reset
        - digest_update
        - digest_update_buf
        - digest_update_cbuf
        - digest_update_with_colon
        - get_base_digest_algo
        - get_buffer_for_size
        - get_rq_auth_digest_params
        - get_rq_extended_uname_copy_z
        - get_rq_nc
        - get_unquoted_param
        - get_unquoted_param_copy
        - is_param_equal
        - is_param_equal_caseless
        - memcmp
        - mhd_bin_to_hex
        - mhd_daemon_get_master_daemon
        - mhd_hex_to_bin
        - mhd_monotonic_msec_counter
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'auth_digest.c:2965,3'
          Branch Sides:    []
        - Branch String:   'auth_digest.c:3005,3'
          Branch Sides:    []
      Callsites:
        - Src:             'auth_digest.c:2745,5'
          Dst:             mhd_daemon_get_master_daemon
        - Src:             'auth_digest.c:2774,11'
          Dst:             get_rq_auth_digest_params
        - Src:             'auth_digest.c:2812,35'
          Dst:             get_base_digest_algo
        - Src:             'auth_digest.c:2812,9'
          Dst:             digest_init_one_time
        - Src:             'auth_digest.c:2823,17'
          Dst:             digest_get_size
        - Src:             'auth_digest.c:2900,15'
          Dst:             strlen
        - Src:             'auth_digest.c:2901,9'
          Dst:             is_param_equal
        - Src:             'auth_digest.c:2908,18'
          Dst:             strlen
        - Src:             'auth_digest.c:2913,13'
          Dst:             is_param_equal
        - Src:             'auth_digest.c:2926,17'
          Dst:             get_buffer_for_size
        - Src:             'auth_digest.c:2930,13'
          Dst:             get_rq_extended_uname_copy_z
        - Src:             'auth_digest.c:2936,17'
          Dst:             memcmp
        - Src:             'auth_digest.c:2943,5'
          Dst:             calc_userhash
        - Src:             'auth_digest.c:2952,5'
          Dst:             mhd_bin_to_hex
        - Src:             'auth_digest.c:2953,11'
          Dst:             is_param_equal_caseless
        - Src:             'auth_digest.c:2957,5'
          Dst:             digest_reset
        - Src:             'auth_digest.c:2965,11'
          Dst:             get_rq_nc
        - Src:             'auth_digest.c:2997,13'
          Dst:             get_unquoted_param
        - Src:             'auth_digest.c:3010,29'
          Dst:             mhd_monotonic_msec_counter
        - Src:             'auth_digest.c:3005,11'
          Dst:             check_nonce_nc
        - Src:             'auth_digest.c:3030,3'
          Dst:             digest_update
        - Src:             'auth_digest.c:3031,3'
          Dst:             digest_update_with_colon
        - Src:             'auth_digest.c:3037,13'
          Dst:             get_unquoted_param_copy
        - Src:             'auth_digest.c:3044,3'
          Dst:             digest_update_buf
        - Src:             'auth_digest.c:3046,9'
          Dst:             check_uri_match
        - Src:             'auth_digest.c:3048,3'
          Dst:             digest_calc_hash
        - Src:             'auth_digest.c:3058,5'
          Dst:             digest_reset
        - Src:             'auth_digest.c:3059,5'
          Dst:             calc_userdigest
        - Src:             'auth_digest.c:3075,3'
          Dst:             digest_reset
        - Src:             'auth_digest.c:3079,5'
          Dst:             mhd_bin_to_hex
        - Src:             'auth_digest.c:3081,5'
          Dst:             mhd_bin_to_hex
        - Src:             'auth_digest.c:3082,3'
          Dst:             digest_update
        - Src:             'auth_digest.c:3086,13'
          Dst:             get_unquoted_param
        - Src:             'auth_digest.c:3092,22'
          Dst:             mhd_hex_to_bin
        - Src:             'auth_digest.c:3096,3'
          Dst:             digest_update_with_colon
        - Src:             'auth_digest.c:3098,13'
          Dst:             get_unquoted_param
        - Src:             'auth_digest.c:3104,3'
          Dst:             digest_update_cbuf
        - Src:             'auth_digest.c:3106,3'
          Dst:             digest_update_with_colon
        - Src:             'auth_digest.c:3110,15'
          Dst:             get_unquoted_param
        - Src:             'auth_digest.c:3116,5'
          Dst:             digest_update_cbuf
        - Src:             'auth_digest.c:3118,5'
          Dst:             digest_update_with_colon
        - Src:             'auth_digest.c:3120,15'
          Dst:             get_unquoted_param
        - Src:             'auth_digest.c:3126,5'
          Dst:             digest_update_cbuf
        - Src:             'auth_digest.c:3128,5'
          Dst:             digest_update_with_colon
        - Src:             'auth_digest.c:3130,15'
          Dst:             get_unquoted_param
        - Src:             'auth_digest.c:3136,5'
          Dst:             digest_update_cbuf
        - Src:             'auth_digest.c:3138,5'
          Dst:             digest_update_with_colon
        - Src:             'auth_digest.c:3141,3'
          Dst:             mhd_bin_to_hex
        - Src:             'auth_digest.c:3142,3'
          Dst:             digest_update
        - Src:             'auth_digest.c:3146,3'
          Dst:             digest_calc_hash
        - Src:             'auth_digest.c:3152,12'
          Dst:             memcmp
    - functionName:    get_rq_auth_digest_params
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 834
      functionLinenumberEnd: 869
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - mhd_request_get_auth_header_value
        - mhd_stream_alloc_memory
        - parse_dauth_params
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:846,9'
          Dst:             mhd_request_get_auth_header_value
        - Src:             'auth_digest.c:853,5'
          Dst:             mhd_stream_alloc_memory
        - Src:             'auth_digest.c:862,9'
          Dst:             parse_dauth_params
    - functionName:    get_base_digest_algo
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1339
      functionLinenumberEnd: 1347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    digest_init_one_time
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1572
      functionLinenumberEnd: 1630
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       21
      CyclomaticComplexity: 12
      functionsReached:
        - mhd_MD5_init
        - mhd_SHA256_init
        - mhd_SHA512_256_init
      functionUses:    3
      BranchProfiles:
        - Branch String:   'auth_digest.c:1579,3'
          Branch Sides:    []
      Callsites:
        - Src:             'auth_digest.c:1587,5'
          Dst:             mhd_MD5_init
        - Src:             'auth_digest.c:1601,5'
          Dst:             mhd_SHA256_init
        - Src:             'auth_digest.c:1615,5'
          Dst:             mhd_SHA512_256_init
    - functionName:    digest_get_size
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1467
      functionLinenumberEnd: 1484
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_rq_extended_uname_copy_z
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 980
      functionLinenumberEnd: 1016
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          185
      EdgeCount:       47
      CyclomaticComplexity: 15
      functionsReached:
        - mhd_str_equal_caseless_bin_n
        - mhd_str_pct_decode_strict_n
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:989,9'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'auth_digest.c:1009,7'
          Dst:             mhd_str_pct_decode_strict_n
    - functionName:    calc_userhash
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2061
      functionLinenumberEnd: 2069
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - digest_calc_hash
        - digest_update
        - digest_update_with_colon
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2065,3'
          Dst:             digest_update
        - Src:             'auth_digest.c:2066,3'
          Dst:             digest_update_with_colon
        - Src:             'auth_digest.c:2067,3'
          Dst:             digest_update
        - Src:             'auth_digest.c:2068,3'
          Dst:             digest_calc_hash
    - functionName:    get_rq_nc
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1134
      functionLinenumberEnd: 1184
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          219
      EdgeCount:       51
      CyclomaticComplexity: 16
      functionsReached:
        - mhd_str_unquote
        - mhd_strx_to_uint64_n
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:1159,15'
          Dst:             mhd_str_unquote
        - Src:             'auth_digest.c:1165,9'
          Dst:             mhd_strx_to_uint64_n
    - functionName:    digest_update_with_colon
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1742
      functionLinenumberEnd: 1747
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - digest_update
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:1744,3'
          Dst:             digest_update
    - functionName:    digest_calc_hash
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1760
      functionLinenumberEnd: 1828
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - mhd_MD5_finish
        - mhd_SHA256_finish
        - mhd_SHA512_256_finish
      functionUses:    4
      BranchProfiles:
        - Branch String:   'auth_digest.c:1764,3'
          Branch Sides:    []
      Callsites:
        - Src:             'auth_digest.c:1769,5'
          Dst:             mhd_MD5_finish
        - Src:             'auth_digest.c:1787,5'
          Dst:             mhd_SHA256_finish
        - Src:             'auth_digest.c:1805,5'
          Dst:             mhd_SHA512_256_finish
    - functionName:    calc_userdigest
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1993
      functionLinenumberEnd: 2003
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - digest_calc_hash
        - digest_update
        - digest_update_str
        - digest_update_with_colon
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:1997,3'
          Dst:             digest_update
        - Src:             'auth_digest.c:1998,3'
          Dst:             digest_update_with_colon
        - Src:             'auth_digest.c:1999,3'
          Dst:             digest_update
        - Src:             'auth_digest.c:2000,3'
          Dst:             digest_update_with_colon
        - Src:             'auth_digest.c:2001,3'
          Dst:             digest_update_str
        - Src:             'auth_digest.c:2002,3'
          Dst:             digest_calc_hash
    - functionName:    digest_update_str
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1697
      functionLinenumberEnd: 1701
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - digest_update
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:1699,18'
          Dst:             strlen
        - Src:             'auth_digest.c:1698,3'
          Dst:             digest_update
    - functionName:    parse_dauth_params
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 817
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         157
      ICount:          1067
      EdgeCount:       214
      CyclomaticComplexity: 59
      functionsReached:
        - get_rq_dauth_algo
        - get_rq_dauth_qop
        - mhd_str_equal_caseless_bin_n
        - mhd_str_equal_caseless_quoted_bin_n
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:684,12'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'auth_digest.c:801,9'
          Dst:             mhd_str_equal_caseless_quoted_bin_n
        - Src:             'auth_digest.c:806,9'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'auth_digest.c:813,18'
          Dst:             get_rq_dauth_algo
        - Src:             'auth_digest.c:814,17'
          Dst:             get_rq_dauth_qop
    - functionName:    get_rq_dauth_algo
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         50
      ICount:          308
      EdgeCount:       70
      CyclomaticComplexity: 22
      functionsReached:
        - mhd_str_equal_caseless_bin_n
        - mhd_str_equal_caseless_quoted_bin_n
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:494,9'
          Dst:             mhd_str_equal_caseless_quoted_bin_n
        - Src:             'auth_digest.c:498,9'
          Dst:             mhd_str_equal_caseless_quoted_bin_n
        - Src:             'auth_digest.c:502,9'
          Dst:             mhd_str_equal_caseless_quoted_bin_n
        - Src:             'auth_digest.c:509,9'
          Dst:             mhd_str_equal_caseless_quoted_bin_n
        - Src:             'auth_digest.c:513,9'
          Dst:             mhd_str_equal_caseless_quoted_bin_n
        - Src:             'auth_digest.c:518,9'
          Dst:             mhd_str_equal_caseless_quoted_bin_n
        - Src:             'auth_digest.c:528,7'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'auth_digest.c:532,7'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'auth_digest.c:536,7'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'auth_digest.c:543,7'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'auth_digest.c:547,7'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'auth_digest.c:551,7'
          Dst:             mhd_str_equal_caseless_bin_n
    - functionName:    get_rq_dauth_qop
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          128
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - mhd_str_equal_caseless_bin_n
        - mhd_str_equal_caseless_quoted_bin_n
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:573,9'
          Dst:             mhd_str_equal_caseless_quoted_bin_n
        - Src:             'auth_digest.c:577,9'
          Dst:             mhd_str_equal_caseless_quoted_bin_n
        - Src:             'auth_digest.c:584,9'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'auth_digest.c:588,9'
          Dst:             mhd_str_equal_caseless_bin_n
    - functionName:    get_rq_param_unquoted_copy_z
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 945
      functionLinenumberEnd: 960
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mhd_str_unquote
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:955,9'
          Dst:             mhd_str_unquote
    - functionName:    get_rq_uname
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1034
      functionLinenumberEnd: 1108
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          246
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - get_rq_extended_uname_copy_z
        - get_rq_param_unquoted_copy_z
        - mhd_hex_to_bin
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:1053,7'
          Dst:             get_rq_param_unquoted_copy_z
        - Src:             'auth_digest.c:1064,7'
          Dst:             get_rq_param_unquoted_copy_z
        - Src:             'auth_digest.c:1068,11'
          Dst:             mhd_hex_to_bin
        - Src:             'auth_digest.c:1088,11'
          Dst:             get_rq_extended_uname_copy_z
    - functionName:    get_rq_unames_size
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 914
      functionLinenumberEnd: 929
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          82
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_rq_uname_type
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 881
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          89
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_PUT_32BIT_LE_UNALIGN
      functionSourceFile: '/src/mhd2/src/mhd2/./mhd_bithelpers.h'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MHD_digest_auth_check_digest
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3285
      functionLinenumberEnd: 3319
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          81
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - digest_auth_check_all
        - digest_get_hash_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:3307,7'
          Dst:             digest_get_hash_size
        - Src:             'auth_digest.c:3311,10'
          Dst:             digest_auth_check_all
    - functionName:    digest_get_hash_size
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1361
      functionLinenumberEnd: 1408
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          35
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    digest_auth_check_all
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3199
      functionLinenumberEnd: 3220
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - digest_auth_check_all_inner
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:3206,9'
          Dst:             digest_auth_check_all_inner
    - functionName:    MHD_digest_auth_check
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3261
      functionLinenumberEnd: 3269
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - digest_auth_check_all
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:3262,10'
          Dst:             digest_auth_check_all
    - functionName:    MHD_digest_auth_calc_userhash_hex
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2114
      functionLinenumberEnd: 2134
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MHD_digest_auth_calc_userhash
        - digest_get_hash_size
        - mhd_bin_to_hex_z
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2119,17'
          Dst:             digest_get_hash_size
        - Src:             'auth_digest.c:2122,9'
          Dst:             MHD_digest_auth_calc_userhash
        - Src:             'auth_digest.c:2130,10'
          Dst:             mhd_bin_to_hex_z
    - functionName:    MHD_digest_auth_calc_userhash
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2080
      functionLinenumberEnd: 2102
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calc_userhash
        - digest_get_size
        - digest_init_one_time
        - get_base_digest_algo
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2084,36'
          Dst:             get_base_digest_algo
        - Src:             'auth_digest.c:2084,9'
          Dst:             digest_init_one_time
        - Src:             'auth_digest.c:2086,7'
          Dst:             digest_get_size
        - Src:             'auth_digest.c:2091,20'
          Dst:             strlen
        - Src:             'auth_digest.c:2093,20'
          Dst:             strlen
        - Src:             'auth_digest.c:2090,5'
          Dst:             calc_userhash
    - functionName:    MHD_digest_auth_calc_userdigest
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2015
      functionLinenumberEnd: 2037
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calc_userdigest
        - digest_get_size
        - digest_init_one_time
        - get_base_digest_algo
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:2018,36'
          Dst:             get_base_digest_algo
        - Src:             'auth_digest.c:2018,9'
          Dst:             digest_init_one_time
        - Src:             'auth_digest.c:2021,7'
          Dst:             digest_get_size
        - Src:             'auth_digest.c:2027,22'
          Dst:             strlen
        - Src:             'auth_digest.c:2029,22'
          Dst:             strlen
        - Src:             'auth_digest.c:2025,5'
          Dst:             calc_userdigest
    - functionName:    MHD_digest_get_hash_size
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1427
      functionLinenumberEnd: 1428
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - digest_get_hash_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:1428,10'
          Dst:             digest_get_hash_size
    - functionName:    find_and_parse_auth_digest_info
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1190
      functionLinenumberEnd: 1302
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         45
      ICount:          425
      EdgeCount:       60
      CyclomaticComplexity: 17
      functionsReached:
        - get_rq_auth_digest_params
        - get_rq_nc
        - get_rq_param_unquoted_copy_z
        - get_rq_uname
        - get_rq_uname_type
        - get_rq_unames_size
        - mhd_stream_alloc_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:1201,9'
          Dst:             get_rq_auth_digest_params
        - Src:             'auth_digest.c:1207,16'
          Dst:             get_rq_uname_type
        - Src:             'auth_digest.c:1209,20'
          Dst:             get_rq_unames_size
        - Src:             'auth_digest.c:1218,5'
          Dst:             mhd_stream_alloc_memory
        - Src:             'auth_digest.c:1243,7'
          Dst:             get_rq_uname
        - Src:             'auth_digest.c:1253,7'
          Dst:             get_rq_param_unquoted_copy_z
        - Src:             'auth_digest.c:1261,7'
          Dst:             get_rq_param_unquoted_copy_z
        - Src:             'auth_digest.c:1275,12'
          Dst:             get_rq_nc
    - functionName:    mhd_request_get_auth_digest_info
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1310
      functionLinenumberEnd: 1329
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          87
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - find_and_parse_auth_digest_info
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:1320,37'
          Dst:             find_and_parse_auth_digest_info
    - functionName:    gen_new_nonce
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          98
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mhd_PUT_32BIT_LE_UNALIGN
        - mhd_SHA512_256_finish
        - mhd_SHA512_256_init
        - mhd_SHA512_256_update
        - mhd_monotonic_msec_counter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:315,16'
          Dst:             mhd_monotonic_msec_counter
        - Src:             'auth_digest.c:321,3'
          Dst:             mhd_SHA512_256_init
        - Src:             'auth_digest.c:322,3'
          Dst:             mhd_SHA512_256_update
        - Src:             'auth_digest.c:325,3'
          Dst:             mhd_SHA512_256_update
        - Src:             'auth_digest.c:329,5'
          Dst:             mhd_SHA512_256_update
        - Src:             'auth_digest.c:332,3'
          Dst:             mhd_SHA512_256_update
        - Src:             'auth_digest.c:335,3'
          Dst:             mhd_SHA512_256_finish
        - Src:             'auth_digest.c:405,3'
          Dst:             mhd_PUT_32BIT_LE_UNALIGN
    - functionName:    mhd_auth_digest_get_new_nonce
      functionSourceFile: '/src/mhd2/src/mhd2/auth_digest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          167
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - gen_new_nonce
        - memcmp
        - mhd_bin_to_hex
        - mhd_daemon_get_master_daemon
        - mhd_panic
        - nonce_to_index
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_digest.c:418,35'
          Dst:             mhd_daemon_get_master_daemon
        - Src:             'auth_digest.c:432,11'
          Dst:             gen_new_nonce
        - Src:             'auth_digest.c:440,20'
          Dst:             nonce_to_index
        - Src:             'auth_digest.c:442,11'
          Dst:             pthread_mutex_lock
        - Src:             'auth_digest.c:445,24'
          Dst:             memcmp
        - Src:             'auth_digest.c:463,5'
          Dst:             pthread_mutex_unlock
        - Src:             'auth_digest.c:463,5'
          Dst:             mhd_panic
        - Src:             'auth_digest.c:473,10'
          Dst:             mhd_bin_to_hex
    - functionName:    mhd_PUT_64BIT_LE_UNALIGN
      functionSourceFile: '/src/mhd2/src/mhd2/./mhd_bithelpers.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          74
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_MD5_finish
      functionSourceFile: '/src/mhd2/src/mhd2/md5_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          182
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - md5_transform
        - mhd_PUT_64BIT_LE_UNALIGN
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'md5_int.c:493,5'
          Dst:             md5_transform
        - Src:             'md5_int.c:503,3'
          Dst:             mhd_PUT_64BIT_LE_UNALIGN
        - Src:             'md5_int.c:506,3'
          Dst:             md5_transform
    - functionName:    md5_transform
      functionSourceFile: '/src/mhd2/src/mhd2/md5_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         167
      ICount:          1975
      EdgeCount:       168
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_MD5_update
      functionSourceFile: '/src/mhd2/src/mhd2/md5_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          125
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - md5_transform
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'md5_int.c:426,7'
          Dst:             md5_transform
        - Src:             'md5_int.c:434,5'
          Dst:             md5_transform
    - functionName:    mhd_MD5_init
      functionSourceFile: '/src/mhd2/src/mhd2/md5_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_PUT_64BIT_BE_UNALIGN
      functionSourceFile: '/src/mhd2/src/mhd2/./mhd_bithelpers.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          75
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_SHA256_finish
      functionSourceFile: '/src/mhd2/src/mhd2/sha256_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          254
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_PUT_64BIT_BE_UNALIGN
        - sha256_transform
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha256_int.c:496,5'
          Dst:             sha256_transform
        - Src:             'sha256_int.c:505,3'
          Dst:             mhd_PUT_64BIT_BE_UNALIGN
        - Src:             'sha256_int.c:508,3'
          Dst:             sha256_transform
    - functionName:    sha256_transform
      functionSourceFile: '/src/mhd2/src/mhd2/sha256_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         132
      ICount:          4711
      EdgeCount:       132
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_SHA256_update
      functionSourceFile: '/src/mhd2/src/mhd2/sha256_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          125
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - sha256_transform
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha256_int.c:438,7'
          Dst:             sha256_transform
        - Src:             'sha256_int.c:446,5'
          Dst:             sha256_transform
    - functionName:    mhd_SHA256_init
      functionSourceFile: '/src/mhd2/src/mhd2/sha256_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          41
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_SHA512_256_finish
      functionSourceFile: '/src/mhd2/src/mhd2/sha512_256_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 542
      functionLinenumberEnd: 638
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          201
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - sha512_256_transform
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha512_256_int.c:574,5'
          Dst:             sha512_256_transform
        - Src:             'sha512_256_int.c:591,3'
          Dst:             sha512_256_transform
    - functionName:    sha512_256_transform
      functionSourceFile: '/src/mhd2/src/mhd2/sha512_256_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 467
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         164
      ICount:          5959
      EdgeCount:       164
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_SHA512_256_update
      functionSourceFile: '/src/mhd2/src/mhd2/sha512_256_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          174
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - sha512_256_transform
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'sha512_256_int.c:507,7'
          Dst:             sha512_256_transform
        - Src:             'sha512_256_int.c:515,5'
          Dst:             sha512_256_transform
    - functionName:    mhd_SHA512_256_init
      functionSourceFile: '/src/mhd2/src/mhd2/sha512_256_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          44
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_upgraded_deinit
      functionSourceFile: '/src/mhd2/src/mhd2/upgrade_proc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          34
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - mhd_panic
        - pthread_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'upgrade_proc.c:163,3'
          Dst:             pthread_mutex_destroy
        - Src:             'upgrade_proc.c:163,3'
          Dst:             mhd_panic
    - functionName:    MHD_upgraded_close
      functionSourceFile: '/src/mhd2/src/mhd2/upgrade_proc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          130
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - mhd_daemon_trigger_itc
        - mhd_panic
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'upgrade_proc.c:146,3'
          Dst:             pthread_mutex_lock
        - Src:             'upgrade_proc.c:146,3'
          Dst:             mhd_panic
        - Src:             'upgrade_proc.c:148,3'
          Dst:             pthread_mutex_unlock
        - Src:             'upgrade_proc.c:148,3'
          Dst:             mhd_panic
        - Src:             'upgrade_proc.c:149,10'
          Dst:             mhd_daemon_trigger_itc
    - functionName:    mhd_upgrade_finish_switch_to_upgraded
      functionSourceFile: '/src/mhd2/src/mhd2/upgrade_proc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          109
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - mhd_conn_pre_clean_part1
        - mhd_conn_start_closing
        - mhd_logger
        - mhd_stream_release_write_buffer
        - pthread_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'upgrade_proc.c:103,9'
          Dst:             pthread_mutex_init
        - Src:             'upgrade_proc.c:106,5'
          Dst:             mhd_logger
        - Src:             'upgrade_proc.c:109,5'
          Dst:             mhd_conn_start_closing
        - Src:             'upgrade_proc.c:113,3'
          Dst:             mhd_stream_release_write_buffer
        - Src:             'upgrade_proc.c:114,3'
          Dst:             mhd_conn_start_closing
        - Src:             'upgrade_proc.c:116,3'
          Dst:             mhd_conn_pre_clean_part1
    - functionName:    mhd_upgrade_try_start_upgrading
      functionSourceFile: '/src/mhd2/src/mhd2/upgrade_proc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_conn_mark_unready
      functionSourceFile: '/src/mhd2/src/mhd2/./conn_mark_ready.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_conn_mark_ready
      functionSourceFile: '/src/mhd2/src/mhd2/./conn_mark_ready.h'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_conn_mark_ready_update3
      functionSourceFile: '/src/mhd2/src/mhd2/./conn_mark_ready.h'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - mhd_conn_mark_ready
        - mhd_conn_mark_unready
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './conn_mark_ready.h:132,5'
          Dst:             mhd_conn_mark_ready
        - Src:             './conn_mark_ready.h:134,5'
          Dst:             mhd_conn_mark_unready
    - functionName:    mhd_conn_mark_ready_update2
      functionSourceFile: '/src/mhd2/src/mhd2/./conn_mark_ready.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_conn_mark_ready_update3
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './conn_mark_ready.h:150,3'
          Dst:             mhd_conn_mark_ready_update3
    - functionName:    mhd_conn_mark_ready_update
      functionSourceFile: '/src/mhd2/src/mhd2/./conn_mark_ready.h'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_conn_mark_ready_update2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './conn_mark_ready.h:164,3'
          Dst:             mhd_conn_mark_ready_update2
    - functionName:    mhd_conn_tls_check
      functionSourceFile: '/src/mhd2/src/mhd2/conn_tls_check.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          196
      EdgeCount:       30
      CyclomaticComplexity: 6
      functionsReached:
        - mhd_conn_event_loop_state_update
        - mhd_conn_mark_ready_update
        - mhd_conn_start_closing
        - mhd_logger
        - mhd_socket_error_get_from_socket
        - mhd_tls_gnu_conn_handshake
      functionUses:    1
      BranchProfiles:
        - Branch String:   'conn_tls_check.c:91,3'
          Branch Sides:    []
      Callsites:
        - Src:             'conn_tls_check.c:81,32'
          Dst:             mhd_socket_error_get_from_socket
        - Src:             'conn_tls_check.c:82,5'
          Dst:             mhd_conn_start_closing
        - Src:             'conn_tls_check.c:91,11'
          Dst:             mhd_tls_gnu_conn_handshake
        - Src:             'conn_tls_check.c:108,5'
          Dst:             mhd_conn_event_loop_state_update
        - Src:             'conn_tls_check.c:136,5'
          Dst:             mhd_logger
        - Src:             'conn_tls_check.c:140,5'
          Dst:             mhd_conn_start_closing
        - Src:             'conn_tls_check.c:149,3'
          Dst:             mhd_conn_mark_ready_update
    - functionName:    daemon_deinit_dh_data
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    daemon_init_dh_data
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_tls_gnu_conn_get_tls_ver
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 852
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          89
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - gnutls_protocol_get_version
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:833,18'
          Dst:             gnutls_protocol_get_version
    - functionName:    gnutls_protocol_get_version
      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:    mhd_tls_gnu_conn_get_tls_sess
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 821
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_tls_gnu_conn_send
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 809
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - gnutls_record_send
      functionUses:    1
      BranchProfiles:
        - Branch String:   'tls_gnu_funcs.c:789,5'
          Branch Sides:    []
      Callsites:
        - Src:             'tls_gnu_funcs.c:780,9'
          Dst:             gnutls_record_send
    - functionName:    gnutls_record_send
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_tls_gnu_conn_has_data_in
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 757
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gnutls_record_check_pending
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:757,15'
          Dst:             gnutls_record_check_pending
    - functionName:    gnutls_record_check_pending
      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:    mhd_tls_gnu_conn_recv
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          89
      EdgeCount:       16
      CyclomaticComplexity: 3
      functionsReached:
        - gnutls_record_recv
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tls_gnu_funcs.c:728,5'
          Branch Sides:    []
      Callsites:
        - Src:             'tls_gnu_funcs.c:722,9'
          Dst:             gnutls_record_recv
    - functionName:    gnutls_record_recv
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_tls_gnu_conn_shutdown
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 657
      functionLinenumberEnd: 698
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - gnutls_bye
        - gnutls_record_get_direction
      functionUses:    1
      BranchProfiles:
        - Branch String:   'tls_gnu_funcs.c:667,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tls_gnu_funcs.c:665,9'
          Dst:             gnutls_bye
        - Src:             'tls_gnu_funcs.c:681,20'
          Dst:             gnutls_record_get_direction
    - functionName:    gnutls_bye
      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:    gnutls_record_get_direction
      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:    mhd_tls_gnu_conn_handshake
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 611
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - gnutls_handshake
        - gnutls_record_get_direction
      functionUses:    1
      BranchProfiles:
        - Branch String:   'tls_gnu_funcs.c:620,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tls_gnu_funcs.c:619,9'
          Dst:             gnutls_handshake
        - Src:             'tls_gnu_funcs.c:634,20'
          Dst:             gnutls_record_get_direction
    - functionName:    gnutls_handshake
      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:    mhd_tls_gnu_conn_deinit
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gnutls_deinit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:602,3'
          Dst:             gnutls_deinit
    - functionName:    gnutls_deinit
      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:    mhd_tls_gnu_conn_init
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          136
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - gnutls_alpn_set_protocols
        - gnutls_credentials_set
        - gnutls_deinit
        - gnutls_handshake_set_timeout
        - gnutls_init
        - gnutls_priority_set
        - gnutls_transport_set_int2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:507,7'
          Dst:             gnutls_init
        - Src:             'tls_gnu_funcs.c:513,5'
          Dst:             gnutls_handshake_set_timeout
        - Src:             'tls_gnu_funcs.c:523,9'
          Dst:             gnutls_priority_set
        - Src:             'tls_gnu_funcs.c:529,9'
          Dst:             gnutls_credentials_set
        - Src:             'tls_gnu_funcs.c:534,7'
          Dst:             gnutls_transport_set_int2
        - Src:             'tls_gnu_funcs.c:571,11'
          Dst:             gnutls_alpn_set_protocols
        - Src:             'tls_gnu_funcs.c:587,3'
          Dst:             gnutls_deinit
    - functionName:    gnutls_init
      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:    gnutls_handshake_set_timeout
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gnutls_priority_set
      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:    gnutls_credentials_set
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gnutls_transport_set_int2
      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:    gnutls_alpn_set_protocols
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_tls_gnu_conn_get_tls_size_v
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    daemon_deinit_priorities_cache
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gnutls_priority_deinit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:416,3'
          Dst:             gnutls_priority_deinit
    - functionName:    gnutls_priority_deinit
      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:    mhd_tls_gnu_daemon_deinit
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 472
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - daemon_deinit_credentials
        - daemon_deinit_priorities_cache
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:469,3'
          Dst:             daemon_deinit_priorities_cache
        - Src:             'tls_gnu_funcs.c:470,3'
          Dst:             daemon_deinit_credentials
    - functionName:    daemon_deinit_credentials
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - daemon_deinit_dh_data
        - gnutls_certificate_free_credentials
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:328,3'
          Dst:             gnutls_certificate_free_credentials
        - Src:             'tls_gnu_funcs.c:329,3'
          Dst:             daemon_deinit_dh_data
    - functionName:    gnutls_certificate_free_credentials
      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:    daemon_init_priorities_cache
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 401
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          89
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - gnutls_priority_init
        - mhd_logger
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:386,11'
          Dst:             gnutls_priority_init
        - Src:             'tls_gnu_funcs.c:398,3'
          Dst:             mhd_logger
    - functionName:    gnutls_priority_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    daemon_init_credentials
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          144
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - daemon_init_dh_data
        - gnutls_certificate_allocate_credentials
        - gnutls_certificate_free_credentials
        - gnutls_certificate_set_x509_key_mem2
        - gnutls_strerror
        - mhd_logger
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:254,7'
          Dst:             gnutls_certificate_allocate_credentials
        - Src:             'tls_gnu_funcs.c:256,5'
          Dst:             mhd_logger
        - Src:             'tls_gnu_funcs.c:262,14'
          Dst:             strlen
        - Src:             'tls_gnu_funcs.c:263,13'
          Dst:             strlen
        - Src:             'tls_gnu_funcs.c:283,11'
          Dst:             gnutls_certificate_set_x509_key_mem2
        - Src:             'tls_gnu_funcs.c:295,22'
          Dst:             gnutls_strerror
        - Src:             'tls_gnu_funcs.c:291,7'
          Dst:             mhd_logger
        - Src:             'tls_gnu_funcs.c:300,13'
          Dst:             daemon_init_dh_data
        - Src:             'tls_gnu_funcs.c:302,9'
          Dst:             mhd_logger
        - Src:             'tls_gnu_funcs.c:312,3'
          Dst:             gnutls_certificate_free_credentials
    - functionName:    gnutls_certificate_allocate_credentials
      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:    gnutls_certificate_set_x509_key_mem2
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gnutls_strerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_app_tls_sessings
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mhd_logger
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:158,5'
          Dst:             mhd_logger
    - functionName:    mhd_tls_gnu_daemon_init3
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - check_app_tls_sessings
        - daemon_deinit_credentials
        - daemon_init_credentials
        - daemon_init_priorities_cache
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:432,9'
          Dst:             check_app_tls_sessings
        - Src:             'tls_gnu_funcs.c:437,11'
          Dst:             calloc
        - Src:             'tls_gnu_funcs.c:442,9'
          Dst:             daemon_init_credentials
        - Src:             'tls_gnu_funcs.c:447,11'
          Dst:             daemon_init_priorities_cache
        - Src:             'tls_gnu_funcs.c:454,5'
          Dst:             daemon_deinit_credentials
    - functionName:    mhd_tls_gnu_is_inited_fine
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_tls_gnu_global_deinit
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gnutls_global_deinit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:128,5'
          Dst:             gnutls_global_deinit
    - functionName:    gnutls_global_deinit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_tls_gnu_global_init
      functionSourceFile: '/src/mhd2/src/mhd2/tls_gnu_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gnutls_check_version
        - gnutls_global_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tls_gnu_funcs.c:108,32'
          Dst:             gnutls_check_version
        - Src:             'tls_gnu_funcs.c:111,47'
          Dst:             gnutls_global_init
    - functionName:    gnutls_check_version
      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:    gnutls_global_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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_socket_shut_wr
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_sockets_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - shutdown
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_sockets_funcs.c:168,15'
          Dst:             shutdown
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_socket_set_hard_close
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_sockets_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - setsockopt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_sockets_funcs.c:155,15'
          Dst:             setsockopt
    - functionName:    mhd_socket_set_nodelay
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_sockets_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - setsockopt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_sockets_funcs.c:137,15'
          Dst:             setsockopt
    - functionName:    mhd_socket_noninheritable
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_sockets_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - fcntl
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_sockets_funcs.c:109,15'
          Dst:             fcntl
        - Src:             'mhd_sockets_funcs.c:117,13'
          Dst:             fcntl
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_socket_nonblocking
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_sockets_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - fcntl
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_sockets_funcs.c:78,15'
          Dst:             fcntl
        - Src:             'mhd_sockets_funcs.c:86,13'
          Dst:             fcntl
    - functionName:    mhd_socket_error_get_from_socket
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_socket_error_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          73
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - getsockopt
        - mhd_socket_error_get_from_sys_err
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_socket_error_funcs.c:90,13'
          Dst:             getsockopt
        - Src:             'mhd_socket_error_funcs.c:96,12'
          Dst:             mhd_socket_error_get_from_sys_err
        - Src:             'mhd_socket_error_funcs.c:98,44'
          Dst:             __errno_location
        - Src:             'mhd_socket_error_funcs.c:98,9'
          Dst:             mhd_socket_error_get_from_sys_err
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_socket_error_get_from_sys_err
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_socket_error_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         48
      ICount:          172
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    isasciiupper
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_str_starts_with_token_req_param
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2693
      functionLinenumberEnd: 2870
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         107
      ICount:          628
      EdgeCount:       145
      CyclomaticComplexity: 40
      functionsReached:
        - charsequalcaseless
        - mhd_str_equal_caseless_bin_n
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:2713,9'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'mhd_str.c:2778,15'
          Dst:             charsequalcaseless
    - functionName:    mhd_str_equal_caseless_bin_n
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1047
      functionLinenumberEnd: 1060
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - charsequalcaseless
      functionUses:    33
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1054,9'
          Dst:             charsequalcaseless
    - functionName:    charsequalcaseless
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 839
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - isasciiupper
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:838,24'
          Dst:             isasciiupper
    - functionName:    mhd_str_starts_with_token_opt_param
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2654
      functionLinenumberEnd: 2681
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          114
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - mhd_str_equal_caseless_bin_n
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:2665,9'
          Dst:             mhd_str_equal_caseless_bin_n
    - functionName:    mhd_base64_to_bin_n
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2479
      functionLinenumberEnd: 2640
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          418
      EdgeCount:       63
      CyclomaticComplexity: 20
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_str_quote
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2357
      functionLinenumberEnd: 2406
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          174
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_str_unquote
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2325
      functionLinenumberEnd: 2343
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_str_equal_caseless_quoted_bin_n
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2291
      functionLinenumberEnd: 2313
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          136
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - charsequalcaseless
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:2306,11'
          Dst:             charsequalcaseless
    - functionName:    mhd_str_equal_quoted_bin_n
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2282
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          132
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_str_pct_decode_in_place_lenient
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2178
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          245
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - xdigittovalue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:2223,25'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:2224,25'
          Dst:             xdigittovalue
    - functionName:    xdigittovalue
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    21
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_str_pct_decode_in_place_strict
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2119
      functionLinenumberEnd: 2171
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          151
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - xdigittovalue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:2152,25'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:2153,25'
          Dst:             xdigittovalue
    - functionName:    mhd_str_pct_decode_lenient_n
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2017
      functionLinenumberEnd: 2113
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          355
      EdgeCount:       70
      CyclomaticComplexity: 19
      functionsReached:
        - xdigittovalue
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:2042,25'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:2043,25'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:2087,23'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:2088,23'
          Dst:             xdigittovalue
    - functionName:    mhd_str_pct_decode_strict_n
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1927
      functionLinenumberEnd: 2006
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          270
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - xdigittovalue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1956,25'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:1957,25'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:1988,23'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:1989,23'
          Dst:             xdigittovalue
    - functionName:    mhd_hex_to_bin
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1888
      functionLinenumberEnd: 1918
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          139
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - xdigittovalue
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1898,19'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:1907,19'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:1908,19'
          Dst:             xdigittovalue
    - functionName:    mhd_bin_to_hex_z
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1873
      functionLinenumberEnd: 1879
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_bin_to_hex
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1876,9'
          Dst:             mhd_bin_to_hex
    - functionName:    mhd_bin_to_hex
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1849
      functionLinenumberEnd: 1864
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          65
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - uint8totwoxdigits
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1856,31'
          Dst:             uint8totwoxdigits
    - functionName:    uint8totwoxdigits
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 812
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_uint8_to_str_pad
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1804
      functionLinenumberEnd: 1841
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - char
        - char
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          150
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_uint64_to_str
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1763
      functionLinenumberEnd: 1795
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          108
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_uint16_to_str
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1720
      functionLinenumberEnd: 1752
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - short
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          122
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    valuetoxdigit
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_uint32_to_strx
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1685
      functionLinenumberEnd: 1711
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - valuetoxdigit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1702,20'
          Dst:             valuetoxdigit
    - functionName:    mhd_strx_to_uint64_n
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1597
      functionLinenumberEnd: 1623
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          105
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - xdigittovalue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1605,23'
          Dst:             xdigittovalue
    - functionName:    mhd_strx_to_uint64
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1563
      functionLinenumberEnd: 1588
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          101
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - xdigittovalue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1569,11'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:1582,13'
          Dst:             xdigittovalue
    - functionName:    mhd_strx_to_uint32_n
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1528
      functionLinenumberEnd: 1555
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          105
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - xdigittovalue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1536,23'
          Dst:             xdigittovalue
    - functionName:    mhd_strx_to_uint32
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1494
      functionLinenumberEnd: 1519
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          101
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - xdigittovalue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1500,11'
          Dst:             xdigittovalue
        - Src:             'mhd_str.c:1513,13'
          Dst:             xdigittovalue
    - functionName:    mhd_str_to_uint64_n
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1460
      functionLinenumberEnd: 1486
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          121
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - isasciidigit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1464,21'
          Dst:             isasciidigit
        - Src:             'mhd_str.c:1482,13'
          Dst:             isasciidigit
    - functionName:    isasciidigit
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_str_to_uint64
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1426
      functionLinenumberEnd: 1451
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          97
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - isasciidigit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1430,9'
          Dst:             isasciidigit
        - Src:             'mhd_str.c:1447,12'
          Dst:             isasciidigit
    - functionName:    mhd_str_remove_tokens_caseless
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1274
      functionLinenumberEnd: 1414
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         103
      ICount:          552
      EdgeCount:       136
      CyclomaticComplexity: 35
      functionsReached:
        - mhd_str_equal_caseless_bin_n
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1319,11'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'mhd_str.c:1346,14'
          Dst:             mhd_str_equal_caseless_bin_n
    - functionName:    mhd_str_remove_token_caseless
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1121
      functionLinenumberEnd: 1264
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         94
      ICount:          555
      EdgeCount:       128
      CyclomaticComplexity: 36
      functionsReached:
        - charsequalcaseless
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1166,14'
          Dst:             charsequalcaseless
    - functionName:    mhd_str_has_token_caseless
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1069
      functionLinenumberEnd: 1109
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          210
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - charsequalcaseless
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1089,13'
          Dst:             charsequalcaseless
    - functionName:    mhd_str_equal_caseless_n
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1024
      functionLinenumberEnd: 1039
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - charsequalcaseless
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1033,9'
          Dst:             charsequalcaseless
    - functionName:    mhd_str_equal_caseless
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 999
      functionLinenumberEnd: 1013
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - charsequalcaseless
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_str.c:1004,9'
          Dst:             charsequalcaseless
    - functionName:    mhd_panic
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_panic.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          141
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - fprintf
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_panic.c:101,5'
          Dst:             fprintf
        - Src:             'mhd_panic.c:109,7'
          Dst:             fprintf
        - Src:             'mhd_panic.c:118,7'
          Dst:             fprintf
        - Src:             'mhd_panic.c:127,3'
          Dst:             abort
    - functionName:    fprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MHD_lib_set_panic_func
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_panic.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_panic_init_default
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_panic.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_monotonic_msec_counter
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_mono_clock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 627
      functionLinenumberEnd: 766
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         14
      ICount:          92
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - clock_gettime
        - time
        - timespec_get
      functionUses:    5
      BranchProfiles:
        - Branch String:   'mhd_mono_clock.c:640,3'
          Branch Sides:    []
      Callsites:
        - Src:             'mhd_mono_clock.c:650,16'
          Dst:             clock_gettime
        - Src:             'mhd_mono_clock.c:737,21'
          Dst:             timespec_get
        - Src:             'mhd_mono_clock.c:758,16'
          Dst:             time
    - 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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timespec_get
      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:    mhd_mclock_init_once
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_mono_clock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 590
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         21
      ICount:          106
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - clock_gettime
        - time
        - timespec_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_mono_clock.c:415,12'
          Dst:             clock_gettime
        - Src:             'mhd_mono_clock.c:480,12'
          Dst:             clock_gettime
        - Src:             'mhd_mono_clock.c:492,12'
          Dst:             clock_gettime
        - Src:             'mhd_mono_clock.c:505,12'
          Dst:             clock_gettime
        - Src:             'mhd_mono_clock.c:569,21'
          Dst:             timespec_get
        - Src:             'mhd_mono_clock.c:585,21'
          Dst:             time
    - functionName:    mhd_read_file
      functionSourceFile: '/src/mhd2/src/mhd2/mhd_read_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          94
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - pread64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mhd_read_file.c:100,9'
          Dst:             pread64
    - functionName:    pread64
      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:    mhd_HTTP_status_code_to_string_int
      functionSourceFile: '/src/mhd2/src/mhd2/http_status_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MHD_HTTP_status_code_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'http_status_str.c:223,9'
          Dst:             MHD_HTTP_status_code_to_string
    - functionName:    MHD_HTTP_status_code_to_string
      functionSourceFile: '/src/mhd2/src/mhd2/http_status_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          74
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_log_extr_event_dereg_failed
      functionSourceFile: '/src/mhd2/src/mhd2/extr_events_funcs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_logger
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'extr_events_funcs.c:55,3'
          Dst:             mhd_logger
    - functionName:    MHD_request_get_post_data_cb
      functionSourceFile: '/src/mhd2/src/mhd2/request_get_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          288
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MHD_request_get_values_cb
      functionSourceFile: '/src/mhd2/src/mhd2/request_get_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          253
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_stream_has_header_token
      functionSourceFile: '/src/mhd2/src/mhd2/request_get_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          107
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - mhd_str_equal_caseless_bin_n
        - mhd_str_has_token_caseless
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'request_get_value.c:152,10'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'request_get_value.c:155,10'
          Dst:             mhd_str_has_token_caseless
    - functionName:    MHD_request_get_value
      functionSourceFile: '/src/mhd2/src/mhd2/request_get_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhd_request_get_value_n
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'request_get_value.c:128,9'
          Dst:             strlen
        - Src:             'request_get_value.c:129,10'
          Dst:             mhd_request_get_value_n
    - functionName:    mhd_request_get_value_n
      functionSourceFile: '/src/mhd2/src/mhd2/request_get_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          217
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - mhd_str_equal_caseless_bin_n
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'request_get_value.c:82,11'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'request_get_value.c:98,11'
          Dst:             mhd_str_equal_caseless_bin_n
    - functionName:    respond_with_error_len
      functionSourceFile: '/src/mhd2/src/mhd2/respond_with_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          238
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - mhd_conn_start_closing
        - mhd_daemon_free_lbuf
        - mhd_logger
        - mhd_pool_deallocate
        - mhd_response_dec_use_count
        - mhd_response_special_for_error
      functionUses:    50
      BranchProfiles:  []
      Callsites:
        - Src:             'respond_with_error.c:84,5'
          Dst:             mhd_daemon_free_lbuf
        - Src:             'respond_with_error.c:100,5'
          Dst:             mhd_pool_deallocate
        - Src:             'respond_with_error.c:115,3'
          Dst:             mhd_logger
        - Src:             'respond_with_error.c:123,5'
          Dst:             mhd_response_dec_use_count
        - Src:             'respond_with_error.c:126,13'
          Dst:             mhd_response_special_for_error
        - Src:             'respond_with_error.c:135,5'
          Dst:             mhd_conn_start_closing
    - functionName:    mhd_response_special_for_error
      functionSourceFile: '/src/mhd2/src/mhd2/response_from.c'
      linkageType:     InternalLinkage
      functionLinenumber: 419
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - int
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          86
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'response_from.c:428,9'
          Dst:             calloc
    - functionName:    MHD_response_from_pipe
      functionSourceFile: '/src/mhd2/src/mhd2/response_from.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - response_create_basic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'response_from.c:382,9'
          Dst:             response_create_basic
    - functionName:    response_create_basic
      functionSourceFile: '/src/mhd2/src/mhd2/response_from.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          91
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'response_from.c:82,7'
          Dst:             calloc
        - Src:             'response_from.c:87,9'
          Dst:             calloc
    - functionName:    MHD_response_from_fd
      functionSourceFile: '/src/mhd2/src/mhd2/response_from.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          99
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - response_create_basic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'response_from.c:361,9'
          Dst:             response_create_basic
    - functionName:    MHD_response_from_iovec
      functionSourceFile: '/src/mhd2/src/mhd2/response_from.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          263
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - calloc
        - response_create_basic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'response_from.c:280,11'
          Dst:             response_create_basic
        - Src:             'response_from.c:299,16'
          Dst:             calloc
        - Src:             'response_from.c:330,11'
          Dst:             response_create_basic
    - functionName:    response_cntn_free_buf
      functionSourceFile: '/src/mhd2/src/mhd2/response_from.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MHD_response_from_buffer_copy
      functionSourceFile: '/src/mhd2/src/mhd2/response_from.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          102
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - response_cntn_free_buf
        - response_create_basic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'response_from.c:211,11'
          Dst:             response_create_basic
        - Src:             'response_from.c:211,11'
          Dst:             response_cntn_free_buf
        - Src:             'response_from.c:219,11'
          Dst:             response_create_basic
    - functionName:    MHD_response_from_buffer
      functionSourceFile: '/src/mhd2/src/mhd2/response_from.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - int
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - response_create_basic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'response_from.c:171,9'
          Dst:             response_create_basic
    - functionName:    MHD_response_from_callback
      functionSourceFile: '/src/mhd2/src/mhd2/response_from.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - int
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - response_create_basic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'response_from.c:142,9'
          Dst:             response_create_basic
    - functionName:    mhd_response_deinit_content_data
      functionSourceFile: '/src/mhd2/src/mhd2/response_from.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'response_from.c:126,5'
          Dst:             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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    response_add_header_no_check
      functionSourceFile: '/src/mhd2/src/mhd2/response_add_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          139
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MHD_response_add_predef_header
      functionSourceFile: '/src/mhd2/src/mhd2/response_add_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    response_add_header_int
      functionSourceFile: '/src/mhd2/src/mhd2/response_add_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          121
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - memchr
        - response_add_header_no_check
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'response_add_header.c:115,27'
          Dst:             strlen
        - Src:             'response_add_header.c:116,28'
          Dst:             strlen
        - Src:             'response_add_header.c:121,16'
          Dst:             memchr
        - Src:             'response_add_header.c:122,16'
          Dst:             memchr
        - Src:             'response_add_header.c:123,16'
          Dst:             memchr
        - Src:             'response_add_header.c:124,16'
          Dst:             memchr
        - Src:             'response_add_header.c:125,16'
          Dst:             memchr
        - Src:             'response_add_header.c:127,16'
          Dst:             memchr
        - Src:             'response_add_header.c:128,16'
          Dst:             memchr
        - Src:             'response_add_header.c:131,9'
          Dst:             response_add_header_no_check
    - functionName:    MHD_response_add_header
      functionSourceFile: '/src/mhd2/src/mhd2/response_add_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          104
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - mhd_panic
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - response_add_header_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'response_add_header.c:157,11'
          Dst:             pthread_mutex_lock
        - Src:             'response_add_header.c:166,9'
          Dst:             response_add_header_int
        - Src:             'response_add_header.c:169,5'
          Dst:             pthread_mutex_unlock
        - Src:             'response_add_header.c:169,5'
          Dst:             mhd_panic
    - functionName:    mhd_response_remove_all_headers
      functionSourceFile: '/src/mhd2/src/mhd2/response_add_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          114
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhd_request_get_auth_header_value
      functionSourceFile: '/src/mhd2/src/mhd2/request_auth_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          321
      EdgeCount:       57
      CyclomaticComplexity: 15
      functionsReached:
        - mhd_str_equal_caseless_bin_n
      functionUses:    1
      BranchProfiles:
        - Branch String:   'request_auth_get.c:89,3'
          Branch Sides:    []
      Callsites:
        - Src:             'request_auth_get.c:120,11'
          Dst:             mhd_str_equal_caseless_bin_n
        - Src:             'request_auth_get.c:124,11'
          Dst:             mhd_str_equal_caseless_bin_n
...
