---
Fuzzer filename: '/src/qubes-os/qubes-core-qrexec/fuzz/qrexec_remote_fuzzer.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    max_data_chunk_size
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/libqrexec-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/qrexec_remote_fuzzer.c'
      linkageType:     externalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          75
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - fuzz_file_create
        - fuzz_file_destroy
        - handle_remote_data_v2
        - max_data_chunk_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'qrexec_remote_fuzzer.c:17,35'
          Dst:             max_data_chunk_size
        - Src:             'qrexec_remote_fuzzer.c:27,9'
          Dst:             abort
        - Src:             'qrexec_remote_fuzzer.c:30,18'
          Dst:             fuzz_file_create
        - Src:             'qrexec_remote_fuzzer.c:31,18'
          Dst:             fuzz_file_create
        - Src:             'qrexec_remote_fuzzer.c:32,25'
          Dst:             fuzz_file_create
        - Src:             'qrexec_remote_fuzzer.c:37,5'
          Dst:             handle_remote_data_v2
        - Src:             'qrexec_remote_fuzzer.c:42,5'
          Dst:             fuzz_file_destroy
        - Src:             'qrexec_remote_fuzzer.c:43,5'
          Dst:             fuzz_file_destroy
        - Src:             'qrexec_remote_fuzzer.c:44,5'
          Dst:             fuzz_file_destroy
    - 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:    35
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_exit
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/qrexec_remote_fuzzer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 12
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - abort
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'qrexec_remote_fuzzer.c:12,5'
          Dst:             abort
    - functionName:    fuzz_read
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          110
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - file_input_eof
        - file_read
        - panic
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz.c:108,9'
          Dst:             panic
        - Src:             'fuzz.c:113,9'
          Dst:             file_input_eof
        - Src:             'fuzz.c:120,9'
          Dst:             file_read
    - functionName:    panic
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 19
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - fprintf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz.c:18,5'
          Dst:             fprintf
        - Src:             'fuzz.c:19,5'
          Dst:             abort
    - functionName:    file_input_eof
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file_read
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz.c:23,5'
          Dst:             __assert_fail
    - functionName:    __assert_fail
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    26
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_libvchan_buffer_space
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_libvchan_data_ready
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_libvchan_is_open
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_libvchan_fd_for_select
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_libvchan_close
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_libvchan_wait
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_libvchan_recv
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fuzz_libvchan_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz.c:78,12'
          Dst:             fuzz_libvchan_read
    - functionName:    fuzz_libvchan_read
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          87
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - file_input_eof
        - file_read
        - panic
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz.c:63,9'
          Dst:             panic
        - Src:             'fuzz.c:68,9'
          Dst:             file_input_eof
        - Src:             'fuzz.c:73,5'
          Dst:             file_read
    - functionName:    fuzz_libvchan_send
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fuzz_write
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz.c:58,12'
          Dst:             fuzz_write
    - functionName:    fuzz_write
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          106
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - panic
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz.c:129,9'
          Dst:             panic
    - functionName:    fuzz_libvchan_write
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fuzz_write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz.c:54,12'
          Dst:             fuzz_write
    - functionName:    fuzz_file_destroy
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_file_create
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - panic
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz.c:36,9'
          Dst:             panic
    - functionName:    fuzz_libvchan_client_init_async_finish
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/fuzz.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz.c:156,5'
          Dst:             abort
    - functionName:    send_exit_code
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/remote.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - fuzz_libvchan_send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/remote.c:217,9'
          Dst:             fuzz_libvchan_send
        - Src:             '../libqrexec/remote.c:221,9'
          Dst:             fuzz_libvchan_send
    - functionName:    handle_input_v2
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/remote.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          276
      EdgeCount:       64
      CyclomaticComplexity: 18
      functionsReached:
        - __errno_location
        - abort
        - fuzz_libvchan_buffer_space
        - fuzz_libvchan_send
        - fuzz_read
        - write_all
        - write_vchan_all
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/remote.c:163,9'
          Dst:             abort
        - Src:             '../libqrexec/remote.c:167,25'
          Dst:             fuzz_libvchan_buffer_space
        - Src:             '../libqrexec/remote.c:178,19'
          Dst:             fuzz_read
        - Src:             '../libqrexec/remote.c:180,17'
          Dst:             write_all
        - Src:             '../libqrexec/remote.c:184,28'
          Dst:             __errno_location
        - Src:             '../libqrexec/remote.c:187,21'
          Dst:             __errno_location
        - Src:             '../libqrexec/remote.c:187,40'
          Dst:             __errno_location
        - Src:             '../libqrexec/remote.c:195,13'
          Dst:             fuzz_libvchan_send
        - Src:             '../libqrexec/remote.c:198,21'
          Dst:             write_vchan_all
    - 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:    39
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle_remote_data_v2
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/remote.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - bool
        - bool
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          324
      EdgeCount:       77
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - abort
        - do_replace_chars
        - flush_client_data
        - fuzz_libvchan_data_ready
        - fuzz_libvchan_recv
        - read_vchan_all
        - write_all
        - write_stdin
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../libqrexec/remote.c:53,5'
          Branch Sides:    []
        - Branch String:   '../libqrexec/remote.c:74,9'
          Branch Sides:    []
        - Branch String:   '../libqrexec/remote.c:94,21'
          Branch Sides:    []
      Callsites:
        - Src:             '../libqrexec/remote.c:50,9'
          Dst:             abort
        - Src:             '../libqrexec/remote.c:53,13'
          Dst:             flush_client_data
        - Src:             '../libqrexec/remote.c:63,12'
          Dst:             fuzz_libvchan_data_ready
        - Src:             '../libqrexec/remote.c:64,13'
          Dst:             fuzz_libvchan_recv
        - Src:             '../libqrexec/remote.c:71,14'
          Dst:             read_vchan_all
        - Src:             '../libqrexec/remote.c:93,25'
          Dst:             do_replace_chars
        - Src:             '../libqrexec/remote.c:94,29'
          Dst:             write_stdin
        - Src:             '../libqrexec/remote.c:101,35'
          Dst:             __errno_location
        - Src:             '../libqrexec/remote.c:101,53'
          Dst:             __errno_location
        - Src:             '../libqrexec/remote.c:116,21'
          Dst:             do_replace_chars
        - Src:             '../libqrexec/remote.c:118,22'
          Dst:             write_all
    - functionName:    write_stdin
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/write-stdin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          105
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - abort
        - buffer_append
        - buffer_len
        - fuzz_write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/write-stdin.c:70,9'
          Dst:             buffer_len
        - Src:             '../libqrexec/write-stdin.c:71,9'
          Dst:             buffer_append
        - Src:             '../libqrexec/write-stdin.c:75,15'
          Dst:             fuzz_write
        - Src:             '../libqrexec/write-stdin.c:78,13'
          Dst:             abort
        - Src:             '../libqrexec/write-stdin.c:81,17'
          Dst:             __errno_location
        - Src:             '../libqrexec/write-stdin.c:84,13'
          Dst:             buffer_append
    - functionName:    flush_client_data
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/write-stdin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - buffer_data
        - buffer_len
        - buffer_remove
        - fuzz_write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/write-stdin.c:42,15'
          Dst:             buffer_len
        - Src:             '../libqrexec/write-stdin.c:46,25'
          Dst:             buffer_data
        - Src:             '../libqrexec/write-stdin.c:46,15'
          Dst:             fuzz_write
        - Src:             '../libqrexec/write-stdin.c:48,17'
          Dst:             __errno_location
        - Src:             '../libqrexec/write-stdin.c:56,9'
          Dst:             buffer_remove
    - functionName:    qubesd_call2
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/ioall.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          236
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - close
        - connect
        - qubes_read_all_to_malloc
        - qubes_sendmsg_all
        - shutdown
        - socket
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/ioall.c:277,42'
          Dst:             strlen
        - Src:             '../libqrexec/ioall.c:279,45'
          Dst:             strlen
        - Src:             '../libqrexec/ioall.c:281,48'
          Dst:             strlen
        - Src:             '../libqrexec/ioall.c:290,12'
          Dst:             socket
        - Src:             '../libqrexec/ioall.c:292,17'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:294,9'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:298,9'
          Dst:             connect
        - Src:             '../libqrexec/ioall.c:315,10'
          Dst:             qubes_sendmsg_all
        - Src:             '../libqrexec/ioall.c:318,9'
          Dst:             shutdown
        - Src:             '../libqrexec/ioall.c:325,11'
          Dst:             qubes_read_all_to_malloc
        - Src:             '../libqrexec/ioall.c:326,33'
          Dst:             strlen
        - Src:             '../libqrexec/ioall.c:335,9'
          Dst:             close
    - 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:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    socket
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    connect
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qubes_sendmsg_all
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/ioall.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          152
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - __errno_location
        - sendmsg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/ioall.c:224,29'
          Dst:             sendmsg
        - Src:             '../libqrexec/ioall.c:226,27'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:227,13'
          Dst:             __assert_fail
        - Src:             '../libqrexec/ioall.c:231,13'
          Dst:             __errno_location
    - functionName:    shutdown
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qubes_read_all_to_malloc
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/ioall.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          253
      EdgeCount:       54
      CyclomaticComplexity: 12
      functionsReached:
        - __assert_fail
        - __errno_location
        - abort
        - close
        - fuzz_read
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/ioall.c:114,9'
          Dst:             abort
        - Src:             '../libqrexec/ioall.c:121,9'
          Dst:             abort
        - Src:             '../libqrexec/ioall.c:126,9'
          Dst:             abort
        - Src:             '../libqrexec/ioall.c:130,9'
          Dst:             __assert_fail
        - Src:             '../libqrexec/ioall.c:132,23'
          Dst:             fuzz_read
        - Src:             '../libqrexec/ioall.c:135,21'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:137,17'
          Dst:             abort
        - Src:             '../libqrexec/ioall.c:142,13'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:154,13'
          Dst:             abort
        - Src:             '../libqrexec/ioall.c:161,17'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:170,29'
          Dst:             realloc
        - Src:             '../libqrexec/ioall.c:180,17'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:195,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:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    realloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sendmsg
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qubesd_call
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/ioall.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - qubesd_call2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/ioall.c:255,12'
          Dst:             qubesd_call2
    - functionName:    copy_fd_all
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/ioall.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          79
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - fuzz_read
        - write_all
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/ioall.c:204,15'
          Dst:             fuzz_read
        - Src:             '../libqrexec/ioall.c:205,26'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:213,14'
          Dst:             write_all
    - functionName:    write_all
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/ioall.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          81
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - fuzz_write
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/ioall.c:61,15'
          Dst:             fuzz_write
        - Src:             '../libqrexec/ioall.c:62,26'
          Dst:             __errno_location
    - functionName:    read_all
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/ioall.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          114
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - fuzz_read
        - set_block
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/ioall.c:78,15'
          Dst:             fuzz_read
        - Src:             '../libqrexec/ioall.c:79,26'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:82,13'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:87,17'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:93,13'
          Dst:             set_block
    - functionName:    set_block
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/ioall.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fcntl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/ioall.c:50,14'
          Dst:             fcntl
        - Src:             '../libqrexec/ioall.c:53,5'
          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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_nonblock
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/ioall.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          56
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - abort
        - fcntl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/ioall.c:40,14'
          Dst:             fcntl
        - Src:             '../libqrexec/ioall.c:41,19'
          Dst:             __errno_location
        - Src:             '../libqrexec/ioall.c:42,9'
          Dst:             abort
        - Src:             '../libqrexec/ioall.c:45,5'
          Dst:             fcntl
    - functionName:    read_vchan_all
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/txrx-vchan.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - fuzz_libvchan_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/txrx-vchan.c:72,15'
          Dst:             fuzz_libvchan_read
    - functionName:    write_vchan_all
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/txrx-vchan.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - fuzz_libvchan_write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/txrx-vchan.c:58,15'
          Dst:             fuzz_libvchan_write
    - functionName:    ppoll_vchan
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/txrx-vchan.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          89
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - fuzz_libvchan_data_ready
        - fuzz_libvchan_wait
        - ppoll
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/txrx-vchan.c:37,5'
          Dst:             __assert_fail
        - Src:             '../libqrexec/txrx-vchan.c:38,9'
          Dst:             fuzz_libvchan_data_ready
        - Src:             '../libqrexec/txrx-vchan.c:40,15'
          Dst:             ppoll
        - Src:             '../libqrexec/txrx-vchan.c:42,15'
          Dst:             ppoll
        - Src:             '../libqrexec/txrx-vchan.c:47,9'
          Dst:             fuzz_libvchan_wait
    - functionName:    ppoll
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    buffer_data
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    buffer_len
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    buffer_remove
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          80
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - buffer_free
        - limited_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/buffer.c:111,9'
          Dst:             abort
        - Src:             '../libqrexec/buffer.c:115,17'
          Dst:             limited_malloc
        - Src:             '../libqrexec/buffer.c:118,5'
          Dst:             buffer_free
    - functionName:    limited_malloc
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          59
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - abort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/buffer.c:38,9'
          Dst:             abort
        - Src:             '../libqrexec/buffer.c:43,9'
          Dst:             abort
    - functionName:    buffer_free
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_init
        - limited_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/buffer.c:65,9'
          Dst:             limited_free
        - Src:             '../libqrexec/buffer.c:66,5'
          Dst:             buffer_init
    - functionName:    limited_free
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/buffer.c:51,9'
          Dst:             abort
    - functionName:    buffer_init
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    buffer_append
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          142
      EdgeCount:       31
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - abort
        - buffer_free
        - limited_malloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/buffer.c:83,5'
          Dst:             __assert_fail
        - Src:             '../libqrexec/buffer.c:86,9'
          Dst:             abort
        - Src:             '../libqrexec/buffer.c:90,9'
          Dst:             abort
        - Src:             '../libqrexec/buffer.c:95,13'
          Dst:             limited_malloc
        - Src:             '../libqrexec/buffer.c:100,5'
          Dst:             buffer_free
    - functionName:    do_replace_chars
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/replace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          110
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    validate_port
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 704
      functionLinenumberEnd: 721
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          113
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:718,12'
          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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exec_wait_for_session
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 931
      functionLinenumberEnd: 949
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - execl
        - find_file
        - getenv
        - setenv
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:932,39'
          Dst:             getenv
        - Src:             '../libqrexec/exec.c:940,15'
          Dst:             find_file
        - Src:             '../libqrexec/exec.c:947,5'
          Dst:             setenv
        - Src:             '../libqrexec/exec.c:948,12'
          Dst:             execl
    - functionName:    getenv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_file
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          333
      EdgeCount:       82
      CyclomaticComplexity: 21
      functionsReached:
        - __assert_fail
        - __errno_location
        - lstat
        - memcmp
        - readlink
        - stat
        - strchrnul
        - strcpy
        - strlen
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:365,26'
          Dst:             strlen
        - Src:             '../libqrexec/exec.c:385,32'
          Dst:             strchrnul
        - Src:             '../libqrexec/exec.c:396,9'
          Dst:             strcpy
        - Src:             '../libqrexec/exec.c:398,15'
          Dst:             lstat
        - Src:             '../libqrexec/exec.c:401,31'
          Dst:             readlink
        - Src:             '../libqrexec/exec.c:409,58'
          Dst:             memcmp
        - Src:             '../libqrexec/exec.c:410,62'
          Dst:             memcmp
        - Src:             '../libqrexec/exec.c:428,19'
          Dst:             stat
        - Src:             '../libqrexec/exec.c:429,13'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:435,13'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:436,17'
          Dst:             __errno_location
    - functionName:    setenv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execl
      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:    strchrnul
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcpy
      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:    lstat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    readlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qubes_tcp_connect
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 774
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          192
      EdgeCount:       40
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - abort
        - close
        - connect
        - freeaddrinfo
        - getaddrinfo
        - setsockopt
        - socket
        - strchr
        - validate_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:726,10'
          Dst:             validate_port
        - Src:             '../libqrexec/exec.c:731,36'
          Dst:             strchr
        - Src:             '../libqrexec/exec.c:731,65'
          Dst:             strchr
        - Src:             '../libqrexec/exec.c:743,14'
          Dst:             getaddrinfo
        - Src:             '../libqrexec/exec.c:751,5'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:752,5'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:754,18'
          Dst:             socket
        - Src:             '../libqrexec/exec.c:761,13'
          Dst:             setsockopt
        - Src:             '../libqrexec/exec.c:762,13'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:764,15'
          Dst:             connect
        - Src:             '../libqrexec/exec.c:767,9'
          Dst:             close
        - Src:             '../libqrexec/exec.c:772,5'
          Dst:             freeaddrinfo
    - functionName:    strchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    freeaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qubes_connect
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          170
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - connect
        - mkdtemp
        - rmdir
        - symlink
        - unlink
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:314,21'
          Dst:             mkdtemp
        - Src:             '../libqrexec/exec.c:317,13'
          Dst:             symlink
        - Src:             '../libqrexec/exec.c:318,26'
          Dst:             __errno_location
        - Src:             '../libqrexec/exec.c:330,17'
          Dst:             connect
        - Src:             '../libqrexec/exec.c:331,27'
          Dst:             __errno_location
        - Src:             '../libqrexec/exec.c:331,45'
          Dst:             __errno_location
        - Src:             '../libqrexec/exec.c:331,69'
          Dst:             __errno_location
        - Src:             '../libqrexec/exec.c:332,19'
          Dst:             __errno_location
        - Src:             '../libqrexec/exec.c:335,9'
          Dst:             unlink
        - Src:             '../libqrexec/exec.c:337,9'
          Dst:             rmdir
        - Src:             '../libqrexec/exec.c:339,5'
          Dst:             __errno_location
    - functionName:    mkdtemp
      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:    symlink
      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:    unlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rmdir
      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:    do_fork_exec
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          169
      EdgeCount:       34
      CyclomaticComplexity: 7
      functionsReached:
        - abort
        - close
        - fix_fds
        - pipe2
        - signal
        - socketpair
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../libqrexec/exec.c:272,5'
          Branch Sides:    []
      Callsites:
        - Src:             '../libqrexec/exec.c:261,9'
          Dst:             socketpair
        - Src:             '../libqrexec/exec.c:262,13'
          Dst:             socketpair
        - Src:             '../libqrexec/exec.c:267,30'
          Dst:             pipe2
        - Src:             '../libqrexec/exec.c:278,17'
          Dst:             signal
        - Src:             '../libqrexec/exec.c:279,17'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:281,17'
          Dst:             fix_fds
        - Src:             '../libqrexec/exec.c:283,17'
          Dst:             fix_fds
        - Src:             '../libqrexec/exec.c:287,13'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:291,5'
          Dst:             close
        - Src:             '../libqrexec/exec.c:292,5'
          Dst:             close
        - Src:             '../libqrexec/exec.c:296,9'
          Dst:             close
    - functionName:    socketpair
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pipe2
      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:    signal
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fix_fds
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          128
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - _exit
        - abort
        - close
        - dup2
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:227,9'
          Dst:             _exit
        - Src:             '../libqrexec/exec.c:229,23'
          Dst:             dup2
        - Src:             '../libqrexec/exec.c:230,24'
          Dst:             dup2
        - Src:             '../libqrexec/exec.c:231,24'
          Dst:             dup2
        - Src:             '../libqrexec/exec.c:233,9'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:246,9'
          Dst:             close
    - functionName:    _exit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dup2
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_qrexec_service
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 779
      functionLinenumberEnd: 929
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         104
      ICount:          558
      EdgeCount:       134
      CyclomaticComplexity: 32
      functionsReached:
        - __assert_fail
        - buffer_append
        - close
        - euidaccess
        - find_file
        - getenv
        - memcmp
        - qubes_connect
        - qubes_tcp_connect
        - socket
        - strchr
        - strlen
        - strrchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:780,5'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:781,5'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:783,39'
          Dst:             getenv
        - Src:             '../libqrexec/exec.c:792,15'
          Dst:             find_file
        - Src:             '../libqrexec/exec.c:796,15'
          Dst:             find_file
        - Src:             '../libqrexec/exec.c:813,18'
          Dst:             socket
        - Src:             '../libqrexec/exec.c:817,49'
          Dst:             strlen
        - Src:             '../libqrexec/exec.c:817,13'
          Dst:             qubes_connect
        - Src:             '../libqrexec/exec.c:819,13'
          Dst:             close
        - Src:             '../libqrexec/exec.c:826,47'
          Dst:             strlen
        - Src:             '../libqrexec/exec.c:826,13'
          Dst:             buffer_append
        - Src:             '../libqrexec/exec.c:836,9'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:837,9'
          Dst:             memcmp
        - Src:             '../libqrexec/exec.c:837,9'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:842,27'
          Dst:             strchr
        - Src:             '../libqrexec/exec.c:848,13'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:859,24'
          Dst:             strrchr
        - Src:             '../libqrexec/exec.c:889,47'
          Dst:             strlen
        - Src:             '../libqrexec/exec.c:889,13'
          Dst:             buffer_append
        - Src:             '../libqrexec/exec.c:892,19'
          Dst:             qubes_tcp_connect
        - Src:             '../libqrexec/exec.c:899,9'
          Dst:             euidaccess
    - functionName:    strrchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    euidaccess
      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:    execute_parsed_qubes_rpc_command
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 703
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          126
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - do_fork_exec
        - find_qrexec_service
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:684,24'
          Dst:             find_qrexec_service
        - Src:             '../libqrexec/exec.c:686,13'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:696,16'
          Dst:             do_fork_exec
        - Src:             '../libqrexec/exec.c:700,16'
          Dst:             do_fork_exec
    - functionName:    execute_qubes_rpc_command
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 675
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - destroy_qrexec_parsed_command
        - execute_parsed_qubes_rpc_command
        - parse_qubes_rpc_command
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:665,17'
          Dst:             parse_qubes_rpc_command
        - Src:             '../libqrexec/exec.c:670,11'
          Dst:             execute_parsed_qubes_rpc_command
        - Src:             '../libqrexec/exec.c:673,5'
          Dst:             destroy_qrexec_parsed_command
    - functionName:    parse_qubes_rpc_command
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 643
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         46
      ICount:          332
      EdgeCount:       64
      CyclomaticComplexity: 20
      functionsReached:
        - calloc
        - destroy_qrexec_parsed_command
        - memchr
        - memdupnul
        - strchr
        - strchrnul
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:541,17'
          Dst:             calloc
        - Src:             '../libqrexec/exec.c:550,29'
          Dst:             strchr
        - Src:             '../libqrexec/exec.c:555,25'
          Dst:             memdupnul
        - Src:             '../libqrexec/exec.c:562,9'
          Dst:             strncmp
        - Src:             '../libqrexec/exec.c:569,9'
          Dst:             strncmp
        - Src:             '../libqrexec/exec.c:583,15'
          Dst:             strchr
        - Src:             '../libqrexec/exec.c:602,34'
          Dst:             memchr
        - Src:             '../libqrexec/exec.c:612,29'
          Dst:             memdupnul
        - Src:             '../libqrexec/exec.c:617,35'
          Dst:             memdupnul
        - Src:             '../libqrexec/exec.c:628,15'
          Dst:             strchrnul
        - Src:             '../libqrexec/exec.c:633,30'
          Dst:             memdupnul
        - Src:             '../libqrexec/exec.c:641,5'
          Dst:             destroy_qrexec_parsed_command
    - functionName:    destroy_qrexec_parsed_command
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          91
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memdupnul
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strncmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_service_config
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - load_service_config_raw
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:512,14'
          Dst:             load_service_config_raw
    - functionName:    load_service_config_raw
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 455
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - find_file
        - getenv
        - qubes_toml_config_parse
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:456,31'
          Dst:             getenv
        - Src:             '../libqrexec/exec.c:462,15'
          Dst:             find_file
        - Src:             '../libqrexec/exec.c:465,15'
          Dst:             find_file
        - Src:             '../libqrexec/exec.c:471,12'
          Dst:             qubes_toml_config_parse
    - functionName:    load_service_config_v2
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          96
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - load_service_config_raw
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:485,5'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:487,15'
          Dst:             load_service_config_raw
    - functionName:    qrexec_cmd_use_fork_server
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 477
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          55
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    should_strip_env_var
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:56,10'
          Dst:             strncmp
        - Src:             '../libqrexec/exec.c:59,13'
          Dst:             strncmp
        - Src:             '../libqrexec/exec.c:60,13'
          Dst:             strncmp
    - functionName:    exec_qubes_rpc2
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         122
      ICount:          650
      EdgeCount:       144
      CyclomaticComplexity: 24
      functionsReached:
        - __assert_fail
        - __errno_location
        - _exit
        - abort
        - asprintf
        - calloc
        - execve
        - should_strip_env_var
        - strchr
        - strcmp
        - strdup
        - strtok_r
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:65,5'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:96,18'
          Dst:             calloc
        - Src:             '../libqrexec/exec.c:99,9'
          Dst:             _exit
        - Src:             '../libqrexec/exec.c:103,14'
          Dst:             should_strip_env_var
        - Src:             '../libqrexec/exec.c:104,13'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:108,17'
          Dst:             strdup
        - Src:             '../libqrexec/exec.c:111,9'
          Dst:             _exit
        - Src:             '../libqrexec/exec.c:115,9'
          Dst:             strtok_r
        - Src:             '../libqrexec/exec.c:119,13'
          Dst:             _exit
        - Src:             '../libqrexec/exec.c:122,15'
          Dst:             strtok_r
        - Src:             '../libqrexec/exec.c:127,9'
          Dst:             _exit
        - Src:             '../libqrexec/exec.c:131,9'
          Dst:             _exit
        - Src:             '../libqrexec/exec.c:135,21'
          Dst:             strchr
        - Src:             '../libqrexec/exec.c:140,13'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:140,13'
          Dst:             asprintf
        - Src:             '../libqrexec/exec.c:141,17'
          Dst:             strcmp
        - Src:             '../libqrexec/exec.c:142,17'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:142,17'
          Dst:             asprintf
        - Src:             '../libqrexec/exec.c:143,24'
          Dst:             strcmp
        - Src:             '../libqrexec/exec.c:144,17'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:144,17'
          Dst:             asprintf
        - Src:             '../libqrexec/exec.c:149,13'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:151,9'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:151,9'
          Dst:             asprintf
        - Src:             '../libqrexec/exec.c:152,9'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:152,9'
          Dst:             asprintf
        - Src:             '../libqrexec/exec.c:155,13'
          Dst:             abort
        - Src:             '../libqrexec/exec.c:155,13'
          Dst:             asprintf
        - Src:             '../libqrexec/exec.c:161,9'
          Dst:             __assert_fail
        - Src:             '../libqrexec/exec.c:163,9'
          Dst:             execve
        - Src:             '../libqrexec/exec.c:164,13'
          Dst:             __errno_location
        - Src:             '../libqrexec/exec.c:166,13'
          Dst:             _exit
        - Src:             '../libqrexec/exec.c:168,9'
          Dst:             _exit
        - Src:             '../libqrexec/exec.c:173,30'
          Dst:             strcmp
        - Src:             '../libqrexec/exec.c:174,33'
          Dst:             strcmp
        - Src:             '../libqrexec/exec.c:188,9'
          Dst:             asprintf
        - Src:             '../libqrexec/exec.c:213,5'
          Dst:             execve
        - Src:             '../libqrexec/exec.c:216,5'
          Dst:             _exit
        - Src:             '../libqrexec/exec.c:219,5'
          Dst:             _exit
    - functionName:    strdup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strtok_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      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:    asprintf
      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:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execve
      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:    register_exec_func
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/exec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          26
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/exec.c:47,9'
          Dst:             abort
    - functionName:    log_time
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/log.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - fprintf
        - gettimeofday
        - localtime_r
        - strftime
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/log.c:43,9'
          Dst:             gettimeofday
        - Src:             '../libqrexec/log.c:46,16'
          Dst:             localtime_r
        - Src:             '../libqrexec/log.c:49,5'
          Dst:             strftime
        - Src:             '../libqrexec/log.c:50,5'
          Dst:             fprintf
    - functionName:    gettimeofday
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    localtime_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strftime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setup_logging
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/log.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          70
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - errx
        - fcntl
        - setvbuf
        - warn
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/log.c:87,13'
          Dst:             fcntl
        - Src:             '../libqrexec/log.c:87,40'
          Dst:             __errno_location
        - Src:             '../libqrexec/log.c:88,13'
          Dst:             errx
        - Src:             '../libqrexec/log.c:92,5'
          Dst:             __errno_location
        - Src:             '../libqrexec/log.c:93,9'
          Dst:             setvbuf
        - Src:             '../libqrexec/log.c:94,9'
          Dst:             warn
    - functionName:    errx
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setvbuf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    warn
      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:    qrexec_logv
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/log.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          77
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - fflush
        - fprintf
        - getpid
        - log_time
        - strerror_r
        - vfprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/log.c:61,18'
          Dst:             __errno_location
        - Src:             '../libqrexec/log.c:63,5'
          Dst:             log_time
        - Src:             '../libqrexec/log.c:64,54'
          Dst:             getpid
        - Src:             '../libqrexec/log.c:64,5'
          Dst:             fprintf
        - Src:             '../libqrexec/log.c:65,5'
          Dst:             fprintf
        - Src:             '../libqrexec/log.c:66,5'
          Dst:             vfprintf
        - Src:             '../libqrexec/log.c:67,33'
          Dst:             strerror_r
        - Src:             '../libqrexec/log.c:68,9'
          Dst:             fprintf
        - Src:             '../libqrexec/log.c:69,5'
          Dst:             fprintf
        - Src:             '../libqrexec/log.c:70,5'
          Dst:             fflush
        - Src:             '../libqrexec/log.c:71,5'
          Dst:             __errno_location
    - functionName:    getpid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vfprintf
      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:    strerror_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fflush
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qrexec_log
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/log.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - qrexec_logv
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/log.c:79,5'
          Dst:             qrexec_logv
    - functionName:    do_accept
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/unix-server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          37
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - accept
        - fuzz_exit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/unix-server.c:69,10'
          Dst:             accept
        - Src:             '../libqrexec/unix-server.c:72,9'
          Dst:             fuzz_exit
    - functionName:    accept
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_server_socket
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/unix-server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - bind
        - close
        - fuzz_exit
        - listen
        - socket
        - strncpy
        - unlink
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/unix-server.c:37,5'
          Dst:             unlink
        - Src:             '../libqrexec/unix-server.c:39,9'
          Dst:             socket
        - Src:             '../libqrexec/unix-server.c:42,9'
          Dst:             fuzz_exit
        - Src:             '../libqrexec/unix-server.c:46,5'
          Dst:             strncpy
        - Src:             '../libqrexec/unix-server.c:49,9'
          Dst:             bind
        - Src:             '../libqrexec/unix-server.c:51,9'
          Dst:             close
        - Src:             '../libqrexec/unix-server.c:52,9'
          Dst:             fuzz_exit
        - Src:             '../libqrexec/unix-server.c:55,9'
          Dst:             listen
        - Src:             '../libqrexec/unix-server.c:57,9'
          Dst:             close
        - Src:             '../libqrexec/unix-server.c:58,9'
          Dst:             fuzz_exit
    - functionName:    strncpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bind
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    listen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    toml_invalid_type
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/toml.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached:
        - abort
      functionUses:    5
      BranchProfiles:
        - Branch String:   '../libqrexec/toml.c:138,5'
          Branch Sides:    []
      Callsites:
        - Src:             '../libqrexec/toml.c:152,13'
          Dst:             abort
    - functionName:    toml_value_free
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/toml.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    toml_check_dup_key
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/toml.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_toml_value
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/toml.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          317
      EdgeCount:       69
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - qubes_isspace
        - strchr
        - strncmp
        - strtoull
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../libqrexec/toml.c:38,5'
          Branch Sides:    []
      Callsites:
        - Src:             '../libqrexec/toml.c:46,9'
          Dst:             __errno_location
        - Src:             '../libqrexec/toml.c:47,26'
          Dst:             strtoull
        - Src:             '../libqrexec/toml.c:48,13'
          Dst:             __errno_location
        - Src:             '../libqrexec/toml.c:55,13'
          Dst:             strncmp
        - Src:             '../libqrexec/toml.c:65,13'
          Dst:             strncmp
        - Src:             '../libqrexec/toml.c:82,15'
          Dst:             strchr
        - Src:             '../libqrexec/toml.c:106,12'
          Dst:             qubes_isspace
    - functionName:    strtoull
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qubes_isspace
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/toml.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 14
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qubes_is_key_byte
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/toml.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         72
      ICount:          283
      EdgeCount:       142
      CyclomaticComplexity: 72
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../libqrexec/toml.c:122,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    qubes_toml_config_parse
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/toml.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         175
      ICount:          791
      EdgeCount:       207
      CyclomaticComplexity: 34
      functionsReached:
        - abort
        - fclose
        - fopen
        - getline
        - parse_toml_value
        - qubes_is_key_byte
        - qubes_isspace
        - strcmp
        - strlen
        - toml_check_dup_key
        - toml_invalid_type
        - toml_value_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../libqrexec/toml.c:240,9'
          Branch Sides:    []
      Callsites:
        - Src:             '../libqrexec/toml.c:178,25'
          Dst:             fopen
        - Src:             '../libqrexec/toml.c:209,30'
          Dst:             getline
        - Src:             '../libqrexec/toml.c:215,13'
          Dst:             abort
        - Src:             '../libqrexec/toml.c:219,13'
          Dst:             strlen
        - Src:             '../libqrexec/toml.c:236,31'
          Dst:             qubes_isspace
        - Src:             '../libqrexec/toml.c:266,18'
          Dst:             qubes_is_key_byte
        - Src:             '../libqrexec/toml.c:268,16'
          Dst:             qubes_isspace
        - Src:             '../libqrexec/toml.c:276,18'
          Dst:             qubes_isspace
        - Src:             '../libqrexec/toml.c:279,29'
          Dst:             parse_toml_value
        - Src:             '../libqrexec/toml.c:283,13'
          Dst:             strcmp
        - Src:             '../libqrexec/toml.c:284,13'
          Dst:             toml_check_dup_key
        - Src:             '../libqrexec/toml.c:284,13'
          Dst:             toml_value_free
        - Src:             '../libqrexec/toml.c:293,17'
          Dst:             toml_invalid_type
        - Src:             '../libqrexec/toml.c:293,17'
          Dst:             toml_value_free
        - Src:             '../libqrexec/toml.c:296,20'
          Dst:             strcmp
        - Src:             '../libqrexec/toml.c:297,13'
          Dst:             toml_check_dup_key
        - Src:             '../libqrexec/toml.c:297,13'
          Dst:             toml_value_free
        - Src:             '../libqrexec/toml.c:298,13'
          Dst:             toml_invalid_type
        - Src:             '../libqrexec/toml.c:298,13'
          Dst:             toml_value_free
        - Src:             '../libqrexec/toml.c:300,20'
          Dst:             strcmp
        - Src:             '../libqrexec/toml.c:301,13'
          Dst:             toml_check_dup_key
        - Src:             '../libqrexec/toml.c:301,13'
          Dst:             toml_value_free
        - Src:             '../libqrexec/toml.c:302,13'
          Dst:             toml_invalid_type
        - Src:             '../libqrexec/toml.c:302,13'
          Dst:             toml_value_free
        - Src:             '../libqrexec/toml.c:304,20'
          Dst:             strcmp
        - Src:             '../libqrexec/toml.c:305,13'
          Dst:             toml_check_dup_key
        - Src:             '../libqrexec/toml.c:305,13'
          Dst:             toml_value_free
        - Src:             '../libqrexec/toml.c:306,13'
          Dst:             toml_invalid_type
        - Src:             '../libqrexec/toml.c:306,13'
          Dst:             toml_value_free
        - Src:             '../libqrexec/toml.c:308,20'
          Dst:             strcmp
        - Src:             '../libqrexec/toml.c:309,13'
          Dst:             toml_check_dup_key
        - Src:             '../libqrexec/toml.c:309,13'
          Dst:             toml_value_free
        - Src:             '../libqrexec/toml.c:310,13'
          Dst:             toml_invalid_type
        - Src:             '../libqrexec/toml.c:310,13'
          Dst:             toml_value_free
        - Src:             '../libqrexec/toml.c:314,13'
          Dst:             toml_value_free
        - Src:             '../libqrexec/toml.c:321,5'
          Dst:             fclose
    - functionName:    fopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getline
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      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:    fclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    close_stderr
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/process_io.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - close
        - set_block
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/process_io.c:77,5'
          Dst:             set_block
        - Src:             '../libqrexec/process_io.c:78,5'
          Dst:             close
    - functionName:    close_stdio
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/process_io.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          106
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - close
        - set_block
        - shutdown
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/process_io.c:55,13'
          Dst:             shutdown
        - Src:             '../libqrexec/process_io.c:56,17'
          Dst:             __errno_location
        - Src:             '../libqrexec/process_io.c:57,17'
          Dst:             close
        - Src:             '../libqrexec/process_io.c:59,24'
          Dst:             __errno_location
        - Src:             '../libqrexec/process_io.c:67,9'
          Dst:             set_block
        - Src:             '../libqrexec/process_io.c:68,9'
          Dst:             close
    - functionName:    max_data_chunk_size
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/libqrexec-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qrexec_process_io
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/process_io.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 403
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         284
      ICount:          1374
      EdgeCount:       357
      CyclomaticComplexity: 75
      functionsReached:
        - __assert_fail
        - __errno_location
        - buffer_len
        - close_stderr
        - close_stdio
        - fuzz_libvchan_buffer_space
        - fuzz_libvchan_data_ready
        - fuzz_libvchan_fd_for_select
        - fuzz_libvchan_is_open
        - fuzz_libvchan_send
        - fuzz_libvchan_wait
        - handle_input_v2
        - handle_remote_data_v2
        - handle_vchan_error
        - max_data_chunk_size
        - ppoll
        - send_exit_code
        - set_nonblock
        - sigaddset
        - sigemptyset
        - sigprocmask
        - waitpid
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../libqrexec/process_io.c:318,9'
          Branch Sides:    []
        - Branch String:   '../libqrexec/process_io.c:346,13'
          Branch Sides:    []
        - Branch String:   '../libqrexec/process_io.c:367,13'
          Branch Sides:    []
      Callsites:
        - Src:             '../libqrexec/process_io.c:103,5'
          Dst:             __assert_fail
        - Src:             '../libqrexec/process_io.c:109,35'
          Dst:             max_data_chunk_size
        - Src:             '../libqrexec/process_io.c:130,9'
          Dst:             fuzz_libvchan_send
        - Src:             '../libqrexec/process_io.c:138,9'
          Dst:             handle_vchan_error
        - Src:             '../libqrexec/process_io.c:140,5'
          Dst:             sigemptyset
        - Src:             '../libqrexec/process_io.c:141,5'
          Dst:             sigaddset
        - Src:             '../libqrexec/process_io.c:142,5'
          Dst:             sigprocmask
        - Src:             '../libqrexec/process_io.c:143,5'
          Dst:             sigemptyset
        - Src:             '../libqrexec/process_io.c:154,5'
          Dst:             set_nonblock
        - Src:             '../libqrexec/process_io.c:156,9'
          Dst:             set_nonblock
        - Src:             '../libqrexec/process_io.c:158,9'
          Dst:             __assert_fail
        - Src:             '../libqrexec/process_io.c:159,9'
          Dst:             __assert_fail
        - Src:             '../libqrexec/process_io.c:162,9'
          Dst:             __assert_fail
        - Src:             '../libqrexec/process_io.c:163,9'
          Dst:             set_nonblock
        - Src:             '../libqrexec/process_io.c:166,9'
          Dst:             __assert_fail
        - Src:             '../libqrexec/process_io.c:167,9'
          Dst:             __assert_fail
        - Src:             '../libqrexec/process_io.c:210,34'
          Dst:             waitpid
        - Src:             '../libqrexec/process_io.c:215,17'
          Dst:             fuzz_libvchan_send
        - Src:             '../libqrexec/process_io.c:215,17'
          Dst:             close_stdio
        - Src:             '../libqrexec/process_io.c:225,25'
          Dst:             send_exit_code
        - Src:             '../libqrexec/process_io.c:226,25'
          Dst:             handle_vchan_error
        - Src:             '../libqrexec/process_io.c:245,14'
          Dst:             fuzz_libvchan_is_open
        - Src:             '../libqrexec/process_io.c:246,18'
          Dst:             fuzz_libvchan_data_ready
        - Src:             '../libqrexec/process_io.c:247,18'
          Dst:             buffer_len
        - Src:             '../libqrexec/process_io.c:259,13'
          Dst:             close_stdio
        - Src:             '../libqrexec/process_io.c:269,17'
          Dst:             buffer_len
        - Src:             '../libqrexec/process_io.c:279,13'
          Dst:             fuzz_libvchan_buffer_space
        - Src:             '../libqrexec/process_io.c:290,28'
          Dst:             fuzz_libvchan_fd_for_select
        - Src:             '../libqrexec/process_io.c:293,14'
          Dst:             buffer_len
        - Src:             '../libqrexec/process_io.c:293,39'
          Dst:             fuzz_libvchan_data_ready
        - Src:             '../libqrexec/process_io.c:295,19'
          Dst:             ppoll
        - Src:             '../libqrexec/process_io.c:297,19'
          Dst:             ppoll
        - Src:             '../libqrexec/process_io.c:300,17'
          Dst:             __errno_location
        - Src:             '../libqrexec/process_io.c:311,17'
          Dst:             fuzz_libvchan_wait
        - Src:             '../libqrexec/process_io.c:312,17'
          Dst:             handle_vchan_error
        - Src:             '../libqrexec/process_io.c:315,13'
          Dst:             fuzz_libvchan_send
        - Src:             '../libqrexec/process_io.c:315,13'
          Dst:             close_stdio
        - Src:             '../libqrexec/process_io.c:318,17'
          Dst:             handle_remote_data_v2
        - Src:             '../libqrexec/process_io.c:327,17'
          Dst:             handle_vchan_error
        - Src:             '../libqrexec/process_io.c:330,17'
          Dst:             fuzz_libvchan_send
        - Src:             '../libqrexec/process_io.c:330,17'
          Dst:             close_stdio
        - Src:             '../libqrexec/process_io.c:340,21'
          Dst:             fuzz_libvchan_send
        - Src:             '../libqrexec/process_io.c:342,17'
          Dst:             close_stdio
        - Src:             '../libqrexec/process_io.c:346,21'
          Dst:             handle_input_v2
        - Src:             '../libqrexec/process_io.c:356,25'
          Dst:             close_stdio
        - Src:             '../libqrexec/process_io.c:358,25'
          Dst:             handle_vchan_error
        - Src:             '../libqrexec/process_io.c:362,21'
          Dst:             close_stdio
        - Src:             '../libqrexec/process_io.c:367,21'
          Dst:             handle_input_v2
        - Src:             '../libqrexec/process_io.c:371,21'
          Dst:             handle_vchan_error
        - Src:             '../libqrexec/process_io.c:374,21'
          Dst:             close_stderr
        - Src:             '../libqrexec/process_io.c:382,5'
          Dst:             fuzz_libvchan_send
        - Src:             '../libqrexec/process_io.c:382,5'
          Dst:             close_stdio
        - Src:             '../libqrexec/process_io.c:383,5'
          Dst:             close_stdio
        - Src:             '../libqrexec/process_io.c:384,5'
          Dst:             close_stderr
        - Src:             '../libqrexec/process_io.c:389,13'
          Dst:             waitpid
    - functionName:    handle_vchan_error
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/process_io.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - fuzz_exit
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/process_io.c:40,5'
          Dst:             fuzz_exit
    - functionName:    sigemptyset
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sigaddset
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sigprocmask
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    waitpid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_io
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/process_io.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - qrexec_process_io
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../libqrexec/process_io.c:90,12'
          Dst:             qrexec_process_io
    - functionName:    qubes_wait_for_vchan_connection_with_timeout
      functionSourceFile: '/src/qubes-os/qubes-core-qrexec/fuzz/../libqrexec/vchan_timeout.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - bool
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          278
      EdgeCount:       68
      CyclomaticComplexity: 14
      functionsReached:
        - __assert_fail
        - __errno_location
        - abort
        - clock_gettime
        - fuzz_libvchan_client_init_async_finish
        - fuzz_libvchan_wait
        - ppoll
      functionUses:    0
      BranchProfiles:
        - Branch String:   '../libqrexec/vchan_timeout.c:39,9'
          Branch Sides:    []
      Callsites:
        - Src:             '../libqrexec/vchan_timeout.c:12,9'
          Dst:             clock_gettime
        - Src:             '../libqrexec/vchan_timeout.c:16,5'
          Dst:             __assert_fail
        - Src:             '../libqrexec/vchan_timeout.c:24,17'
          Dst:             clock_gettime
        - Src:             '../libqrexec/vchan_timeout.c:28,13'
          Dst:             __assert_fail
        - Src:             '../libqrexec/vchan_timeout.c:39,35'
          Dst:             ppoll
        - Src:             '../libqrexec/vchan_timeout.c:41,21'
          Dst:             __errno_location
        - Src:             '../libqrexec/vchan_timeout.c:51,17'
          Dst:             abort
        - Src:             '../libqrexec/vchan_timeout.c:55,17'
          Dst:             fuzz_libvchan_wait
        - Src:             '../libqrexec/vchan_timeout.c:58,35'
          Dst:             fuzz_libvchan_client_init_async_finish
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
...
