---
Fuzzer filename: '/src/sudo/lib/iolog/./regress/fuzz/fuzz_iolog_timing.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    iolog_swapids
      functionSourceFile: '/src/sudo/lib/iolog/./regress/fuzz/fuzz_iolog_timing.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_conversation
      functionSourceFile: '/src/sudo/lib/iolog/./regress/fuzz/fuzz_iolog_timing.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          77
      EdgeCount:       29
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './regress/fuzz/fuzz_iolog_timing.c:55,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/sudo/lib/iolog/./regress/fuzz/fuzz_iolog_timing.c'
      linkageType:     externalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          143
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - close
        - fflush
        - fuzz_conversation
        - getenv
        - initprogname
        - iolog_close
        - iolog_open
        - iolog_read_timing_record
        - open
        - openat
        - rmdir
        - sudo_mkdtemp
        - sudo_warn_set_conversation_v1
        - unlinkat
        - write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:80,5'
          Dst:             initprogname
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:81,9'
          Dst:             getenv
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:82,2'
          Dst:             sudo_warn_set_conversation_v1
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:82,2'
          Dst:             fuzz_conversation
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:85,9'
          Dst:             sudo_mkdtemp
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:89,11'
          Dst:             open
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:93,10'
          Dst:             openat
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:97,9'
          Dst:             write
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:99,5'
          Dst:             close
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:103,10'
          Dst:             iolog_open
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:109,6'
          Dst:             iolog_read_timing_record
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:112,5'
          Dst:             iolog_close
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:117,6'
          Dst:             close
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:118,2'
          Dst:             unlinkat
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:119,2'
          Dst:             close
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:121,5'
          Dst:             rmdir
        - Src:             './regress/fuzz/fuzz_iolog_timing.c:122,5'
          Dst:             fflush
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    open
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openat
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    write
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unlinkat
      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:    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:    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:    iolog_close
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_close.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          171
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached:
        - __errno_location
        - fclose
        - gzclose
        - gzerror
        - gzflush
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './iolog_close.c:51,10'
          Dst:             gzflush
        - Src:             './iolog_close.c:54,17'
          Dst:             gzerror
        - Src:             './iolog_close.c:56,23'
          Dst:             __errno_location
        - Src:             './iolog_close.c:56,14'
          Dst:             strerror
        - Src:             './iolog_close.c:60,11'
          Dst:             gzclose
        - Src:             './iolog_close.c:64,42'
          Dst:             __errno_location
        - Src:             './iolog_close.c:64,33'
          Dst:             strerror
        - Src:             './iolog_close.c:68,9'
          Dst:             fclose
        - Src:             './iolog_close.c:71,25'
          Dst:             __errno_location
        - Src:             './iolog_close.c:71,16'
          Dst:             strerror
    - functionName:    gzflush
      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:    gzerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __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:    30
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gzclose
      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:    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:    iolog_open
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_open.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         79
      ICount:          439
      EdgeCount:       100
      CyclomaticComplexity: 23
      functionsReached:
        - __errno_location
        - close
        - fchown
        - fcntl
        - fdopen
        - gzdopen
        - iolog_fd_to_name
        - iolog_get_compress
        - iolog_get_gid
        - iolog_get_uid
        - iolog_openat
        - pread
        - sudo_debug_printf2_v1
        - sudo_lock_file_v1
        - unlinkat
      functionUses:    1
      BranchProfiles:
        - Branch String:   './iolog_open.c:124,3'
          Branch Sides:    []
      Callsites:
        - Src:             './iolog_open.c:54,29'
          Dst:             iolog_get_uid
        - Src:             './iolog_open.c:55,29'
          Dst:             iolog_get_gid
        - Src:             './iolog_open.c:64,2'
          Dst:             sudo_debug_printf2_v1
        - Src:             './iolog_open.c:68,17'
          Dst:             iolog_fd_to_name
        - Src:             './iolog_open.c:69,2'
          Dst:             sudo_debug_printf2_v1
        - Src:             './iolog_open.c:83,11'
          Dst:             iolog_openat
        - Src:             './iolog_open.c:85,10'
          Dst:             sudo_lock_file_v1
        - Src:             './iolog_open.c:88,3'
          Dst:             sudo_debug_printf2_v1
        - Src:             './iolog_open.c:90,3'
          Dst:             close
        - Src:             './iolog_open.c:96,7'
          Dst:             fchown
        - Src:             './iolog_open.c:97,7'
          Dst:             sudo_debug_printf2_v1
        - Src:             './iolog_open.c:101,21'
          Dst:             iolog_get_compress
        - Src:             './iolog_open.c:104,7'
          Dst:             pread
        - Src:             './iolog_open.c:115,10'
          Dst:             fcntl
        - Src:             './iolog_open.c:118,19'
          Dst:             gzdopen
        - Src:             './iolog_open.c:121,19'
          Dst:             fdopen
        - Src:             './iolog_open.c:131,20'
          Dst:             __errno_location
        - Src:             './iolog_open.c:132,3'
          Dst:             close
        - Src:             './iolog_open.c:133,3'
          Dst:             __errno_location
        - Src:             './iolog_open.c:144,12'
          Dst:             unlinkat
    - functionName:    fchown
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pread
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gzdopen
      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:    fdopen
      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:    iolog_openat
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_openat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          201
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - __errno_location
        - close
        - fchmodat
        - fstatat
        - iolog_get_dir_mode
        - iolog_get_file_mode
        - iolog_swapids
        - openat
        - umask
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './iolog_openat.c:47,35'
          Dst:             iolog_get_file_mode
        - Src:             './iolog_openat.c:48,34'
          Dst:             iolog_get_dir_mode
        - Src:             './iolog_openat.c:55,10'
          Dst:             umask
        - Src:             './iolog_openat.c:57,10'
          Dst:             openat
        - Src:             './iolog_openat.c:58,21'
          Dst:             __errno_location
        - Src:             './iolog_openat.c:61,6'
          Dst:             fstatat
        - Src:             './iolog_openat.c:64,7'
          Dst:             fchmodat
        - Src:             './iolog_openat.c:65,12'
          Dst:             openat
        - Src:             './iolog_openat.c:69,21'
          Dst:             __errno_location
        - Src:             './iolog_openat.c:71,6'
          Dst:             iolog_swapids
        - Src:             './iolog_openat.c:72,11'
          Dst:             openat
        - Src:             './iolog_openat.c:73,11'
          Dst:             iolog_swapids
        - Src:             './iolog_openat.c:76,7'
          Dst:             close
        - Src:             './iolog_openat.c:83,2'
          Dst:             umask
    - functionName:    umask
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fstatat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fchmodat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_read_timing_record
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_timing.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          111
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - iolog_eof
        - iolog_gets
        - iolog_parse_timing
        - strchr
        - sudo_warn_gettext_v1
        - sudo_warnx_nodebug_v1
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './iolog_timing.c:259,9'
          Dst:             iolog_gets
        - Src:             './iolog_timing.c:261,6'
          Dst:             iolog_eof
        - Src:             './iolog_timing.c:263,13'
          Dst:             sudo_warn_gettext_v1
        - Src:             './iolog_timing.c:263,2'
          Dst:             sudo_warnx_nodebug_v1
        - Src:             './iolog_timing.c:271,10'
          Dst:             strchr
        - Src:             './iolog_timing.c:278,10'
          Dst:             iolog_parse_timing
        - Src:             './iolog_timing.c:286,16'
          Dst:             sudo_warn_gettext_v1
        - Src:             './iolog_timing.c:286,5'
          Dst:             sudo_warnx_nodebug_v1
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_parse_timing
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_timing.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         58
      ICount:          327
      EdgeCount:       75
      CyclomaticComplexity: 19
      functionsReached:
        - __ctype_b_loc
        - __errno_location
        - iolog_parse_delay
        - strtoul
        - sudo_str2sig
      functionUses:    1
      BranchProfiles:
        - Branch String:   './iolog_timing.c:206,5'
          Branch Sides:    []
      Callsites:
        - Src:             './iolog_timing.c:189,13'
          Dst:             strtoul
        - Src:             './iolog_timing.c:190,24'
          Dst:             __ctype_b_loc
        - Src:             './iolog_timing.c:199,23'
          Dst:             __ctype_b_loc
        - Src:             './iolog_timing.c:203,15'
          Dst:             iolog_parse_delay
        - Src:             './iolog_timing.c:209,6'
          Dst:             sudo_str2sig
        - Src:             './iolog_timing.c:213,10'
          Dst:             strtoul
        - Src:             './iolog_timing.c:214,19'
          Dst:             __ctype_b_loc
        - Src:             './iolog_timing.c:219,20'
          Dst:             __ctype_b_loc
        - Src:             './iolog_timing.c:222,10'
          Dst:             strtoul
        - Src:             './iolog_timing.c:230,2'
          Dst:             __errno_location
        - Src:             './iolog_timing.c:231,10'
          Dst:             strtoul
        - Src:             './iolog_timing.c:235,6'
          Dst:             __errno_location
    - functionName:    strtoul
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __ctype_b_loc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_parse_delay
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_timing.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          349
      EdgeCount:       78
      CyclomaticComplexity: 17
      functionsReached:
        - __ctype_b_loc
        - sudo_debug_printf2_v1
        - sudo_strtonum
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './iolog_timing.c:99,19'
          Dst:             __ctype_b_loc
        - Src:             './iolog_timing.c:103,2'
          Dst:             sudo_debug_printf2_v1
        - Src:             './iolog_timing.c:109,29'
          Dst:             sudo_strtonum
        - Src:             './iolog_timing.c:111,2'
          Dst:             sudo_debug_printf2_v1
        - Src:             './iolog_timing.c:118,21'
          Dst:             __ctype_b_loc
        - Src:             './iolog_timing.c:123,2'
          Dst:             sudo_debug_printf2_v1
        - Src:             './iolog_timing.c:130,19'
          Dst:             __ctype_b_loc
        - Src:             './iolog_timing.c:134,2'
          Dst:             sudo_debug_printf2_v1
        - Src:             './iolog_timing.c:140,13'
          Dst:             sudo_strtonum
        - Src:             './iolog_timing.c:142,2'
          Dst:             sudo_debug_printf2_v1
        - Src:             './iolog_timing.c:163,12'
          Dst:             __ctype_b_loc
    - functionName:    iolog_adjust_delay
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_timing.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          170
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_fd_to_name
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          67
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - sudo_debug_printf2_v1
      functionUses:    1
      BranchProfiles:
        - Branch String:   './iolog_util.c:43,5'
          Branch Sides:    []
      Callsites:
        - Src:             './iolog_util.c:64,2'
          Dst:             sudo_debug_printf2_v1
    - functionName:    sudo_warn_gettext_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dgettext
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './fatal.c:332,11'
          Dst:             dgettext
    - functionName:    dgettext
      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:    sudo_warn_set_locale_func_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_warn_set_conversation_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_fatal_callback_deregister_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          83
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_fatal_callback_register_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          72
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_gai_vwarn_nodebug_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gai_strerror
        - warning
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './fatal.c:174,13'
          Dst:             gai_strerror
        - Src:             './fatal.c:174,5'
          Dst:             warning
    - functionName:    gai_strerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    warning
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          274
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - __errno_location
        - fputs
        - putc
        - sudo_getprogname
        - vasprintf
        - vfprintf
        - vsnprintf
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './fatal.c:181,29'
          Dst:             __errno_location
        - Src:             './fatal.c:194,22'
          Dst:             sudo_getprogname
        - Src:             './fatal.c:201,12'
          Dst:             vsnprintf
        - Src:             './fatal.c:205,11'
          Dst:             vasprintf
        - Src:             './fatal.c:228,15'
          Dst:             sudo_getprogname
        - Src:             './fatal.c:228,9'
          Dst:             fputs
        - Src:             './fatal.c:230,17'
          Dst:             fputs
        - Src:             './fatal.c:231,17'
          Dst:             vfprintf
        - Src:             './fatal.c:234,13'
          Dst:             fputs
        - Src:             './fatal.c:235,13'
          Dst:             fputs
        - Src:             './fatal.c:241,9'
          Dst:             putc
        - Src:             './fatal.c:249,5'
          Dst:             __errno_location
    - functionName:    vsnprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vasprintf
      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:    fputs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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:    putc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_gai_warn_nodebug_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gai_strerror
        - warning
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './fatal.c:167,13'
          Dst:             gai_strerror
        - Src:             './fatal.c:167,5'
          Dst:             warning
    - functionName:    sudo_vwarnx_nodebug_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - warning
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './fatal.c:138,5'
          Dst:             warning
    - functionName:    sudo_vwarn_nodebug_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - strerror
        - warning
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './fatal.c:132,22'
          Dst:             __errno_location
        - Src:             './fatal.c:132,13'
          Dst:             strerror
        - Src:             './fatal.c:132,5'
          Dst:             warning
    - functionName:    sudo_warnx_nodebug_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - warning
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './fatal.c:125,5'
          Dst:             warning
    - functionName:    sudo_warn_nodebug_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - strerror
        - warning
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './fatal.c:116,22'
          Dst:             __errno_location
        - Src:             './fatal.c:116,13'
          Dst:             strerror
        - Src:             './fatal.c:116,5'
          Dst:             warning
    - functionName:    do_cleanup
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          40
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_fatal_nodebug_v1
      functionSourceFile: '/src/sudo/lib/util/./fatal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - do_cleanup
        - exit
        - strerror
        - warning
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './fatal.c:76,22'
          Dst:             __errno_location
        - Src:             './fatal.c:76,13'
          Dst:             strerror
        - Src:             './fatal.c:76,5'
          Dst:             warning
        - Src:             './fatal.c:78,5'
          Dst:             do_cleanup
        - Src:             './fatal.c:79,5'
          Dst:             exit
    - functionName:    exit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_lock_region_v1
      functionSourceFile: '/src/sudo/lib/util/./locking.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          146
      EdgeCount:       30
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - lockf
        - lseek
        - sudo_debug_printf2_v1
      functionUses:    1
      BranchProfiles:
        - Branch String:   './locking.c:58,5'
          Branch Sides:    []
      Callsites:
        - Src:             './locking.c:60,6'
          Dst:             sudo_debug_printf2_v1
        - Src:             './locking.c:65,6'
          Dst:             sudo_debug_printf2_v1
        - Src:             './locking.c:70,6'
          Dst:             sudo_debug_printf2_v1
        - Src:             './locking.c:74,32'
          Dst:             lseek
        - Src:             './locking.c:75,7'
          Dst:             lseek
        - Src:             './locking.c:76,7'
          Dst:             sudo_debug_printf2_v1
        - Src:             './locking.c:83,6'
          Dst:             sudo_debug_printf2_v1
        - Src:             './locking.c:85,6'
          Dst:             __errno_location
        - Src:             './locking.c:88,10'
          Dst:             lockf
        - Src:             './locking.c:90,6'
          Dst:             lseek
        - Src:             './locking.c:91,6'
          Dst:             sudo_debug_printf2_v1
    - functionName:    lseek
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lockf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_lock_file_v1
      functionSourceFile: '/src/sudo/lib/util/./locking.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sudo_lock_region_v1
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './locking.c:44,12'
          Dst:             sudo_lock_region_v1
    - functionName:    sudo_mkstemps
      functionSourceFile: '/src/sudo/lib/util/./mktemp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mktemp_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './mktemp.c:165,9'
          Dst:             mktemp_internal
    - functionName:    mktemp_internal
      functionSourceFile: '/src/sudo/lib/util/./mktemp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          277
      EdgeCount:       64
      CyclomaticComplexity: 16
      functionsReached:
        - __errno_location
        - mkdirat
        - openat
        - strlen
        - sudo_arc4random_buf
      functionUses:    5
      BranchProfiles:
        - Branch String:   './mktemp.c:99,3'
          Branch Sides:    []
      Callsites:
        - Src:             './mktemp.c:63,8'
          Dst:             strlen
        - Src:             './mktemp.c:65,3'
          Dst:             __errno_location
        - Src:             './mktemp.c:73,3'
          Dst:             __errno_location
        - Src:             './mktemp.c:78,3'
          Dst:             __errno_location
        - Src:             './mktemp.c:94,4'
          Dst:             sudo_arc4random_buf
        - Src:             './mktemp.c:101,9'
          Dst:             openat
        - Src:             './mktemp.c:102,20'
          Dst:             __errno_location
        - Src:             './mktemp.c:106,8'
          Dst:             mkdirat
        - Src:             './mktemp.c:108,8'
          Dst:             __errno_location
        - Src:             './mktemp.c:114,2'
          Dst:             __errno_location
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mkdirat
      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:    sudo_mkstemp
      functionSourceFile: '/src/sudo/lib/util/./mktemp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mktemp_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './mktemp.c:151,9'
          Dst:             mktemp_internal
    - functionName:    sudo_mkostempsat
      functionSourceFile: '/src/sudo/lib/util/./mktemp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mktemp_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './mktemp.c:137,9'
          Dst:             mktemp_internal
    - functionName:    sudo_mkdtempat
      functionSourceFile: '/src/sudo/lib/util/./mktemp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mktemp_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './mktemp.c:129,6'
          Dst:             mktemp_internal
    - functionName:    sudo_mkdtemp
      functionSourceFile: '/src/sudo/lib/util/./mktemp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mktemp_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './mktemp.c:121,6'
          Dst:             mktemp_internal
    - functionName:    initprogname
      functionSourceFile: '/src/sudo/lib/util/./progname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - initprogname2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './progname.c:94,5'
          Dst:             initprogname2
    - functionName:    initprogname2
      functionSourceFile: '/src/sudo/lib/util/./progname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          157
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - strcmp
        - sudo_basename_v1
        - sudo_getprogname
        - sudo_setprogname
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './progname.c:62,21'
          Dst:             sudo_getprogname
        - Src:             './progname.c:66,9'
          Dst:             sudo_basename_v1
        - Src:             './progname.c:80,10'
          Dst:             strcmp
        - Src:             './progname.c:87,2'
          Dst:             sudo_setprogname
    - functionName:    sudo_getprogname
      functionSourceFile: '/src/sudo/lib/util/./progname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_setprogname
      functionSourceFile: '/src/sudo/lib/util/./progname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sudo_basename_v1
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './progname.c:51,18'
          Dst:             sudo_basename_v1
    - functionName:    sudo_str2sig
      functionSourceFile: '/src/sudo/lib/util/./str2sig.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         55
      ICount:          332
      EdgeCount:       74
      CyclomaticComplexity: 21
      functionsReached:
        - __ctype_b_loc
        - __errno_location
        - __libc_current_sigrtmax
        - __libc_current_sigrtmin
        - strcasecmp
        - strcmp
        - strncmp
        - sudo_strtonum
        - sysconf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './str2sig.c:91,9'
          Dst:             __ctype_b_loc
        - Src:             './str2sig.c:92,15'
          Dst:             sudo_strtonum
        - Src:             './str2sig.c:101,9'
          Dst:             strncmp
        - Src:             './str2sig.c:103,16'
          Dst:             __libc_current_sigrtmin
        - Src:             './str2sig.c:107,10'
          Dst:             __ctype_b_loc
        - Src:             './str2sig.c:109,22'
          Dst:             sysconf
        - Src:             './str2sig.c:116,17'
          Dst:             __libc_current_sigrtmin
        - Src:             './str2sig.c:124,9'
          Dst:             strncmp
        - Src:             './str2sig.c:126,16'
          Dst:             __libc_current_sigrtmax
        - Src:             './str2sig.c:130,10'
          Dst:             __ctype_b_loc
        - Src:             './str2sig.c:132,22'
          Dst:             sysconf
        - Src:             './str2sig.c:139,17'
          Dst:             __libc_current_sigrtmax
        - Src:             './str2sig.c:149,6'
          Dst:             strcmp
        - Src:             './str2sig.c:159,10'
          Dst:             strcasecmp
        - Src:             './str2sig.c:166,5'
          Dst:             __errno_location
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __libc_current_sigrtmin
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sysconf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __libc_current_sigrtmax
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcasecmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_strtonum
      functionSourceFile: '/src/sudo/lib/util/./strtonum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - sudo_strtonumx
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './strtonum.c:177,11'
          Dst:             sudo_strtonumx
        - Src:             './strtonum.c:180,2'
          Dst:             __errno_location
    - functionName:    sudo_strtonumx
      functionSourceFile: '/src/sudo/lib/util/./strtonum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          487
      EdgeCount:       113
      CyclomaticComplexity: 23
      functionsReached:
        - __ctype_b_loc
        - __errno_location
      functionUses:    1
      BranchProfiles:
        - Branch String:   './strtonum.c:59,5'
          Branch Sides:    []
        - Branch String:   './strtonum.c:132,5'
          Branch Sides:    []
      Callsites:
        - Src:             './strtonum.c:58,14'
          Dst:             __ctype_b_loc
        - Src:             './strtonum.c:89,11'
          Dst:             __ctype_b_loc
        - Src:             './strtonum.c:96,12'
          Dst:             __ctype_b_loc
        - Src:             './strtonum.c:111,11'
          Dst:             __ctype_b_loc
        - Src:             './strtonum.c:118,12'
          Dst:             __ctype_b_loc
        - Src:             './strtonum.c:140,2'
          Dst:             __errno_location
        - Src:             './strtonum.c:146,2'
          Dst:             __errno_location
        - Src:             './strtonum.c:152,2'
          Dst:             __errno_location
    - functionName:    sudo_debug_get_fds_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1177
      functionLinenumberEnd: 1178
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_update_fd_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1172
      functionLinenumberEnd: 1173
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_set_active_instance_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1166
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_get_active_instance_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1160
      functionLinenumberEnd: 1161
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_execve2_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1155
      functionLinenumberEnd: 1156
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_printf2_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1149
      functionLinenumberEnd: 1150
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_vprintf2_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1136
      functionLinenumberEnd: 1137
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_needed_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1129
      functionLinenumberEnd: 1130
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_write2_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1124
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_ptr_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1118
      functionLinenumberEnd: 1119
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_str_masked_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1112
      functionLinenumberEnd: 1113
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_str_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1106
      functionLinenumberEnd: 1107
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_bool_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1100
      functionLinenumberEnd: 1101
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_mode_t_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1094
      functionLinenumberEnd: 1095
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_time_t_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1088
      functionLinenumberEnd: 1089
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_ssize_t_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1082
      functionLinenumberEnd: 1083
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_size_t_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1076
      functionLinenumberEnd: 1077
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_id_t_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1070
      functionLinenumberEnd: 1071
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_long_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1064
      functionLinenumberEnd: 1065
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_uint_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1058
      functionLinenumberEnd: 1059
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_int_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1052
      functionLinenumberEnd: 1053
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_exit_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1046
      functionLinenumberEnd: 1047
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_enter_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1040
      functionLinenumberEnd: 1041
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_fork_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1033
      functionLinenumberEnd: 1034
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fork
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './sudo_debug.c:1034,12'
          Dst:             fork
    - functionName:    fork
      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:    sudo_debug_get_instance_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1027
      functionLinenumberEnd: 1028
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_parse_flags_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1021
      functionLinenumberEnd: 1022
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_deregister_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1014
      functionLinenumberEnd: 1015
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_register_v1
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1008
      functionLinenumberEnd: 1009
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sudo_debug_register_v2
      functionSourceFile: '/src/sudo/lib/util/./sudo_debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1001
      functionLinenumberEnd: 1002
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_get_flush
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_get_compress
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_get_dir_mode
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_get_file_mode
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_get_gid
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_get_uid
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_get_maxseq
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_set_flush
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       5
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_set_compress
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       5
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_set_mode
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_set_gid
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       5
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_set_owner
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_set_maxseq
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_set_defaults
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_conf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iolog_eof
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_eof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - feof
        - gzeof
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './iolog_eof.c:44,8'
          Dst:             gzeof
        - Src:             './iolog_eof.c:47,8'
          Dst:             feof
    - functionName:    gzeof
      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:    feof
      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:    iolog_gets
      functionSourceFile: '/src/sudo/lib/iolog/./iolog_gets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          155
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - fgets
        - gzerror
        - gzgets
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './iolog_gets.c:48,2'
          Dst:             __errno_location
        - Src:             './iolog_gets.c:50,25'
          Dst:             __errno_location
        - Src:             './iolog_gets.c:50,16'
          Dst:             strerror
        - Src:             './iolog_gets.c:56,13'
          Dst:             gzgets
        - Src:             './iolog_gets.c:59,13'
          Dst:             gzerror
        - Src:             './iolog_gets.c:61,26'
          Dst:             __errno_location
        - Src:             './iolog_gets.c:61,17'
          Dst:             strerror
        - Src:             './iolog_gets.c:67,13'
          Dst:             fgets
        - Src:             './iolog_gets.c:69,22'
          Dst:             __errno_location
        - Src:             './iolog_gets.c:69,13'
          Dst:             strerror
    - functionName:    gzgets
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fgets
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chacha_encrypt_bytes
      functionSourceFile: '/src/sudo/lib/util/./chacha_private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          1588
      EdgeCount:       67
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chacha_ivsetup
      functionSourceFile: '/src/sudo/lib/util/./chacha_private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          76
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chacha_keysetup
      functionSourceFile: '/src/sudo/lib/util/./chacha_private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          391
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _rs_init
      functionSourceFile: '/src/sudo/lib/util/./arc4random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chacha_ivsetup
        - chacha_keysetup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './arc4random.c:85,2'
          Dst:             chacha_keysetup
        - Src:             './arc4random.c:86,2'
          Dst:             chacha_ivsetup
    - functionName:    _rs_stir
      functionSourceFile: '/src/sudo/lib/util/./arc4random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          45
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - _rs_init
        - _rs_rekey
        - explicit_bzero
        - getentropy
        - sudo_fatal_nodebug_v1
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './arc4random.c:94,6'
          Dst:             getentropy
        - Src:             './arc4random.c:95,3'
          Dst:             sudo_fatal_nodebug_v1
        - Src:             './arc4random.c:99,3'
          Dst:             _rs_init
        - Src:             './arc4random.c:101,3'
          Dst:             _rs_rekey
        - Src:             './arc4random.c:102,2'
          Dst:             explicit_bzero
    - functionName:    getentropy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _rs_rekey
      functionSourceFile: '/src/sudo/lib/util/./arc4random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - _rs_init
        - chacha_encrypt_bytes
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './arc4random.c:130,2'
          Dst:             chacha_encrypt_bytes
        - Src:             './arc4random.c:140,2'
          Dst:             _rs_init
    - functionName:    explicit_bzero
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _rs_stir_if_needed
      functionSourceFile: '/src/sudo/lib/util/./arc4random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          54
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - _rs_stir
        - getpid
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './arc4random.c:114,14'
          Dst:             getpid
        - Src:             './arc4random.c:118,3'
          Dst:             _rs_stir
    - 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:    _rs_random_buf
      functionSourceFile: '/src/sudo/lib/util/./arc4random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - _rs_rekey
        - _rs_stir_if_needed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './arc4random.c:152,2'
          Dst:             _rs_stir_if_needed
        - Src:             './arc4random.c:164,4'
          Dst:             _rs_rekey
    - functionName:    sudo_arc4random_buf
      functionSourceFile: '/src/sudo/lib/util/./arc4random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _rs_random_buf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './arc4random.c:197,2'
          Dst:             _rs_random_buf
    - functionName:    _rs_random_u32
      functionSourceFile: '/src/sudo/lib/util/./arc4random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _rs_rekey
        - _rs_stir_if_needed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './arc4random.c:173,2'
          Dst:             _rs_stir_if_needed
        - Src:             './arc4random.c:175,3'
          Dst:             _rs_rekey
    - functionName:    sudo_arc4random
      functionSourceFile: '/src/sudo/lib/util/./arc4random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _rs_random_u32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './arc4random.c:188,2'
          Dst:             _rs_random_u32
    - functionName:    sudo_basename_v1
      functionSourceFile: '/src/sudo/lib/util/./basename.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strrchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './basename.c:41,17'
          Dst:             strrchr
    - functionName:    strrchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
...
