---
Fuzzer filename: '/src/libvncserver/test/fuzz_server.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/libvncserver/test/fuzz_server.c'
      linkageType:     externalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - rfbClientConnectionGone
        - rfbGetScreen
        - rfbInitServerWithPthreadsAndZRLE
        - rfbNewClient
        - rfbProcessClientMessage
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'test/fuzz_server.c:38,16'
          Dst:             rfbGetScreen
        - Src:             'test/fuzz_server.c:40,9'
          Dst:             rfbInitServerWithPthreadsAndZRLE
        - Src:             'test/fuzz_server.c:43,23'
          Dst:             rfbNewClient
        - Src:             'test/fuzz_server.c:49,9'
          Dst:             rfbProcessClientMessage
        - Src:             'test/fuzz_server.c:51,5'
          Dst:             rfbClientConnectionGone
    - functionName:    clientOutput
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         51
      ICount:          322
      EdgeCount:       69
      CyclomaticComplexity: 20
      functionsReached:
        - pthread_cond_wait
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbDecrClientRef
        - rfbIncrClientRef
        - rfbSendFramebufferUpdate
        - sraRgnAnd
        - sraRgnCreateRgn
        - sraRgnDestroy
        - sraRgnEmpty
        - usleep
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:470,11'
          Dst:             usleep
        - Src:             'src/libvncserver/main.c:474,3'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:476,7'
          Dst:             sraRgnEmpty
        - Src:             'src/libvncserver/main.c:479,17'
          Dst:             sraRgnEmpty
        - Src:             'src/libvncserver/main.c:479,17'
          Dst:             sraRgnEmpty
        - Src:             'src/libvncserver/main.c:481,20'
          Dst:             sraRgnCreateRgn
        - Src:             'src/libvncserver/main.c:482,20'
          Dst:             sraRgnAnd
        - Src:             'src/libvncserver/main.c:483,5'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/main.c:488,4'
          Dst:             pthread_cond_wait
        - Src:             'src/libvncserver/main.c:491,3'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:496,2'
          Dst:             usleep
        - Src:             'src/libvncserver/main.c:502,9'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:503,17'
          Dst:             sraRgnCreateRgn
        - Src:             'src/libvncserver/main.c:504,9'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:507,2'
          Dst:             rfbIncrClientRef
        - Src:             'src/libvncserver/main.c:508,9'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:509,9'
          Dst:             rfbSendFramebufferUpdate
        - Src:             'src/libvncserver/main.c:510,9'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:511,2'
          Dst:             rfbDecrClientRef
        - Src:             'src/libvncserver/main.c:513,2'
          Dst:             sraRgnDestroy
    - functionName:    usleep
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_mutex_lock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    49
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_cond_wait
      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:    pthread_mutex_unlock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    71
      BranchProfiles:  []
      Callsites:       []
    - functionName:    listenerRun
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 685
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         44
      ICount:          345
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached:
        - accept
        - read
        - rfbHttpCheckFds
        - rfbLogPerror
        - rfbNewClient
        - rfbStartOnHoldClient
        - select
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:653,13'
          Dst:             select
        - Src:             'src/libvncserver/main.c:654,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/main.c:663,13'
          Dst:             read
        - Src:             'src/libvncserver/main.c:672,18'
          Dst:             accept
        - Src:             'src/libvncserver/main.c:674,18'
          Dst:             accept
        - Src:             'src/libvncserver/main.c:677,9'
          Dst:             rfbNewClient
        - Src:             'src/libvncserver/main.c:679,4'
          Dst:             rfbStartOnHoldClient
        - Src:             'src/libvncserver/main.c:682,9'
          Dst:             rfbHttpCheckFds
    - functionName:    select
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbLogPerror
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - strerror
      functionUses:    106
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:276,38'
          Dst:             __errno_location
        - Src:             'src/libvncserver/main.c:276,29'
          Dst:             strerror
    - functionName:    read
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    accept
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStartOnHoldClient
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 691
      functionLinenumberEnd: 709
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - clientInput
        - fcntl
        - pipe
        - pthread_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:696,13'
          Dst:             pipe
        - Src:             'src/libvncserver/main.c:700,9'
          Dst:             fcntl
        - Src:             'src/libvncserver/main.c:702,9'
          Dst:             pthread_create
        - Src:             'src/libvncserver/main.c:702,9'
          Dst:             clientInput
    - functionName:    pipe
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clientInput
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         48
      ICount:          400
      EdgeCount:       62
      CyclomaticComplexity: 16
      functionsReached:
        - clientOutput
        - close
        - pthread_cond_signal
        - pthread_create
        - pthread_join
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - read
        - rfbClientConnectionGone
        - rfbLogPerror
        - rfbProcessClientMessage
        - rfbSendFileTransferChunk
        - select
        - webSocketsHasDataInBuffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:526,5'
          Dst:             pthread_create
        - Src:             'src/libvncserver/main.c:526,5'
          Dst:             clientOutput
        - Src:             'src/libvncserver/main.c:563,6'
          Dst:             select
        - Src:             'src/libvncserver/main.c:566,6'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/main.c:571,13'
          Dst:             rfbSendFileTransferChunk
        - Src:             'src/libvncserver/main.c:580,13'
          Dst:             read
        - Src:             'src/libvncserver/main.c:587,13'
          Dst:             rfbSendFileTransferChunk
        - Src:             'src/libvncserver/main.c:593,17'
          Dst:             rfbProcessClientMessage
        - Src:             'src/libvncserver/main.c:594,22'
          Dst:             webSocketsHasDataInBuffer
        - Src:             'src/libvncserver/main.c:602,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:603,5'
          Dst:             pthread_cond_signal
        - Src:             'src/libvncserver/main.c:604,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:605,5'
          Dst:             pthread_join
        - Src:             'src/libvncserver/main.c:608,5'
          Dst:             close
        - Src:             'src/libvncserver/main.c:611,5'
          Dst:             rfbClientConnectionGone
    - functionName:    pthread_create
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_cond_signal
      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:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_join
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      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:    38
      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:    36
      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:    rfbDefaultLog
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - fflush
        - fprintf
        - localtime
        - pthread_mutex_init
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - strftime
        - time
        - vfprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:245,7'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/main.c:249,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:252,5'
          Dst:             time
        - Src:             'src/libvncserver/main.c:253,40'
          Dst:             localtime
        - Src:             'src/libvncserver/main.c:253,5'
          Dst:             strftime
        - Src:             'src/libvncserver/main.c:254,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/main.c:256,5'
          Dst:             vfprintf
        - Src:             'src/libvncserver/main.c:257,5'
          Dst:             fflush
        - Src:             'src/libvncserver/main.c:260,5'
          Dst:             pthread_mutex_unlock
    - functionName:    pthread_mutex_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    time
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    localtime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strftime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    25
      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:    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:    rfbRunEventLoop
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1354
      functionLinenumberEnd: 1384
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          96
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - fcntl
        - listenerRun
        - pipe
        - pthread_create
        - rfbIsActive
        - rfbProcessEvents
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:1364,13'
          Dst:             pipe
        - Src:             'src/libvncserver/main.c:1368,9'
          Dst:             fcntl
        - Src:             'src/libvncserver/main.c:1370,8'
          Dst:             pthread_create
        - Src:             'src/libvncserver/main.c:1370,8'
          Dst:             listenerRun
        - Src:             'src/libvncserver/main.c:1382,9'
          Dst:             rfbIsActive
        - Src:             'src/libvncserver/main.c:1383,5'
          Dst:             rfbProcessEvents
    - functionName:    rfbIsActive
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1349
      functionLinenumberEnd: 1350
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbProcessEvents
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1268
      functionLinenumberEnd: 1294
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          85
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - rfbCheckFds
        - rfbClientConnectionGone
        - rfbClientIteratorHead
        - rfbClientIteratorNext
        - rfbGetClientIteratorWithClosed
        - rfbHttpCheckFds
        - rfbReleaseClientIterator
        - rfbUpdateClient
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:1278,3'
          Dst:             rfbCheckFds
        - Src:             'src/libvncserver/main.c:1279,3'
          Dst:             rfbHttpCheckFds
        - Src:             'src/libvncserver/main.c:1281,7'
          Dst:             rfbGetClientIteratorWithClosed
        - Src:             'src/libvncserver/main.c:1282,6'
          Dst:             rfbClientIteratorHead
        - Src:             'src/libvncserver/main.c:1284,14'
          Dst:             rfbUpdateClient
        - Src:             'src/libvncserver/main.c:1286,8'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/main.c:1288,7'
          Dst:             rfbClientConnectionGone
        - Src:             'src/libvncserver/main.c:1292,3'
          Dst:             rfbReleaseClientIterator
    - functionName:    rfbUpdateClient
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1299
      functionLinenumberEnd: 1346
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         69
      ICount:          438
      EdgeCount:       94
      CyclomaticComplexity: 27
      functionsReached:
        - gettimeofday
        - rfbSendFramebufferUpdate
        - sraRgnEmpty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:1304,56'
          Dst:             sraRgnEmpty
        - Src:             'src/libvncserver/main.c:1304,56'
          Dst:             sraRgnEmpty
        - Src:             'src/libvncserver/main.c:1305,10'
          Dst:             sraRgnEmpty
        - Src:             'src/libvncserver/main.c:1308,11'
          Dst:             rfbSendFramebufferUpdate
        - Src:             'src/libvncserver/main.c:1310,9'
          Dst:             gettimeofday
        - Src:             'src/libvncserver/main.c:1314,9'
          Dst:             gettimeofday
        - Src:             'src/libvncserver/main.c:1320,11'
          Dst:             rfbSendFramebufferUpdate
        - Src:             'src/libvncserver/main.c:1327,9'
          Dst:             gettimeofday
        - Src:             'src/libvncserver/main.c:1332,9'
          Dst:             gettimeofday
    - functionName:    gettimeofday
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbShutdownServer
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1200
      functionLinenumberEnd: 1250
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          123
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - close
        - pthread_join
        - rfbClientConnectionGone
        - rfbClientIteratorNext
        - rfbCloseClient
        - rfbGetClientIterator
        - rfbHttpShutdownSockets
        - rfbReleaseClientIterator
        - rfbShutdownSockets
        - write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:1202,33'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/main.c:1203,38'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/main.c:1206,16'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/main.c:1209,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/main.c:1215,7'
          Dst:             pthread_join
        - Src:             'src/libvncserver/main.c:1221,7'
          Dst:             rfbClientConnectionGone
        - Src:             'src/libvncserver/main.c:1230,5'
          Dst:             rfbReleaseClientIterator
        - Src:             'src/libvncserver/main.c:1233,3'
          Dst:             rfbHttpShutdownSockets
        - Src:             'src/libvncserver/main.c:1234,3'
          Dst:             rfbShutdownSockets
        - Src:             'src/libvncserver/main.c:1242,7'
          Dst:             write
        - Src:             'src/libvncserver/main.c:1244,7'
          Dst:             pthread_join
        - Src:             'src/libvncserver/main.c:1246,7'
          Dst:             close
        - Src:             'src/libvncserver/main.c:1247,7'
          Dst:             close
    - 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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitServerWithPthreadsAndZRLE
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1191
      functionLinenumberEnd: 1198
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbHttpInitSockets
        - rfbInitSockets
        - signal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:1192,3'
          Dst:             rfbInitSockets
        - Src:             'src/libvncserver/main.c:1193,3'
          Dst:             rfbHttpInitSockets
        - Src:             'src/libvncserver/main.c:1196,5'
          Dst:             signal
    - functionName:    signal
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbScreenCleanup
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1156
      functionLinenumberEnd: 1188
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          100
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - pthread_mutex_destroy
        - rfbClientConnectionGone
        - rfbClientIteratorNext
        - rfbFreeCursor
        - rfbGetClientIterator
        - rfbReleaseClientIterator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:1157,26'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/main.c:1158,33'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/main.c:1160,12'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/main.c:1161,5'
          Dst:             rfbClientConnectionGone
        - Src:             'src/libvncserver/main.c:1164,3'
          Dst:             rfbReleaseClientIterator
        - Src:             'src/libvncserver/main.c:1169,3'
          Dst:             pthread_mutex_destroy
        - Src:             'src/libvncserver/main.c:1172,7'
          Dst:             rfbFreeCursor
    - functionName:    pthread_mutex_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbNewFramebuffer
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1075
      functionLinenumberEnd: 1151
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          242
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - memcmp
        - pthread_cond_signal
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbClientIteratorNext
        - rfbGetClientIterator
        - rfbInitServerFormat
        - rfbReleaseClientIterator
        - sraRgnCreateRect
        - sraRgnDestroy
        - sraRgnMakeEmpty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:1082,14'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/main.c:1083,16'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/main.c:1084,7'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:1086,3'
          Dst:             rfbReleaseClientIterator
        - Src:             'src/libvncserver/main.c:1089,3'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:1103,3'
          Dst:             rfbInitServerFormat
        - Src:             'src/libvncserver/main.c:1105,7'
          Dst:             memcmp
        - Src:             'src/libvncserver/main.c:1120,14'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/main.c:1121,16'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/main.c:1131,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:1132,5'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/main.c:1133,26'
          Dst:             sraRgnCreateRect
        - Src:             'src/libvncserver/main.c:1134,5'
          Dst:             sraRgnMakeEmpty
        - Src:             'src/libvncserver/main.c:1141,5'
          Dst:             pthread_cond_signal
        - Src:             'src/libvncserver/main.c:1142,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:1145,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:1147,3'
          Dst:             rfbReleaseClientIterator
        - Src:             'src/libvncserver/main.c:1150,3'
          Dst:             pthread_mutex_unlock
    - functionName:    rfbInitServerFormat
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 884
      functionLinenumberEnd: 922
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          172
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultGetExtDesktopScreen
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 858
      functionLinenumberEnd: 871
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          56
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultNumberOfExtDesktopScreens
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 854
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultSetDesktopSize
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 874
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultNewClientHook
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 848
      functionLinenumberEnd: 849
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultGetCursorPtr
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultSetXCutText
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 754
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultKbdAddEvent
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 721
      functionLinenumberEnd: 722
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - char
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultPasswordCheck
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 792
      functionLinenumberEnd: 817
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          101
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
        - rfbDecryptPasswdFromFile
        - rfbEncryptBytes
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:794,16'
          Dst:             rfbDecryptPasswdFromFile
        - Src:             'src/libvncserver/main.c:801,3'
          Dst:             rfbEncryptBytes
        - Src:             'src/libvncserver/main.c:804,12'
          Dst:             strlen
        - Src:             'src/libvncserver/main.c:810,7'
          Dst:             memcmp
    - 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:    49
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbGetScreen
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 927
      functionLinenumberEnd: 1061
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          319
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - gethostname
        - htonl
        - pthread_mutex_init
        - rfbClientListInit
        - rfbInitServerFormat
        - rfbProcessArguments
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:928,28'
          Dst:             calloc
        - Src:             'src/libvncserver/main.c:933,6'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/main.c:993,30'
          Dst:             htonl
        - Src:             'src/libvncserver/main.c:1005,8'
          Dst:             rfbProcessArguments
        - Src:             'src/libvncserver/main.c:1016,4'
          Dst:             gethostname
        - Src:             'src/libvncserver/main.c:1023,4'
          Dst:             rfbInitServerFormat
        - Src:             'src/libvncserver/main.c:1031,4'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/main.c:1058,4'
          Dst:             rfbClientListInit
    - functionName:    calloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    24
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gethostname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDoNothingWithClient
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 844
      functionLinenumberEnd: 845
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultPtrAddEvent
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 726
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          125
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbClientIteratorNext
        - rfbGetClientIterator
        - rfbReleaseClientIterator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:732,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:735,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:742,16'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/main.c:743,28'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/main.c:748,5'
          Dst:             rfbReleaseClientIterator
    - functionName:    rfbCheckPasswordByList
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 841
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          96
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
        - rfbEncryptBytes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:829,5'
          Dst:             rfbEncryptBytes
        - Src:             'src/libvncserver/main.c:831,9'
          Dst:             memcmp
    - functionName:    rfbRefuseOnHoldClient
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 714
      functionLinenumberEnd: 717
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rfbClientConnectionGone
        - rfbCloseClient
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:715,5'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/main.c:716,5'
          Dst:             rfbClientConnectionGone
    - functionName:    rfbMarkRectAsModified
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          164
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - rfbMarkRegionAsModified
        - rfbScaledScreenUpdate
        - sraRgnCreateRect
        - sraRgnDestroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:445,4'
          Dst:             rfbScaledScreenUpdate
        - Src:             'src/libvncserver/main.c:447,13'
          Dst:             sraRgnCreateRect
        - Src:             'src/libvncserver/main.c:448,4'
          Dst:             rfbMarkRegionAsModified
        - Src:             'src/libvncserver/main.c:449,4'
          Dst:             sraRgnDestroy
    - functionName:    rfbMarkRegionAsModified
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_cond_signal
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbClientIteratorNext
        - rfbGetClientIterator
        - rfbReleaseClientIterator
        - sraRgnOr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:417,13'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/main.c:418,14'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/main.c:419,6'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:420,6'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/main.c:421,6'
          Dst:             pthread_cond_signal
        - Src:             'src/libvncserver/main.c:422,6'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:425,4'
          Dst:             rfbReleaseClientIterator
    - functionName:    rfbScheduleCopyRect
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 406
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rfbScheduleCopyRegion
        - sraRgnCreateRect
        - sraRgnDestroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:407,25'
          Dst:             sraRgnCreateRect
        - Src:             'src/libvncserver/main.c:408,3'
          Dst:             rfbScheduleCopyRegion
        - Src:             'src/libvncserver/main.c:409,3'
          Dst:             sraRgnDestroy
    - functionName:    rfbScheduleCopyRegion
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          301
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - pthread_cond_signal
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbClientIteratorNext
        - rfbGetClientIterator
        - rfbReleaseClientIterator
        - sraRgnAnd
        - sraRgnCreateRect
        - sraRgnCreateRgn
        - sraRgnDestroy
        - sraRgnEmpty
        - sraRgnMakeEmpty
        - sraRgnOffset
        - sraRgnOr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:285,13'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/main.c:286,14'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/main.c:287,6'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:290,12'
          Dst:             sraRgnEmpty
        - Src:             'src/libvncserver/main.c:295,7'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/main.c:296,7'
          Dst:             sraRgnMakeEmpty
        - Src:             'src/libvncserver/main.c:300,28'
          Dst:             sraRgnCreateRgn
        - Src:             'src/libvncserver/main.c:301,7'
          Dst:             sraRgnOffset
        - Src:             'src/libvncserver/main.c:302,7'
          Dst:             sraRgnAnd
        - Src:             'src/libvncserver/main.c:303,7'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/main.c:304,7'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/main.c:308,8'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/main.c:315,29'
          Dst:             sraRgnCreateRgn
        - Src:             'src/libvncserver/main.c:316,8'
          Dst:             sraRgnOffset
        - Src:             'src/libvncserver/main.c:317,8'
          Dst:             sraRgnAnd
        - Src:             'src/libvncserver/main.c:318,8'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/main.c:319,8'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/main.c:333,26'
          Dst:             sraRgnCreateRect
        - Src:             'src/libvncserver/main.c:334,11'
          Dst:             sraRgnAnd
        - Src:             'src/libvncserver/main.c:335,15'
          Dst:             sraRgnEmpty
        - Src:             'src/libvncserver/main.c:340,14'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/main.c:342,11'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/main.c:344,26'
          Dst:             sraRgnCreateRect
        - Src:             'src/libvncserver/main.c:346,11'
          Dst:             sraRgnOffset
        - Src:             'src/libvncserver/main.c:347,11'
          Dst:             sraRgnAnd
        - Src:             'src/libvncserver/main.c:348,15'
          Dst:             sraRgnEmpty
        - Src:             'src/libvncserver/main.c:354,14'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/main.c:356,11'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/main.c:360,8'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/main.c:362,6'
          Dst:             pthread_cond_signal
        - Src:             'src/libvncserver/main.c:363,6'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:366,4'
          Dst:             rfbReleaseClientIterator
    - functionName:    rfbDoCopyRect
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 403
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rfbDoCopyRegion
        - sraRgnCreateRect
        - sraRgnDestroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:400,25'
          Dst:             sraRgnCreateRect
        - Src:             'src/libvncserver/main.c:401,3'
          Dst:             rfbDoCopyRegion
        - Src:             'src/libvncserver/main.c:402,3'
          Dst:             sraRgnDestroy
    - functionName:    rfbDoCopyRegion
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          217
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - rfbScheduleCopyRegion
        - sraRgnGetReverseIterator
        - sraRgnIteratorNext
        - sraRgnReleaseIterator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:378,8'
          Dst:             sraRgnGetReverseIterator
        - Src:             'src/libvncserver/main.c:379,10'
          Dst:             sraRgnIteratorNext
        - Src:             'src/libvncserver/main.c:393,4'
          Dst:             sraRgnReleaseIterator
        - Src:             'src/libvncserver/main.c:395,4'
          Dst:             rfbScheduleCopyRegion
    - functionName:    rfbLogEnable
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbGetExtensionClientData
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDisableExtension
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          92
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbEnableExtension
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:174,12'
          Dst:             calloc
    - functionName:    rfbReleaseExtensionIterator
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_mutex_unlock
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:161,2'
          Dst:             pthread_mutex_unlock
    - functionName:    rfbGetExtensionIterator
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_mutex_init
        - pthread_mutex_lock
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:151,3'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/main.c:155,2'
          Dst:             pthread_mutex_lock
    - functionName:    rfbUnregisterProtocolExtension
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          97
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - pthread_mutex_init
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbUnregisterProtocolExtension
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:119,3'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/main.c:123,2'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:127,3'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:128,3'
          Dst:             rfbUnregisterProtocolExtension
        - Src:             'src/libvncserver/main.c:143,2'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:145,2'
          Dst:             rfbUnregisterProtocolExtension
    - functionName:    rfbRegisterProtocolExtension
      functionSourceFile: '/src/libvncserver/src/libvncserver/main.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          80
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - pthread_mutex_init
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbRegisterProtocolExtension
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/main.c:81,3'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/main.c:85,2'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/main.c:89,4'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:90,4'
          Dst:             rfbRegisterProtocolExtension
        - Src:             'src/libvncserver/main.c:100,2'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/main.c:101,2'
          Dst:             rfbRegisterProtocolExtension
    - functionName:    rfbProcessExtendedServerCutTextData
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2208
      functionLinenumberEnd: 2279
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          272
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - inflate
        - inflateEnd
        - inflateInit_
        - rfbCloseClient
        - rfbLogPerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:2218,9'
          Dst:             inflateInit_
        - Src:             'src/libvncserver/rfbserver.c:2219,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2220,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2231,19'
          Dst:             inflate
        - Src:             'src/libvncserver/rfbserver.c:2233,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2237,13'
          Dst:             inflateEnd
        - Src:             'src/libvncserver/rfbserver.c:2238,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2248,13'
          Dst:             inflateEnd
        - Src:             'src/libvncserver/rfbserver.c:2249,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2254,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2255,13'
          Dst:             inflateEnd
        - Src:             'src/libvncserver/rfbserver.c:2256,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2261,15'
          Dst:             inflate
        - Src:             'src/libvncserver/rfbserver.c:2263,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2265,13'
          Dst:             inflateEnd
        - Src:             'src/libvncserver/rfbserver.c:2266,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2277,5'
          Dst:             inflateEnd
    - functionName:    inflateInit_
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inflate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inflateEnd
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rectSwapIfLEAndClip
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 972
      functionLinenumberEnd: 995
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          281
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - rfbScaledCorrection
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:978,2'
          Dst:             rfbScaledCorrection
    - functionName:    rfbSendExtendedClipboardCapability
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2123
      functionLinenumberEnd: 2137
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbStatRecordMessageSent
        - rfbWriteExact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:2130,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:2131,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2132,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2135,5'
          Dst:             rfbStatRecordMessageSent
    - functionName:    rfbProcessUDPInput
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4207
      functionLinenumberEnd: 4249
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          225
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - read
        - rfbDisconnectUDPSock
        - rfbLogPerror
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/rfbserver.c:4223,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:4215,14'
          Dst:             read
        - Src:             'src/libvncserver/rfbserver.c:4217,6'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:4219,2'
          Dst:             rfbDisconnectUDPSock
        - Src:             'src/libvncserver/rfbserver.c:4228,6'
          Dst:             rfbDisconnectUDPSock
        - Src:             'src/libvncserver/rfbserver.c:4237,6'
          Dst:             rfbDisconnectUDPSock
        - Src:             'src/libvncserver/rfbserver.c:4247,2'
          Dst:             rfbDisconnectUDPSock
    - functionName:    rfbNewUDPConnection
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4192
      functionLinenumberEnd: 4196
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbLogPerror
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:4193,7'
          Dst:             write
        - Src:             'src/libvncserver/rfbserver.c:4194,2'
          Dst:             rfbLogPerror
    - functionName:    rfbSendExtendedClipboardNotify
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2140
      functionLinenumberEnd: 2153
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbStatRecordMessageSent
        - rfbWriteExact
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:2146,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:2147,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2148,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2151,5'
          Dst:             rfbStatRecordMessageSent
    - functionName:    rfbSendExtendedServerCutTextData
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2156
      functionLinenumberEnd: 2205
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          228
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - compress
        - compressBound
        - rfbCloseClient
        - rfbLogPerror
        - rfbStatRecordMessageSent
        - rfbWriteExact
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:2164,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2165,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2171,12'
          Dst:             compressBound
        - Src:             'src/libvncserver/rfbserver.c:2174,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2176,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2179,9'
          Dst:             compress
        - Src:             'src/libvncserver/rfbserver.c:2180,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2183,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2194,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:2195,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2198,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2201,5'
          Dst:             rfbStatRecordMessageSent
    - functionName:    compressBound
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compress
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbSendServerCutTextUTF8
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4119
      functionLinenumberEnd: 4176
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          299
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbClientIteratorNext
        - rfbCloseClient
        - rfbGetClientIterator
        - rfbLogPerror
        - rfbReleaseClientIterator
        - rfbSendExtendedClipboardNotify
        - rfbSendExtendedServerCutTextData
        - rfbStatRecordMessageSent
        - rfbWriteExact
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:4126,16'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/rfbserver.c:4127,18'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:4129,9'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:4138,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:4139,17'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:4140,17'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:4147,22'
          Dst:             rfbSendExtendedServerCutTextData
        - Src:             'src/libvncserver/rfbserver.c:4148,21'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:4152,22'
          Dst:             rfbSendExtendedClipboardNotify
        - Src:             'src/libvncserver/rfbserver.c:4153,21'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:4157,13'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:4160,17'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:4162,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:4163,17'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:4164,17'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:4167,17'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:4168,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:4169,17'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:4171,13'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:4172,13'
          Dst:             rfbStatRecordMessageSent
        - Src:             'src/libvncserver/rfbserver.c:4175,5'
          Dst:             rfbReleaseClientIterator
    - functionName:    rfbGetClientIterator
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbClientIteratorNext
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          132
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbDecrClientRef
        - rfbIncrClientRef
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:213,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:215,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:219,5'
          Dst:             rfbDecrClientRef
        - Src:             'src/libvncserver/rfbserver.c:227,7'
          Dst:             rfbIncrClientRef
    - functionName:    rfbReleaseClientIterator
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - rfbDecrClientRef
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:236,34'
          Dst:             rfbDecrClientRef
    - functionName:    rfbDecrClientRef
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_cond_signal
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:132,3'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:135,5'
          Dst:             pthread_cond_signal
        - Src:             'src/libvncserver/rfbserver.c:136,3'
          Dst:             pthread_mutex_unlock
    - functionName:    rfbIncrClientRef
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:125,3'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:127,3'
          Dst:             pthread_mutex_unlock
    - functionName:    rfbSendServerCutText
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4087
      functionLinenumberEnd: 4114
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          114
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbClientIteratorNext
        - rfbCloseClient
        - rfbGetClientIterator
        - rfbLogPerror
        - rfbReleaseClientIterator
        - rfbStatRecordMessageSent
        - rfbWriteExact
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:4094,16'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/rfbserver.c:4095,18'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:4098,9'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:4099,13'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:4101,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:4102,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:4103,13'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:4106,13'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:4107,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:4108,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:4110,9'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:4111,9'
          Dst:             rfbStatRecordMessageSent
        - Src:             'src/libvncserver/rfbserver.c:4113,5'
          Dst:             rfbReleaseClientIterator
    - functionName:    rfbSendBell
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4061
      functionLinenumberEnd: 4078
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbClientIteratorNext
        - rfbCloseClient
        - rfbGetClientIterator
        - rfbLogPerror
        - rfbReleaseClientIterator
        - rfbStatRecordMessageSent
        - rfbWriteExact
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:4066,9'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/rfbserver.c:4067,15'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:4069,9'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:4070,6'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:4071,6'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:4072,6'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:4074,9'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:4076,5'
          Dst:             rfbStatRecordMessageSent
        - Src:             'src/libvncserver/rfbserver.c:4077,5'
          Dst:             rfbReleaseClientIterator
    - functionName:    rfbSendSetColourMapEntries
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4001
      functionLinenumberEnd: 4053
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          552
      EdgeCount:       64
      CyclomaticComplexity: 17
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbCloseClient
        - rfbLogPerror
        - rfbStatRecordMessageSent
        - rfbWriteExact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:4040,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:4041,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:4042,2'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:4043,2'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:4045,9'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:4048,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:4050,5'
          Dst:             rfbStatRecordMessageSent
    - functionName:    rfbSendLastRectMarker
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3814
      functionLinenumberEnd: 3835
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          78
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:3818,7'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:3832,5'
          Dst:             rfbStatRecordEncodingSent
    - functionName:    rfbSendUpdateBuf
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3978
      functionLinenumberEnd: 3990
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbWriteExact
      functionUses:    49
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:3982,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:3983,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:3984,9'
          Dst:             rfbCloseClient
    - functionName:    rfbSendRectEncodingRaw
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3740
      functionLinenumberEnd: 3801
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          359
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - rfbCloseClient
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:3752,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:3766,5'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/rfbserver.c:3788,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:3797,13'
          Dst:             rfbCloseClient
    - functionName:    rfbSendCopyRegion
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3683
      functionLinenumberEnd: 3727
      functionDepth:   0
      returnType:      char
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          305
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - ScaleX
        - rfbScaledCorrection
        - rfbStatRecordEncodingSent
        - sraRgnGetReverseIterator
        - sraRgnIteratorNext
        - sraRgnReleaseIterator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:3691,9'
          Dst:             sraRgnGetReverseIterator
        - Src:             'src/libvncserver/rfbserver.c:3694,10'
          Dst:             ScaleX
        - Src:             'src/libvncserver/rfbserver.c:3695,10'
          Dst:             ScaleX
        - Src:             'src/libvncserver/rfbserver.c:3697,11'
          Dst:             sraRgnIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:3704,7'
          Dst:             rfbScaledCorrection
        - Src:             'src/libvncserver/rfbserver.c:3722,7'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/rfbserver.c:3725,5'
          Dst:             sraRgnReleaseIterator
    - functionName:    rfbSendNewFBSize
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3847
      functionLinenumberEnd: 3873
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          155
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:3851,7'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:3870,5'
          Dst:             rfbStatRecordEncodingSent
    - functionName:    rfbSendExtDesktopSize
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3886
      functionLinenumberEnd: 3969
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          544
      EdgeCount:       68
      CyclomaticComplexity: 16
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/rfbserver.c:3913,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:3897,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:3964,5'
          Dst:             rfbStatRecordEncodingSent
    - functionName:    rfbSendFramebufferUpdate
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3192
      functionLinenumberEnd: 3668
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         265
      ICount:          1999
      EdgeCount:       358
      CyclomaticComplexity: 95
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbHideCursor
        - rfbNumCodedRectsTight
        - rfbRedrawAfterHideCursor
        - rfbScaledCorrection
        - rfbSendCopyRegion
        - rfbSendCursorPos
        - rfbSendCursorShape
        - rfbSendExtDesktopSize
        - rfbSendKeyboardLedState
        - rfbSendLastRectMarker
        - rfbSendNewFBSize
        - rfbSendRectEncodingCoRRE
        - rfbSendRectEncodingHextile
        - rfbSendRectEncodingRRE
        - rfbSendRectEncodingRaw
        - rfbSendRectEncodingTight
        - rfbSendRectEncodingUltra
        - rfbSendRectEncodingZRLE
        - rfbSendRectEncodingZlib
        - rfbSendServerIdentity
        - rfbSendSupportedEncodings
        - rfbSendSupportedMessages
        - rfbSendUpdateBuf
        - rfbShowCursor
        - rfbStatRecordMessageSent
        - sraRgnAnd
        - sraRgnBBox
        - sraRgnCountRects
        - sraRgnCreateRect
        - sraRgnCreateRgn
        - sraRgnDestroy
        - sraRgnEmpty
        - sraRgnGetIterator
        - sraRgnIteratorNext
        - sraRgnMakeEmpty
        - sraRgnOffset
        - sraRgnOr
        - sraRgnPopRect
        - sraRgnReleaseIterator
        - sraRgnSubtract
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/libvncserver/rfbserver.c:3595,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:3217,7'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:3219,7'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:3225,14'
          Dst:             rfbSendExtDesktopSize
        - Src:             'src/libvncserver/rfbserver.c:3231,17'
          Dst:             rfbSendNewFBSize
        - Src:             'src/libvncserver/rfbserver.c:3236,16'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:3308,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:3316,5'
          Dst:             sraRgnSubtract
        - Src:             'src/libvncserver/rfbserver.c:3325,20'
          Dst:             sraRgnCreateRgn
        - Src:             'src/libvncserver/rfbserver.c:3329,24'
          Dst:             sraRgnBBox
        - Src:             'src/libvncserver/rfbserver.c:3331,9'
          Dst:             sraRgnPopRect
        - Src:             'src/libvncserver/rfbserver.c:3335,13'
          Dst:             sraRgnCreateRect
        - Src:             'src/libvncserver/rfbserver.c:3336,3'
          Dst:             sraRgnAnd
        - Src:             'src/libvncserver/rfbserver.c:3337,3'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/rfbserver.c:3339,6'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/rfbserver.c:3346,5'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/rfbserver.c:3347,9'
          Dst:             sraRgnAnd
        - Src:             'src/libvncserver/rfbserver.c:3348,8'
          Dst:             sraRgnEmpty
        - Src:             'src/libvncserver/rfbserver.c:3353,7'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/rfbserver.c:3354,7'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:3369,24'
          Dst:             sraRgnCreateRgn
        - Src:             'src/libvncserver/rfbserver.c:3370,5'
          Dst:             sraRgnAnd
        - Src:             'src/libvncserver/rfbserver.c:3371,17'
          Dst:             sraRgnCreateRgn
        - Src:             'src/libvncserver/rfbserver.c:3372,5'
          Dst:             sraRgnOffset
        - Src:             'src/libvncserver/rfbserver.c:3373,5'
          Dst:             sraRgnAnd
        - Src:             'src/libvncserver/rfbserver.c:3374,5'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/rfbserver.c:3384,5'
          Dst:             sraRgnSubtract
        - Src:             'src/libvncserver/rfbserver.c:3393,6'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/rfbserver.c:3394,6'
          Dst:             sraRgnSubtract
        - Src:             'src/libvncserver/rfbserver.c:3395,6'
          Dst:             sraRgnSubtract
        - Src:             'src/libvncserver/rfbserver.c:3397,6'
          Dst:             sraRgnMakeEmpty
        - Src:             'src/libvncserver/rfbserver.c:3398,6'
          Dst:             sraRgnMakeEmpty
        - Src:             'src/libvncserver/rfbserver.c:3402,6'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:3406,2'
          Dst:             rfbRedrawAfterHideCursor
        - Src:             'src/libvncserver/rfbserver.c:3407,2'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:3410,2'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:3411,2'
          Dst:             rfbRedrawAfterHideCursor
        - Src:             'src/libvncserver/rfbserver.c:3413,7'
          Dst:             rfbShowCursor
        - Src:             'src/libvncserver/rfbserver.c:3420,5'
          Dst:             rfbStatRecordMessageSent
        - Src:             'src/libvncserver/rfbserver.c:3424,17'
          Dst:             sraRgnGetIterator
        - Src:             'src/libvncserver/rfbserver.c:3424,50'
          Dst:             sraRgnIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:3432,17'
          Dst:             rfbScaledCorrection
        - Src:             'src/libvncserver/rfbserver.c:3437,2'
          Dst:             sraRgnReleaseIterator
        - Src:             'src/libvncserver/rfbserver.c:3441,17'
          Dst:             sraRgnGetIterator
        - Src:             'src/libvncserver/rfbserver.c:3441,50'
          Dst:             sraRgnIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:3448,17'
          Dst:             rfbScaledCorrection
        - Src:             'src/libvncserver/rfbserver.c:3451,9'
          Dst:             sraRgnReleaseIterator
        - Src:             'src/libvncserver/rfbserver.c:3456,17'
          Dst:             sraRgnGetIterator
        - Src:             'src/libvncserver/rfbserver.c:3456,50'
          Dst:             sraRgnIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:3463,17'
          Dst:             rfbScaledCorrection
        - Src:             'src/libvncserver/rfbserver.c:3466,2'
          Dst:             sraRgnReleaseIterator
        - Src:             'src/libvncserver/rfbserver.c:3471,17'
          Dst:             sraRgnGetIterator
        - Src:             'src/libvncserver/rfbserver.c:3471,50'
          Dst:             sraRgnIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:3479,17'
          Dst:             rfbScaledCorrection
        - Src:             'src/libvncserver/rfbserver.c:3480,10'
          Dst:             rfbNumCodedRectsTight
        - Src:             'src/libvncserver/rfbserver.c:3487,2'
          Dst:             sraRgnReleaseIterator
        - Src:             'src/libvncserver/rfbserver.c:3513,30'
          Dst:             sraRgnCountRects
        - Src:             'src/libvncserver/rfbserver.c:3536,35'
          Dst:             sraRgnBBox
        - Src:             'src/libvncserver/rfbserver.c:3537,6'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/rfbserver.c:3539,27'
          Dst:             sraRgnCountRects
        - Src:             'src/libvncserver/rfbserver.c:3541,15'
          Dst:             sraRgnCountRects
        - Src:             'src/libvncserver/rfbserver.c:3541,15'
          Dst:             sraRgnCountRects
        - Src:             'src/libvncserver/rfbserver.c:3541,15'
          Dst:             sraRgnCountRects
        - Src:             'src/libvncserver/rfbserver.c:3552,7'
          Dst:             rfbSendCursorShape
        - Src:             'src/libvncserver/rfbserver.c:3558,7'
          Dst:             rfbSendCursorPos
        - Src:             'src/libvncserver/rfbserver.c:3563,13'
          Dst:             rfbSendKeyboardLedState
        - Src:             'src/libvncserver/rfbserver.c:3568,13'
          Dst:             rfbSendSupportedMessages
        - Src:             'src/libvncserver/rfbserver.c:3572,13'
          Dst:             rfbSendSupportedEncodings
        - Src:             'src/libvncserver/rfbserver.c:3576,13'
          Dst:             rfbSendServerIdentity
        - Src:             'src/libvncserver/rfbserver.c:3580,10'
          Dst:             sraRgnEmpty
        - Src:             'src/libvncserver/rfbserver.c:3581,7'
          Dst:             rfbSendCopyRegion
        - Src:             'src/libvncserver/rfbserver.c:3585,13'
          Dst:             sraRgnGetIterator
        - Src:             'src/libvncserver/rfbserver.c:3585,46'
          Dst:             sraRgnIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:3593,13'
          Dst:             rfbScaledCorrection
        - Src:             'src/libvncserver/rfbserver.c:3598,18'
          Dst:             rfbSendRectEncodingRaw
        - Src:             'src/libvncserver/rfbserver.c:3602,18'
          Dst:             rfbSendRectEncodingRRE
        - Src:             'src/libvncserver/rfbserver.c:3606,18'
          Dst:             rfbSendRectEncodingCoRRE
        - Src:             'src/libvncserver/rfbserver.c:3610,18'
          Dst:             rfbSendRectEncodingHextile
        - Src:             'src/libvncserver/rfbserver.c:3614,18'
          Dst:             rfbSendRectEncodingUltra
        - Src:             'src/libvncserver/rfbserver.c:3619,11'
          Dst:             rfbSendRectEncodingZlib
        - Src:             'src/libvncserver/rfbserver.c:3624,17'
          Dst:             rfbSendRectEncodingZRLE
        - Src:             'src/libvncserver/rfbserver.c:3630,11'
          Dst:             rfbSendRectEncodingTight
        - Src:             'src/libvncserver/rfbserver.c:3643,9'
          Dst:             sraRgnReleaseIterator
        - Src:             'src/libvncserver/rfbserver.c:3648,4'
          Dst:             rfbSendLastRectMarker
        - Src:             'src/libvncserver/rfbserver.c:3651,10'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:3657,7'
          Dst:             rfbHideCursor
        - Src:             'src/libvncserver/rfbserver.c:3661,9'
          Dst:             sraRgnReleaseIterator
        - Src:             'src/libvncserver/rfbserver.c:3662,5'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/rfbserver.c:3663,5'
          Dst:             sraRgnDestroy
    - functionName:    rfbSendKeyboardLedState
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1003
      functionLinenumberEnd: 1027
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          120
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1007,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:1021,5'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/rfbserver.c:1023,10'
          Dst:             rfbSendUpdateBuf
    - functionName:    rfbSendSupportedMessages
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1038
      functionLinenumberEnd: 1096
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          262
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1044,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:1089,5'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/rfbserver.c:1092,10'
          Dst:             rfbSendUpdateBuf
    - functionName:    rfbSendSupportedEncodings
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1106
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          238
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1147,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:1167,5'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/rfbserver.c:1171,10'
          Dst:             rfbSendUpdateBuf
    - functionName:    rfbSendServerIdentity
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1198
      functionLinenumberEnd: 1235
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          181
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
        - snprintf
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1203,5'
          Dst:             snprintf
        - Src:             'src/libvncserver/rfbserver.c:1208,22'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1209,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:1216,16'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1216,16'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1216,16'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1223,47'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1224,18'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1227,43'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1228,43'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1226,5'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/rfbserver.c:1231,10'
          Dst:             rfbSendUpdateBuf
    - functionName:    snprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    107
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbProcessFileTransfer
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1723
      functionLinenumberEnd: 2119
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - char
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         146
      ICount:          1192
      EdgeCount:       190
      CyclomaticComplexity: 46
      functionsReached:
        - __errno_location
        - close
        - fstat
        - gmtime
        - mkdir
        - open
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - realloc
        - rename
        - rfbCloseClient
        - rfbFilenameTranslate2UNIX
        - rfbLogPerror
        - rfbProcessFileTransferReadBuffer
        - rfbReadExact
        - rfbSendDirContent
        - rfbSendFileTransferChunk
        - rfbSendFileTransferMessage
        - rfbWriteExact
        - rmdir
        - stat
        - strcat
        - strerror
        - strftime
        - strlen
        - strncpy
        - strrchr
        - uncompress
        - unlink
        - write
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/rfbserver.c:1745,5'
          Branch Sides:    []
        - Branch String:   'src/libvncserver/rfbserver.c:1747,9'
          Branch Sides:    []
        - Branch String:   'src/libvncserver/rfbserver.c:2061,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1739,5'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1772,22'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:1779,27'
          Dst:             rfbProcessFileTransferReadBuffer
        - Src:             'src/libvncserver/rfbserver.c:1780,22'
          Dst:             rfbSendDirContent
        - Src:             'src/libvncserver/rfbserver.c:1812,23'
          Dst:             rfbProcessFileTransferReadBuffer
        - Src:             'src/libvncserver/rfbserver.c:1814,14'
          Dst:             rfbFilenameTranslate2UNIX
        - Src:             'src/libvncserver/rfbserver.c:1816,29'
          Dst:             open
        - Src:             'src/libvncserver/rfbserver.c:1823,17'
          Dst:             fstat
        - Src:             'src/libvncserver/rfbserver.c:1824,17'
          Dst:             close
        - Src:             'src/libvncserver/rfbserver.c:1830,69'
          Dst:             gmtime
        - Src:             'src/libvncserver/rfbserver.c:1830,15'
          Dst:             strftime
        - Src:             'src/libvncserver/rfbserver.c:1831,47'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1831,22'
          Dst:             realloc
        - Src:             'src/libvncserver/rfbserver.c:1833,115'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1836,15'
          Dst:             strcat
        - Src:             'src/libvncserver/rfbserver.c:1837,15'
          Dst:             strcat
        - Src:             'src/libvncserver/rfbserver.c:1838,24'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1853,18'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:1868,9'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:1869,13'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:1870,11'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:1871,11'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1872,11'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:1876,9'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:1883,13'
          Dst:             close
        - Src:             'src/libvncserver/rfbserver.c:1894,16'
          Dst:             rfbSendFileTransferChunk
        - Src:             'src/libvncserver/rfbserver.c:1909,23'
          Dst:             rfbProcessFileTransferReadBuffer
        - Src:             'src/libvncserver/rfbserver.c:1912,13'
          Dst:             strrchr
        - Src:             'src/libvncserver/rfbserver.c:1915,13'
          Dst:             strncpy
        - Src:             'src/libvncserver/rfbserver.c:1923,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:1925,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:1926,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1933,14'
          Dst:             rfbFilenameTranslate2UNIX
        - Src:             'src/libvncserver/rfbserver.c:1939,29'
          Dst:             open
        - Src:             'src/libvncserver/rfbserver.c:1940,202'
          Dst:             __errno_location
        - Src:             'src/libvncserver/rfbserver.c:1940,193'
          Dst:             strerror
        - Src:             'src/libvncserver/rfbserver.c:1945,18'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:1962,23'
          Dst:             rfbProcessFileTransferReadBuffer
        - Src:             'src/libvncserver/rfbserver.c:1966,24'
          Dst:             write
        - Src:             'src/libvncserver/rfbserver.c:1971,24'
          Dst:             uncompress
        - Src:             'src/libvncserver/rfbserver.c:1973,12'
          Dst:             write
        - Src:             'src/libvncserver/rfbserver.c:1983,17'
          Dst:             close
        - Src:             'src/libvncserver/rfbserver.c:1996,13'
          Dst:             close
        - Src:             'src/libvncserver/rfbserver.c:2008,13'
          Dst:             close
        - Src:             'src/libvncserver/rfbserver.c:2022,24'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:2030,28'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:2035,28'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:2043,28'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:2048,28'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:2060,23'
          Dst:             rfbProcessFileTransferReadBuffer
        - Src:             'src/libvncserver/rfbserver.c:2063,18'
          Dst:             rfbFilenameTranslate2UNIX
        - Src:             'src/libvncserver/rfbserver.c:2065,22'
          Dst:             mkdir
        - Src:             'src/libvncserver/rfbserver.c:2069,22'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:2073,18'
          Dst:             rfbFilenameTranslate2UNIX
        - Src:             'src/libvncserver/rfbserver.c:2075,17'
          Dst:             stat
        - Src:             'src/libvncserver/rfbserver.c:2078,30'
          Dst:             rmdir
        - Src:             'src/libvncserver/rfbserver.c:2080,30'
          Dst:             unlink
        - Src:             'src/libvncserver/rfbserver.c:2083,22'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:2087,17'
          Dst:             strrchr
        - Src:             'src/libvncserver/rfbserver.c:2092,22'
          Dst:             rfbFilenameTranslate2UNIX
        - Src:             'src/libvncserver/rfbserver.c:2094,22'
          Dst:             rfbFilenameTranslate2UNIX
        - Src:             'src/libvncserver/rfbserver.c:2096,26'
          Dst:             rename
        - Src:             'src/libvncserver/rfbserver.c:2102,26'
          Dst:             rfbSendFileTransferMessage
    - functionName:    rfbSendFileTransferMessage
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1316
      functionLinenumberEnd: 1351
      functionDepth:   0
      returnType:      char
      argCount:        6
      argTypes:
        - 'N/A'
        - char
        - char
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          215
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbCloseClient
        - rfbLogPerror
        - rfbStatRecordMessageSent
        - rfbWriteExact
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1325,5'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1329,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:1330,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:1331,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:1332,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1333,9'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:1339,13'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:1340,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:1341,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1342,13'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:1346,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:1348,5'
          Dst:             rfbStatRecordMessageSent
    - functionName:    rfbProcessFileTransferReadBuffer
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1579
      functionLinenumberEnd: 1616
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          162
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbReadExact
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1583,5'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1596,2'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1603,22'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:1605,21'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:1606,17'
          Dst:             rfbCloseClient
    - functionName:    rfbSendDirContent
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1437
      functionLinenumberEnd: 1575
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          455
      EdgeCount:       68
      CyclomaticComplexity: 19
      functionsReached:
        - closedir
        - opendir
        - readdir
        - rfbCloseClient
        - rfbFilenameTranslate2UNIX
        - rfbSendFileTransferMessage
        - snprintf
        - stat
        - strcmp
        - strcpy
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1453,5'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1456,10'
          Dst:             rfbFilenameTranslate2UNIX
        - Src:             'src/libvncserver/rfbserver.c:1479,10'
          Dst:             opendir
        - Src:             'src/libvncserver/rfbserver.c:1482,16'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:1485,9'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:1490,18'
          Dst:             readdir
        - Src:             'src/libvncserver/rfbserver.c:1497,5'
          Dst:             snprintf
        - Src:             'src/libvncserver/rfbserver.c:1499,18'
          Dst:             stat
        - Src:             'src/libvncserver/rfbserver.c:1535,13'
          Dst:             strcpy
        - Src:             'src/libvncserver/rfbserver.c:1539,18'
          Dst:             strcmp
        - Src:             'src/libvncserver/rfbserver.c:1541,67'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1545,21'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:1550,21'
          Dst:             closedir
        - Src:             'src/libvncserver/rfbserver.c:1490,56'
          Dst:             readdir
        - Src:             'src/libvncserver/rfbserver.c:1571,5'
          Dst:             closedir
        - Src:             'src/libvncserver/rfbserver.c:1574,12'
          Dst:             rfbSendFileTransferMessage
    - functionName:    rfbFilenameTranslate2UNIX
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1387
      functionLinenumberEnd: 1422
      functionDepth:   0
      returnType:      char
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          204
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - getenv
        - rfbCloseClient
        - strcat
        - strcpy
        - strlen
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1391,5'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1397,9'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1402,7'
          Dst:             strcpy
        - Src:             'src/libvncserver/rfbserver.c:1405,14'
          Dst:             getenv
        - Src:             'src/libvncserver/rfbserver.c:1409,14'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1409,29'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:1412,9'
          Dst:             strcpy
        - Src:             'src/libvncserver/rfbserver.c:1413,9'
          Dst:             strcat
        - Src:             'src/libvncserver/rfbserver.c:1414,9'
          Dst:             strcat
        - Src:             'src/libvncserver/rfbserver.c:1417,9'
          Dst:             strcpy
        - Src:             'src/libvncserver/rfbserver.c:1419,16'
          Dst:             strlen
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fstat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gmtime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    realloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcat
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbSendFileTransferChunk
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1620
      functionLinenumberEnd: 1720
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         36
      ICount:          309
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - close
        - compress
        - read
        - rfbSendFileTransferMessage
        - select
        - strerror
      functionUses:    5
      BranchProfiles:
        - Branch String:   'src/libvncserver/rfbserver.c:1670,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1649,13'
          Dst:             __errno_location
        - Src:             'src/libvncserver/rfbserver.c:1658,6'
          Dst:             select
        - Src:             'src/libvncserver/rfbserver.c:1664,79'
          Dst:             __errno_location
        - Src:             'src/libvncserver/rfbserver.c:1664,70'
          Dst:             strerror
        - Src:             'src/libvncserver/rfbserver.c:1669,25'
          Dst:             read
        - Src:             'src/libvncserver/rfbserver.c:1675,26'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:1676,17'
          Dst:             close
        - Src:             'src/libvncserver/rfbserver.c:1686,68'
          Dst:             __errno_location
        - Src:             'src/libvncserver/rfbserver.c:1686,59'
          Dst:             strerror
        - Src:             'src/libvncserver/rfbserver.c:1687,26'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:1688,17'
          Dst:             close
        - Src:             'src/libvncserver/rfbserver.c:1698,29'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:1702,29'
          Dst:             compress
        - Src:             'src/libvncserver/rfbserver.c:1708,33'
          Dst:             rfbSendFileTransferMessage
        - Src:             'src/libvncserver/rfbserver.c:1710,33'
          Dst:             rfbSendFileTransferMessage
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strncpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uncompress
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mkdir
      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:    stat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    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:    unlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rename
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    opendir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    readdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      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:    33
      BranchProfiles:  []
      Callsites:       []
    - functionName:    closedir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbFilenameTranslate2DOS
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1425
      functionLinenumberEnd: 1434
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          122
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - rfbCloseClient
        - sprintf
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1428,5'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1430,5'
          Dst:             sprintf
        - Src:             'src/libvncserver/rfbserver.c:1431,16'
          Dst:             strlen
    - functionName:    sprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbSendTextChatMessage
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1265
      functionLinenumberEnd: 1302
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          181
      EdgeCount:       31
      CyclomaticComplexity: 7
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordMessageSent
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/libvncserver/rfbserver.c:1273,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1286,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rfbserver.c:1296,5'
          Dst:             rfbStatRecordMessageSent
        - Src:             'src/libvncserver/rfbserver.c:1298,10'
          Dst:             rfbSendUpdateBuf
    - functionName:    rfbSendXvp
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1243
      functionLinenumberEnd: 1260
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbCloseClient
        - rfbLogPerror
        - rfbStatRecordMessageSent
        - rfbWriteExact
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1251,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:1252,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:1253,7'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:1254,7'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:1256,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:1258,5'
          Dst:             rfbStatRecordMessageSent
    - functionName:    rfbSetServerVersionIdentity
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1180
      functionLinenumberEnd: 1190
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdup
        - vsnprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:1185,5'
          Dst:             vsnprintf
        - Src:             'src/libvncserver/rfbserver.c:1189,29'
          Dst:             strdup
    - 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:    strdup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbClientConnFailed
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 848
      functionLinenumberEnd: 866
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbWriteExact
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:850,15'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:860,13'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:861,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:865,5'
          Dst:             rfbCloseClient
    - functionName:    rfbClientSendString
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 821
      functionLinenumberEnd: 838
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          99
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbWriteExact
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:823,15'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:832,13'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:833,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:837,5'
          Dst:             rfbCloseClient
    - functionName:    rfbProcessClientNormalMessage
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2289
      functionLinenumberEnd: 3179
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         520
      ICount:          3950
      EdgeCount:       687
      CyclomaticComplexity: 169
      functionsReached:
        - ScaleX
        - ScaleY
        - calloc
        - encodingName
        - pthread_cond_signal
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rectSwapIfLEAndClip
        - rfbClientIteratorNext
        - rfbCloseClient
        - rfbEnableExtension
        - rfbGetClientIterator
        - rfbGetExtensionIterator
        - rfbLogPerror
        - rfbProcessExtendedServerCutTextData
        - rfbProcessFileTransfer
        - rfbReadExact
        - rfbRedrawAfterHideCursor
        - rfbReleaseExtensionIterator
        - rfbScalingSetup
        - rfbSendExtendedClipboardCapability
        - rfbSendExtendedClipboardNotify
        - rfbSendExtendedServerCutTextData
        - rfbSendNewScaleSize
        - rfbSendXvp
        - rfbSetClientColourMap
        - rfbStatRecordMessageRcvd
        - sraRgnCreateRect
        - sraRgnDestroy
        - sraRgnOr
        - sraRgnSubtract
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/rfbserver.c:2314,5'
          Branch Sides:    []
        - Branch String:   'src/libvncserver/rfbserver.c:2423,13'
          Branch Sides:    []
        - Branch String:   'src/libvncserver/rfbserver.c:2851,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:2307,14'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2309,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2310,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2318,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2321,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2322,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2340,9'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:2346,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2349,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2350,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2353,9'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:2356,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2371,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2374,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2375,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2381,9'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:2415,22'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2417,21'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2418,17'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2456,11'
          Dst:             rfbRedrawAfterHideCursor
        - Src:             'src/libvncserver/rfbserver.c:2467,7'
          Dst:             rfbRedrawAfterHideCursor
        - Src:             'src/libvncserver/rfbserver.c:2535,24'
          Dst:             rfbSendXvp
        - Src:             'src/libvncserver/rfbserver.c:2536,21'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2550,26'
          Dst:             rfbSendExtendedClipboardCapability
        - Src:             'src/libvncserver/rfbserver.c:2607,13'
          Dst:             rfbGetExtensionIterator
        - Src:             'src/libvncserver/rfbserver.c:2615,9'
          Dst:             rfbEnableExtension
        - Src:             'src/libvncserver/rfbserver.c:2627,5'
          Dst:             rfbReleaseExtensionIterator
        - Src:             'src/libvncserver/rfbserver.c:2632,10'
          Dst:             encodingName
        - Src:             'src/libvncserver/rfbserver.c:2643,69'
          Dst:             encodingName
        - Src:             'src/libvncserver/rfbserver.c:2647,69'
          Dst:             encodingName
        - Src:             'src/libvncserver/rfbserver.c:2653,59'
          Dst:             encodingName
        - Src:             'src/libvncserver/rfbserver.c:2656,19'
          Dst:             encodingName
        - Src:             'src/libvncserver/rfbserver.c:2657,19'
          Dst:             encodingName
        - Src:             'src/libvncserver/rfbserver.c:2675,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2678,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2679,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2683,9'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:2688,6'
          Dst:             rectSwapIfLEAndClip
        - Src:             'src/libvncserver/rfbserver.c:2698,4'
          Dst:             sraRgnCreateRect
        - Src:             'src/libvncserver/rfbserver.c:2703,9'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:2704,2'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/rfbserver.c:2710,8'
          Dst:             rfbSetClientColourMap
        - Src:             'src/libvncserver/rfbserver.c:2711,7'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/rfbserver.c:2712,7'
          Dst:             pthread_cond_signal
        - Src:             'src/libvncserver/rfbserver.c:2713,7'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:2720,6'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/rfbserver.c:2721,6'
          Dst:             sraRgnSubtract
        - Src:             'src/libvncserver/rfbserver.c:2725,8'
          Dst:             pthread_cond_signal
        - Src:             'src/libvncserver/rfbserver.c:2726,8'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:2728,8'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/rfbserver.c:2735,11'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2738,3'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2739,6'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2743,2'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:2754,11'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2757,3'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2758,6'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2762,2'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:2776,4'
          Dst:             ScaleX
        - Src:             'src/libvncserver/rfbserver.c:2777,4'
          Dst:             ScaleY
        - Src:             'src/libvncserver/rfbserver.c:2781,18'
          Dst:             ScaleX
        - Src:             'src/libvncserver/rfbserver.c:2782,18'
          Dst:             ScaleY
        - Src:             'src/libvncserver/rfbserver.c:2790,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2793,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2794,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2800,9'
          Dst:             rfbProcessFileTransfer
        - Src:             'src/libvncserver/rfbserver.c:2804,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2807,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2808,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2813,9'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:2822,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2825,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2826,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2829,9'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:2840,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2843,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2844,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2858,13'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:2867,21'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2870,26'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2872,25'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2874,21'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2877,17'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:2883,17'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2900,11'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2903,3'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2904,6'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2930,6'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2935,16'
          Dst:             calloc
        - Src:             'src/libvncserver/rfbserver.c:2937,3'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2938,3'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2942,11'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:2944,10'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2946,6'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2949,2'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:2953,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2954,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2970,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:2971,17'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:2986,22'
          Dst:             rfbSendExtendedServerCutTextData
        - Src:             'src/libvncserver/rfbserver.c:2994,22'
          Dst:             rfbSendExtendedClipboardNotify
        - Src:             'src/libvncserver/rfbserver.c:3000,18'
          Dst:             rfbProcessExtendedServerCutTextData
        - Src:             'src/libvncserver/rfbserver.c:3023,16'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:3026,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:3027,11'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:3032,11'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:3033,11'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:3037,7'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:3039,7'
          Dst:             rfbScalingSetup
        - Src:             'src/libvncserver/rfbserver.c:3041,7'
          Dst:             rfbSendNewScaleSize
        - Src:             'src/libvncserver/rfbserver.c:3046,16'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:3049,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:3050,11'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:3055,11'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:3056,11'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:3060,7'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:3062,7'
          Dst:             rfbScalingSetup
        - Src:             'src/libvncserver/rfbserver.c:3064,7'
          Dst:             rfbSendNewScaleSize
        - Src:             'src/libvncserver/rfbserver.c:3069,16'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:3072,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:3073,11'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:3076,7'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:3080,2'
          Dst:             rfbSendXvp
        - Src:             'src/libvncserver/rfbserver.c:3085,4'
          Dst:             rfbSendXvp
        - Src:             'src/libvncserver/rfbserver.c:3091,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:3094,15'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:3095,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:3106,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:3107,17'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:3111,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:3113,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:3115,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:3118,9'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:3139,24'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/rfbserver.c:3140,27'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:3141,17'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:3144,17'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:3166,21'
          Dst:             rfbStatRecordMessageRcvd
        - Src:             'src/libvncserver/rfbserver.c:3175,6'
          Dst:             rfbCloseClient
    - functionName:    rfbProcessClientInitMessage
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 876
      functionLinenumberEnd: 965
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         68
      ICount:          539
      EdgeCount:       92
      CyclomaticComplexity: 26
      functionsReached:
        - rfbClientIteratorNext
        - rfbCloseClient
        - rfbDisableExtension
        - rfbGetClientIterator
        - rfbLogPerror
        - rfbReadExact
        - rfbReleaseClientIterator
        - rfbWriteExact
        - strlen
        - strncpy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:895,18'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:899,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:900,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:914,5'
          Dst:             strncpy
        - Src:             'src/libvncserver/rfbserver.c:915,11'
          Dst:             strlen
        - Src:             'src/libvncserver/rfbserver.c:918,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:919,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:920,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:929,6'
          Dst:             rfbDisableExtension
        - Src:             'src/libvncserver/rfbserver.c:939,24'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/rfbserver.c:940,31'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:944,21'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:945,21'
          Dst:             rfbReleaseClientIterator
        - Src:             'src/libvncserver/rfbserver.c:949,13'
          Dst:             rfbReleaseClientIterator
        - Src:             'src/libvncserver/rfbserver.c:951,24'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/rfbserver.c:952,37'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:954,12'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:958,21'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:962,13'
          Dst:             rfbReleaseClientIterator
    - functionName:    rfbProcessClientProtocolVersion
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 772
      functionLinenumberEnd: 816
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          117
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __isoc99_sscanf
        - rfbAuthNewClient
        - rfbCloseClient
        - rfbLogPerror
        - rfbReadExact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:776,14'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/rfbserver.c:780,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:781,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:786,9'
          Dst:             __isoc99_sscanf
        - Src:             'src/libvncserver/rfbserver.c:788,2'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:797,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:815,5'
          Dst:             rfbAuthNewClient
    - functionName:    __isoc99_sscanf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbProcessClientMessage
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          59
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - rfbAuthProcessClientMessage
        - rfbProcessClientInitMessage
        - rfbProcessClientNormalMessage
        - rfbProcessClientProtocolVersion
        - rfbProcessClientSecurityType
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/libvncserver/rfbserver.c:743,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:745,9'
          Dst:             rfbProcessClientProtocolVersion
        - Src:             'src/libvncserver/rfbserver.c:749,9'
          Dst:             rfbProcessClientSecurityType
        - Src:             'src/libvncserver/rfbserver.c:752,9'
          Dst:             rfbAuthProcessClientMessage
        - Src:             'src/libvncserver/rfbserver.c:756,9'
          Dst:             rfbProcessClientInitMessage
        - Src:             'src/libvncserver/rfbserver.c:759,9'
          Dst:             rfbProcessClientNormalMessage
    - functionName:    rfbClientConnectionGone
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 733
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         53
      ICount:          437
      EdgeCount:       69
      CyclomaticComplexity: 18
      functionsReached:
        - close
        - deflateEnd
        - pthread_cond_destroy
        - pthread_cond_wait
        - pthread_mutex_destroy
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbFreeTightData
        - rfbFreeUltraData
        - rfbFreeZrleData
        - rfbPrintStats
        - rfbResetStats
        - sraRgnDestroy
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:621,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:630,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:636,2'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:639,4'
          Dst:             pthread_cond_wait
        - Src:             'src/libvncserver/rfbserver.c:640,2'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:646,2'
          Dst:             close
        - Src:             'src/libvncserver/rfbserver.c:650,9'
          Dst:             close
        - Src:             'src/libvncserver/rfbserver.c:658,5'
          Dst:             rfbFreeZrleData
        - Src:             'src/libvncserver/rfbserver.c:661,5'
          Dst:             rfbFreeTightData
        - Src:             'src/libvncserver/rfbserver.c:665,5'
          Dst:             rfbFreeUltraData
        - Src:             'src/libvncserver/rfbserver.c:688,2'
          Dst:             deflateEnd
        - Src:             'src/libvncserver/rfbserver.c:696,6'
          Dst:             deflateEnd
        - Src:             'src/libvncserver/rfbserver.c:704,5'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/rfbserver.c:705,5'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/rfbserver.c:706,5'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/rfbserver.c:710,5'
          Dst:             pthread_cond_destroy
        - Src:             'src/libvncserver/rfbserver.c:711,5'
          Dst:             pthread_mutex_destroy
        - Src:             'src/libvncserver/rfbserver.c:714,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:715,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:716,5'
          Dst:             pthread_mutex_destroy
        - Src:             'src/libvncserver/rfbserver.c:718,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:719,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:720,5'
          Dst:             pthread_mutex_destroy
        - Src:             'src/libvncserver/rfbserver.c:724,9'
          Dst:             close
        - Src:             'src/libvncserver/rfbserver.c:725,9'
          Dst:             close
        - Src:             'src/libvncserver/rfbserver.c:729,5'
          Dst:             rfbPrintStats
        - Src:             'src/libvncserver/rfbserver.c:730,5'
          Dst:             rfbResetStats
    - functionName:    deflateEnd
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_cond_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbNewUDPClient
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 604
      functionLinenumberEnd: 606
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rfbNewTCPOrUDPClient
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:606,4'
          Dst:             rfbNewTCPOrUDPClient
    - functionName:    rfbNewTCPOrUDPClient
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          527
      EdgeCount:       47
      CyclomaticComplexity: 11
      functionsReached:
        - calloc
        - getnameinfo
        - getpeername
        - pthread_cond_init
        - pthread_mutex_init
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbClientConnectionGone
        - rfbClientIteratorNext
        - rfbCloseClient
        - rfbEnableExtension
        - rfbGetClientIterator
        - rfbGetExtensionIterator
        - rfbLogPerror
        - rfbReleaseClientIterator
        - rfbReleaseExtensionIterator
        - rfbResetStats
        - rfbWriteExact
        - sprintf
        - sraRgnCreate
        - sraRgnCreateRect
        - strdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/libvncserver/rfbserver.c:579,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:373,24'
          Dst:             calloc
        - Src:             'src/libvncserver/rfbserver.c:389,5'
          Dst:             rfbResetStats
        - Src:             'src/libvncserver/rfbserver.c:403,7'
          Dst:             getpeername
        - Src:             'src/libvncserver/rfbserver.c:405,10'
          Dst:             getnameinfo
        - Src:             'src/libvncserver/rfbserver.c:406,2'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:407,13'
          Dst:             strdup
        - Src:             'src/libvncserver/rfbserver.c:410,13'
          Dst:             strdup
        - Src:             'src/libvncserver/rfbserver.c:417,18'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/rfbserver.c:418,21'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/rfbserver.c:420,7'
          Dst:             rfbReleaseClientIterator
        - Src:             'src/libvncserver/rfbserver.c:438,7'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/rfbserver.c:439,7'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/rfbserver.c:440,7'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/rfbserver.c:441,7'
          Dst:             pthread_cond_init
        - Src:             'src/libvncserver/rfbserver.c:455,24'
          Dst:             sraRgnCreate
        - Src:             'src/libvncserver/rfbserver.c:460,2'
          Dst:             sraRgnCreateRect
        - Src:             'src/libvncserver/rfbserver.c:462,7'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/rfbserver.c:463,7'
          Dst:             pthread_cond_init
        - Src:             'src/libvncserver/rfbserver.c:465,29'
          Dst:             sraRgnCreate
        - Src:             'src/libvncserver/rfbserver.c:471,7'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:481,7'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/rfbserver.c:558,7'
          Dst:             sprintf
        - Src:             'src/libvncserver/rfbserver.c:561,11'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/rfbserver.c:562,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/rfbserver.c:563,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:564,2'
          Dst:             rfbClientConnectionGone
        - Src:             'src/libvncserver/rfbserver.c:569,21'
          Dst:             rfbGetExtensionIterator
        - Src:             'src/libvncserver/rfbserver.c:575,3'
          Dst:             rfbEnableExtension
        - Src:             'src/libvncserver/rfbserver.c:577,5'
          Dst:             rfbReleaseExtensionIterator
        - Src:             'src/libvncserver/rfbserver.c:587,6'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/rfbserver.c:588,6'
          Dst:             rfbClientConnectionGone
    - functionName:    getpeername
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getnameinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_cond_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbSetProtocolVersion
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          60
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbUltraVNCRepeaterMode2Connection
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          144
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - rfbConnect
        - rfbNewClient
        - rfbStartOnHoldClient
        - send
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:297,17'
          Dst:             rfbConnect
        - Src:             'src/libvncserver/rfbserver.c:302,9'
          Dst:             snprintf
        - Src:             'src/libvncserver/rfbserver.c:308,9'
          Dst:             send
        - Src:             'src/libvncserver/rfbserver.c:313,10'
          Dst:             rfbNewClient
        - Src:             'src/libvncserver/rfbserver.c:331,9'
          Dst:             rfbStartOnHoldClient
    - functionName:    send
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbNewClient
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 599
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rfbNewTCPOrUDPClient
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:599,10'
          Dst:             rfbNewTCPOrUDPClient
    - functionName:    rfbReverseConnection
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - rfbConnect
        - rfbNewClient
        - rfbStartOnHoldClient
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:267,17'
          Dst:             rfbConnect
        - Src:             'src/libvncserver/rfbserver.c:270,10'
          Dst:             rfbNewClient
        - Src:             'src/libvncserver/rfbserver.c:276,13'
          Dst:             rfbStartOnHoldClient
    - functionName:    rfbNewClientConnection
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rfbNewClient
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:250,5'
          Dst:             rfbNewClient
    - functionName:    rfbClientIteratorHead
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbDecrClientRef
        - rfbIncrClientRef
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:197,5'
          Dst:             rfbDecrClientRef
        - Src:             'src/libvncserver/rfbserver.c:198,5'
          Dst:             rfbIncrClientRef
        - Src:             'src/libvncserver/rfbserver.c:201,3'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/rfbserver.c:203,3'
          Dst:             pthread_mutex_unlock
    - functionName:    rfbGetClientIteratorWithClosed
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbClientListInit
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbserver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbserver.c:163,5'
          Dst:             pthread_mutex_init
    - functionName:    sraSpanPrint
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - printf
        - sraSpanListPrint
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:119,3'
          Dst:             printf
        - Src:             'src/libvncserver/rfbregion.c:121,5'
          Dst:             sraSpanListPrint
    - functionName:    printf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraSpanListPrint
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - printf
        - sraSpanPrint
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:105,4'
          Dst:             printf
        - Src:             'src/libvncserver/rfbregion.c:109,3'
          Dst:             printf
        - Src:             'src/libvncserver/rfbregion.c:111,5'
          Dst:             sraSpanPrint
        - Src:             'src/libvncserver/rfbregion.c:114,3'
          Dst:             printf
    - functionName:    sraSpanMergeNext
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          78
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - sraSpanDestroy
        - sraSpanListEqual
        - sraSpanRemove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:256,4'
          Dst:             sraSpanListEqual
        - Src:             'src/libvncserver/rfbregion.c:265,5'
          Dst:             sraSpanRemove
        - Src:             'src/libvncserver/rfbregion.c:266,5'
          Dst:             sraSpanDestroy
    - functionName:    sraSpanListEqual
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          147
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - sraSpanListEqual
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:196,4'
          Dst:             sraSpanListEqual
    - functionName:    sraSpanRemove
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          33
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraSpanDestroy
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sraSpanListDestroy
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:82,22'
          Dst:             sraSpanListDestroy
    - functionName:    sraSpanListDestroy
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sraSpanDestroy
        - sraSpanRemove
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:157,5'
          Dst:             sraSpanRemove
        - Src:             'src/libvncserver/rfbregion.c:158,5'
          Dst:             sraSpanDestroy
    - functionName:    sraSpanMergePrevious
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          78
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - sraSpanDestroy
        - sraSpanListEqual
        - sraSpanRemove
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:236,4'
          Dst:             sraSpanListEqual
        - Src:             'src/libvncserver/rfbregion.c:245,5'
          Dst:             sraSpanRemove
        - Src:             'src/libvncserver/rfbregion.c:246,5'
          Dst:             sraSpanDestroy
    - functionName:    sraClipRect2
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 814
      functionLinenumberEnd: 831
      functionDepth:   0
      returnType:      char
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          184
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraClipRect
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 809
      functionDepth:   0
      returnType:      char
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          144
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraRgnPrint
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 790
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sraSpanListPrint
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:789,2'
          Dst:             sraSpanListPrint
    - functionName:    sraRgnReleaseIterator
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 782
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraReverse
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 730
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraNextSpan
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 739
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sraReverse
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:735,6'
          Dst:             sraReverse
    - functionName:    sraRgnIteratorNext
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          306
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - realloc
        - sraNextSpan
        - sraReverse
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:744,9'
          Dst:             sraNextSpan
        - Src:             'src/libvncserver/rfbregion.c:750,25'
          Dst:             sraNextSpan
        - Src:             'src/libvncserver/rfbregion.c:756,29'
          Dst:             realloc
        - Src:             'src/libvncserver/rfbregion.c:759,8'
          Dst:             sraReverse
    - functionName:    sraRgnGetReverseIterator
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 716
      functionLinenumberEnd: 724
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sraRgnGetIterator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:717,29'
          Dst:             sraRgnGetIterator
    - functionName:    sraRgnGetIterator
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 688
      functionLinenumberEnd: 713
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          74
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraRgnEmpty
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 682
      functionLinenumberEnd: 683
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sraSpanListEmpty
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:683,10'
          Dst:             sraSpanListEmpty
    - functionName:    sraSpanListEmpty
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraSpanListCount
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - sraSpanListCount
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:221,16'
          Dst:             sraSpanListCount
    - functionName:    sraRgnCountRects
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 676
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sraSpanListCount
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:677,25'
          Dst:             sraSpanListCount
    - functionName:    sraRgnPopRect
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 673
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          170
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - sraSpanDestroy
        - sraSpanListEmpty
        - sraSpanRemove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:656,7'
          Dst:             sraSpanRemove
        - Src:             'src/libvncserver/rfbregion.c:657,7'
          Dst:             sraSpanDestroy
        - Src:             'src/libvncserver/rfbregion.c:659,11'
          Dst:             sraSpanListEmpty
        - Src:             'src/libvncserver/rfbregion.c:660,2'
          Dst:             sraSpanRemove
        - Src:             'src/libvncserver/rfbregion.c:661,2'
          Dst:             sraSpanDestroy
    - functionName:    sraRgnBBox
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 621
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          184
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - sraRgnCreate
        - sraRgnCreateRect
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:596,12'
          Dst:             sraRgnCreate
        - Src:             'src/libvncserver/rfbregion.c:618,12'
          Dst:             sraRgnCreate
        - Src:             'src/libvncserver/rfbregion.c:620,10'
          Dst:             sraRgnCreateRect
    - functionName:    sraRgnCreate
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sraSpanListCreate
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:516,22'
          Dst:             sraSpanListCreate
    - functionName:    sraRgnCreateRect
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sraSpanCreate
        - sraSpanInsertAfter
        - sraSpanListCreate
        - sraSpanListDestroy
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:525,11'
          Dst:             sraSpanListCreate
        - Src:             'src/libvncserver/rfbregion.c:526,11'
          Dst:             sraSpanCreate
        - Src:             'src/libvncserver/rfbregion.c:527,3'
          Dst:             sraSpanInsertAfter
        - Src:             'src/libvncserver/rfbregion.c:530,11'
          Dst:             sraSpanListCreate
        - Src:             'src/libvncserver/rfbregion.c:531,11'
          Dst:             sraSpanCreate
        - Src:             'src/libvncserver/rfbregion.c:532,3'
          Dst:             sraSpanInsertAfter
        - Src:             'src/libvncserver/rfbregion.c:534,3'
          Dst:             sraSpanListDestroy
    - functionName:    sraSpanListCreate
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraSpanCreate
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sraSpanListDup
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:40,19'
          Dst:             sraSpanListDup
    - functionName:    sraSpanInsertAfter
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraSpanListDup
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - sraSpanDup
        - sraSpanInsertBefore
        - sraSpanListCreate
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:141,13'
          Dst:             sraSpanListCreate
        - Src:             'src/libvncserver/rfbregion.c:144,15'
          Dst:             sraSpanDup
        - Src:             'src/libvncserver/rfbregion.c:145,5'
          Dst:             sraSpanInsertBefore
    - functionName:    sraSpanDup
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sraSpanCreate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:48,10'
          Dst:             sraSpanCreate
    - functionName:    sraSpanInsertBefore
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraRgnOffset
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 572
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          81
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sraSpanListSubtract
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          279
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - sraSpanCreate
        - sraSpanDestroy
        - sraSpanInsertAfter
        - sraSpanInsertBefore
        - sraSpanListEmpty
        - sraSpanListSubtract
        - sraSpanMergeNext
        - sraSpanMergePrevious
        - sraSpanRemove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:472,27'
          Dst:             sraSpanCreate
        - Src:             'src/libvncserver/rfbregion.c:472,7'
          Dst:             sraSpanInsertBefore
        - Src:             'src/libvncserver/rfbregion.c:479,26'
          Dst:             sraSpanCreate
        - Src:             'src/libvncserver/rfbregion.c:479,7'
          Dst:             sraSpanInsertAfter
        - Src:             'src/libvncserver/rfbregion.c:487,32'
          Dst:             sraSpanListSubtract
        - Src:             'src/libvncserver/rfbregion.c:490,7'
          Dst:             sraSpanRemove
        - Src:             'src/libvncserver/rfbregion.c:491,7'
          Dst:             sraSpanDestroy
        - Src:             'src/libvncserver/rfbregion.c:496,2'
          Dst:             sraSpanMergePrevious
        - Src:             'src/libvncserver/rfbregion.c:498,2'
          Dst:             sraSpanMergeNext
        - Src:             'src/libvncserver/rfbregion.c:509,11'
          Dst:             sraSpanListEmpty
    - functionName:    sraRgnSubtract
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 568
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sraSpanListSubtract
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:568,10'
          Dst:             sraSpanListSubtract
    - functionName:    sraSpanListOr
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 359
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          312
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached:
        - sraSpanCreate
        - sraSpanInsertAfter
        - sraSpanInsertBefore
        - sraSpanListOr
        - sraSpanMergeNext
        - sraSpanMergePrevious
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:296,27'
          Dst:             sraSpanCreate
        - Src:             'src/libvncserver/rfbregion.c:296,7'
          Dst:             sraSpanInsertBefore
        - Src:             'src/libvncserver/rfbregion.c:300,2'
          Dst:             sraSpanMergePrevious
        - Src:             'src/libvncserver/rfbregion.c:312,24'
          Dst:             sraSpanCreate
        - Src:             'src/libvncserver/rfbregion.c:312,4'
          Dst:             sraSpanInsertBefore
        - Src:             'src/libvncserver/rfbregion.c:316,4'
          Dst:             sraSpanMergePrevious
        - Src:             'src/libvncserver/rfbregion.c:321,23'
          Dst:             sraSpanCreate
        - Src:             'src/libvncserver/rfbregion.c:321,4'
          Dst:             sraSpanInsertAfter
        - Src:             'src/libvncserver/rfbregion.c:328,24'
          Dst:             sraSpanCreate
        - Src:             'src/libvncserver/rfbregion.c:328,4'
          Dst:             sraSpanInsertBefore
        - Src:             'src/libvncserver/rfbregion.c:336,2'
          Dst:             sraSpanListOr
        - Src:             'src/libvncserver/rfbregion.c:340,4'
          Dst:             sraSpanMergePrevious
        - Src:             'src/libvncserver/rfbregion.c:342,4'
          Dst:             sraSpanMergeNext
    - functionName:    sraRgnOr
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sraSpanListOr
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:563,3'
          Dst:             sraSpanListOr
    - functionName:    sraSpanListAnd
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          290
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - sraSpanCreate
        - sraSpanDestroy
        - sraSpanInsertAfter
        - sraSpanListAnd
        - sraSpanListEmpty
        - sraSpanMergePrevious
        - sraSpanRemove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:387,7'
          Dst:             sraSpanRemove
        - Src:             'src/libvncserver/rfbregion.c:388,7'
          Dst:             sraSpanDestroy
        - Src:             'src/libvncserver/rfbregion.c:400,26'
          Dst:             sraSpanCreate
        - Src:             'src/libvncserver/rfbregion.c:400,7'
          Dst:             sraSpanInsertAfter
        - Src:             'src/libvncserver/rfbregion.c:408,10'
          Dst:             sraSpanListAnd
        - Src:             'src/libvncserver/rfbregion.c:411,7'
          Dst:             sraSpanRemove
        - Src:             'src/libvncserver/rfbregion.c:412,7'
          Dst:             sraSpanDestroy
        - Src:             'src/libvncserver/rfbregion.c:417,2'
          Dst:             sraSpanMergePrevious
        - Src:             'src/libvncserver/rfbregion.c:433,5'
          Dst:             sraSpanRemove
        - Src:             'src/libvncserver/rfbregion.c:434,5'
          Dst:             sraSpanDestroy
        - Src:             'src/libvncserver/rfbregion.c:438,11'
          Dst:             sraSpanListEmpty
    - functionName:    sraRgnAnd
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sraSpanListAnd
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:558,10'
          Dst:             sraSpanListAnd
    - functionName:    sraSpanListMakeEmpty
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sraSpanDestroy
        - sraSpanRemove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:168,5'
          Dst:             sraSpanRemove
        - Src:             'src/libvncserver/rfbregion.c:169,5'
          Dst:             sraSpanDestroy
    - functionName:    sraRgnMakeEmpty
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 552
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sraSpanListMakeEmpty
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:551,3'
          Dst:             sraSpanListMakeEmpty
    - functionName:    sraRgnDestroy
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 545
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sraSpanListDestroy
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:546,3'
          Dst:             sraSpanListDestroy
    - functionName:    sraRgnCreateRgn
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbregion.c'
      linkageType:     InternalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sraSpanListDup
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbregion.c:541,22'
          Dst:             sraSpanListDup
    - functionName:    rfbVncAuthNone
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          98
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbProcessClientMessage
        - rfbWriteExact
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/auth.c:201,13'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/auth.c:202,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/auth.c:203,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/auth.c:212,9'
          Dst:             rfbProcessClientMessage
    - functionName:    rfbVncAuthSendChallenge
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbRandomBytes
        - rfbWriteExact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/auth.c:153,5'
          Dst:             rfbRandomBytes
        - Src:             'src/libvncserver/auth.c:154,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/auth.c:155,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/auth.c:156,9'
          Dst:             rfbCloseClient
    - functionName:    rfbAuthProcessClientMessage
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          122
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - rfbClientSendString
        - rfbCloseClient
        - rfbLogPerror
        - rfbReadExact
        - rfbWriteExact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/auth.c:468,14'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/auth.c:470,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/auth.c:471,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/auth.c:478,13'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/auth.c:479,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/auth.c:483,13'
          Dst:             rfbClientSendString
        - Src:             'src/libvncserver/auth.c:486,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/auth.c:492,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/auth.c:493,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/auth.c:494,9'
          Dst:             rfbCloseClient
    - functionName:    rfbProcessClientSecurityType
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          119
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbReadExact
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/auth.c:432,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/auth.c:422,9'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/auth.c:427,6'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/auth.c:428,2'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/auth.c:451,5'
          Dst:             rfbCloseClient
    - functionName:    rfbSendChannelSecurityTypeList
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          83
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbWriteExact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/auth.c:323,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/auth.c:324,2'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/auth.c:325,2'
          Dst:             rfbCloseClient
    - functionName:    rfbSendSecurityType
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          83
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbVncAuthSendChallenge
        - rfbWriteExact
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/auth.c:351,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/auth.c:344,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/auth.c:345,2'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/auth.c:346,2'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/auth.c:358,2'
          Dst:             rfbVncAuthSendChallenge
        - Src:             'src/libvncserver/auth.c:362,2'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/auth.c:363,2'
          Dst:             rfbCloseClient
    - functionName:    rfbAuthNewClient
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          95
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - determinePrimarySecurityType
        - rfbClientConnFailed
        - rfbSendChannelSecurityTypeList
        - rfbSendSecurityType
        - rfbSendSecurityTypeList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/auth.c:381,20'
          Dst:             determinePrimarySecurityType
        - Src:             'src/libvncserver/auth.c:388,6'
          Dst:             rfbClientConnFailed
        - Src:             'src/libvncserver/auth.c:394,6'
          Dst:             rfbClientConnFailed
        - Src:             'src/libvncserver/auth.c:398,2'
          Dst:             rfbSendSecurityType
        - Src:             'src/libvncserver/auth.c:401,2'
          Dst:             rfbSendChannelSecurityTypeList
        - Src:             'src/libvncserver/auth.c:405,2'
          Dst:             rfbSendSecurityTypeList
    - functionName:    determinePrimarySecurityType
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbSendSecurityTypeList
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          143
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - determinePrimarySecurityType
        - rfbClientSendString
        - rfbCloseClient
        - rfbLogPerror
        - rfbRegisterSecurityHandler
        - rfbUnregisterSecurityHandler
        - rfbWriteExact
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/auth.c:265,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/auth.c:264,19'
          Dst:             determinePrimarySecurityType
        - Src:             'src/libvncserver/auth.c:267,2'
          Dst:             rfbUnregisterSecurityHandler
        - Src:             'src/libvncserver/auth.c:268,9'
          Dst:             rfbRegisterSecurityHandler
        - Src:             'src/libvncserver/auth.c:271,2'
          Dst:             rfbUnregisterSecurityHandler
        - Src:             'src/libvncserver/auth.c:272,9'
          Dst:             rfbRegisterSecurityHandler
        - Src:             'src/libvncserver/auth.c:287,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/auth.c:288,2'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/auth.c:289,2'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/auth.c:301,2'
          Dst:             rfbClientSendString
    - functionName:    rfbUnregisterSecurityHandler
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rfbUnregisterSecurityHandlerFrom
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/auth.c:140,5'
          Dst:             rfbUnregisterSecurityHandlerFrom
    - functionName:    rfbRegisterSecurityHandler
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rfbRegisterSecurityHandlerTo
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/auth.c:128,5'
          Dst:             rfbRegisterSecurityHandlerTo
    - functionName:    rfbRegisterSecurityHandlerTo
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          70
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - rfbRegisterSecurityHandlerTo
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/auth.c:59,4'
          Dst:             rfbRegisterSecurityHandlerTo
        - Src:             'src/libvncserver/auth.c:69,2'
          Dst:             rfbRegisterSecurityHandlerTo
    - functionName:    rfbUnregisterSecurityHandlerFrom
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          88
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - rfbUnregisterSecurityHandlerFrom
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/auth.c:83,3'
          Dst:             rfbUnregisterSecurityHandlerFrom
        - Src:             'src/libvncserver/auth.c:97,2'
          Dst:             rfbUnregisterSecurityHandlerFrom
    - functionName:    rfbUnregisterChannelSecurityHandler
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rfbUnregisterSecurityHandlerFrom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/auth.c:115,5'
          Dst:             rfbUnregisterSecurityHandlerFrom
    - functionName:    rfbRegisterChannelSecurityHandler
      functionSourceFile: '/src/libvncserver/src/libvncserver/auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rfbRegisterSecurityHandlerTo
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/auth.c:103,5'
          Dst:             rfbRegisterSecurityHandlerTo
    - functionName:    rfbStringToAddr
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          99
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - gethostbyname
        - htonl
        - inet_addr
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:1036,40'
          Dst:             strcmp
        - Src:             'src/libvncserver/sockets.c:1037,17'
          Dst:             htonl
        - Src:             'src/libvncserver/sockets.c:1038,16'
          Dst:             strcmp
        - Src:             'src/libvncserver/sockets.c:1039,17'
          Dst:             htonl
        - Src:             'src/libvncserver/sockets.c:1042,22'
          Dst:             inet_addr
        - Src:             'src/libvncserver/sockets.c:1042,41'
          Dst:             htonl
        - Src:             'src/libvncserver/sockets.c:1043,24'
          Dst:             gethostbyname
    - functionName:    inet_addr
      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:    gethostbyname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbWriteExact
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 919
      functionLinenumberEnd: 921
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    52
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultWriteToSocket
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 897
      functionLinenumberEnd: 898
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:898,12'
          Dst:             write
    - functionName:    rfbPeekExactTimeout
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 813
      functionLinenumberEnd: 891
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbPeekAtSocket
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 801
      functionLinenumberEnd: 802
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultPeekAtSocket
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 795
      functionLinenumberEnd: 796
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - recv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:796,12'
          Dst:             recv
    - functionName:    recv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbReadExact
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 791
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - rfbReadExactTimeout
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:788,12'
          Dst:             rfbReadExactTimeout
        - Src:             'src/libvncserver/sockets.c:790,12'
          Dst:             rfbReadExactTimeout
    - functionName:    rfbReadExactTimeout
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultHasPendingOnSocket
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 675
      functionLinenumberEnd: 676
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDefaultReadFromSocket
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 664
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:664,12'
          Dst:             read
    - functionName:    rfbConnectToTcpAddr
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1166
      functionLinenumberEnd: 1261
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          219
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - close
        - connect
        - freeaddrinfo
        - gai_strerror
        - getaddrinfo
        - rfbLogPerror
        - snprintf
        - sock_set_nonblocking
        - sock_wait_for_connected
        - socket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:1173,5'
          Dst:             snprintf
        - Src:             'src/libvncserver/sockets.c:1179,15'
          Dst:             getaddrinfo
        - Src:             'src/libvncserver/sockets.c:1180,67'
          Dst:             gai_strerror
        - Src:             'src/libvncserver/sockets.c:1186,21'
          Dst:             socket
        - Src:             'src/libvncserver/sockets.c:1189,6'
          Dst:             sock_set_nonblocking
        - Src:             'src/libvncserver/sockets.c:1190,10'
          Dst:             connect
        - Src:             'src/libvncserver/sockets.c:1196,8'
          Dst:             __errno_location
        - Src:             'src/libvncserver/sockets.c:1196,32'
          Dst:             __errno_location
        - Src:             'src/libvncserver/sockets.c:1196,57'
          Dst:             sock_wait_for_connected
        - Src:             'src/libvncserver/sockets.c:1198,3'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:1201,6'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:1207,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:1211,7'
          Dst:             sock_set_nonblocking
        - Src:             'src/libvncserver/sockets.c:1212,6'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:1216,5'
          Dst:             freeaddrinfo
    - functionName:    getaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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:    socket
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    connect
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    freeaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbConnect
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 626
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          117
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - close
        - rfbConnectToTcpAddr
        - rfbLogPerror
        - rfbSetNonBlocking
        - setsockopt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:633,17'
          Dst:             rfbConnectToTcpAddr
        - Src:             'src/libvncserver/sockets.c:634,2'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:638,9'
          Dst:             rfbSetNonBlocking
        - Src:             'src/libvncserver/sockets.c:639,9'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:643,9'
          Dst:             setsockopt
        - Src:             'src/libvncserver/sockets.c:645,2'
          Dst:             rfbLogPerror
    - functionName:    rfbSetNonBlocking
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1295
      functionLinenumberEnd: 1296
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sock_set_nonblocking
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:1296,12'
          Dst:             sock_set_nonblocking
    - functionName:    setsockopt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbCloseClient
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 556
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         31
      ICount:          244
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - close
        - pthread_cond_signal
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbssl_destroy
        - write
      functionUses:    96
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:568,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/sockets.c:582,6'
          Dst:             rfbssl_destroy
        - Src:             'src/libvncserver/sockets.c:586,5'
          Dst:             pthread_cond_signal
        - Src:             'src/libvncserver/sockets.c:587,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/sockets.c:602,2'
          Dst:             write
        - Src:             'src/libvncserver/sockets.c:612,6'
          Dst:             close
    - functionName:    rfbNewConnectionFromSock
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          87
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - close
        - getnameinfo
        - getpeername
        - rfbLogPerror
        - rfbNewClient
        - rfbSetNonBlocking
        - setsockopt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:118,5'
          Dst:             getpeername
        - Src:             'src/libvncserver/sockets.c:120,9'
          Dst:             rfbSetNonBlocking
        - Src:             'src/libvncserver/sockets.c:121,7'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:122,7'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:126,9'
          Dst:             setsockopt
        - Src:             'src/libvncserver/sockets.c:128,7'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:143,8'
          Dst:             getnameinfo
        - Src:             'src/libvncserver/sockets.c:144,7'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:152,5'
          Dst:             rfbNewClient
    - functionName:    rfbDisconnectUDPSock
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 550
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbProcessNewConnection
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 543
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         41
      ICount:          301
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - accept
        - close
        - fcntl
        - getrlimit
        - rfbLogPerror
        - rfbNewConnectionFromSock
        - select
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:500,9'
          Dst:             select
        - Src:             'src/libvncserver/sockets.c:501,7'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:518,8'
          Dst:             getrlimit
        - Src:             'src/libvncserver/sockets.c:526,5'
          Dst:             fcntl
        - Src:             'src/libvncserver/sockets.c:531,9'
          Dst:             accept
        - Src:             'src/libvncserver/sockets.c:532,2'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:537,17'
          Dst:             accept
        - Src:             'src/libvncserver/sockets.c:538,7'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:542,12'
          Dst:             rfbNewConnectionFromSock
    - functionName:    getrlimit
      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:    rfbHasPendingOnSocket
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbCheckFds
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         94
      ICount:          643
      EdgeCount:       128
      CyclomaticComplexity: 36
      functionsReached:
        - __errno_location
        - connect
        - memcmp
        - recvfrom
        - rfbClientIteratorNext
        - rfbDisconnectUDPSock
        - rfbGetClientIterator
        - rfbHasPendingOnSocket
        - rfbLogPerror
        - rfbNewClientConnection
        - rfbNewUDPClient
        - rfbNewUDPConnection
        - rfbProcessClientMessage
        - rfbProcessNewConnection
        - rfbProcessUDPInput
        - rfbReleaseClientIterator
        - rfbSendFileTransferChunk
        - select
        - webSocketsHasDataInBuffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:360,2'
          Dst:             rfbNewClientConnection
        - Src:             'src/libvncserver/sockets.c:368,9'
          Dst:             select
        - Src:             'src/libvncserver/sockets.c:373,17'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/sockets.c:374,25'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/sockets.c:377,35'
          Dst:             rfbHasPendingOnSocket
        - Src:             'src/libvncserver/sockets.c:379,21'
          Dst:             rfbSendFileTransferChunk
        - Src:             'src/libvncserver/sockets.c:381,13'
          Dst:             rfbReleaseClientIterator
        - Src:             'src/libvncserver/sockets.c:390,10'
          Dst:             __errno_location
        - Src:             'src/libvncserver/sockets.c:391,3'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:399,11'
          Dst:             rfbProcessNewConnection
        - Src:             'src/libvncserver/sockets.c:409,11'
          Dst:             rfbProcessNewConnection
        - Src:             'src/libvncserver/sockets.c:419,3'
          Dst:             rfbNewUDPClient
        - Src:             'src/libvncserver/sockets.c:420,10'
          Dst:             recvfrom
        - Src:             'src/libvncserver/sockets.c:422,3'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:423,3'
          Dst:             rfbDisconnectUDPSock
        - Src:             'src/libvncserver/sockets.c:427,5'
          Dst:             memcmp
        - Src:             'src/libvncserver/sockets.c:435,11'
          Dst:             connect
        - Src:             'src/libvncserver/sockets.c:437,4'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:438,4'
          Dst:             rfbDisconnectUDPSock
        - Src:             'src/libvncserver/sockets.c:442,7'
          Dst:             rfbNewUDPConnection
        - Src:             'src/libvncserver/sockets.c:445,3'
          Dst:             rfbProcessUDPInput
        - Src:             'src/libvncserver/sockets.c:453,6'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/sockets.c:454,14'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/sockets.c:459,17'
          Dst:             rfbHasPendingOnSocket
        - Src:             'src/libvncserver/sockets.c:462,21'
          Dst:             rfbHasPendingOnSocket
        - Src:             'src/libvncserver/sockets.c:467,25'
          Dst:             rfbProcessClientMessage
        - Src:             'src/libvncserver/sockets.c:468,64'
          Dst:             webSocketsHasDataInBuffer
        - Src:             'src/libvncserver/sockets.c:474,21'
          Dst:             rfbSendFileTransferChunk
        - Src:             'src/libvncserver/sockets.c:477,2'
          Dst:             rfbReleaseClientIterator
    - functionName:    recvfrom
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbShutdownSockets
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          242
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:309,2'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:315,2'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:321,2'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:327,2'
          Dst:             close
    - functionName:    rfbListenOnUDPPort
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1266
      functionLinenumberEnd: 1288
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          69
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - bind
        - htons
        - setsockopt
        - socket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:1273,21'
          Dst:             htons
        - Src:             'src/libvncserver/sockets.c:1276,17'
          Dst:             socket
        - Src:             'src/libvncserver/sockets.c:1279,9'
          Dst:             setsockopt
        - Src:             'src/libvncserver/sockets.c:1283,9'
          Dst:             bind
    - functionName:    htons
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bind
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbListenOnTCP6Port
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1089
      functionLinenumberEnd: 1160
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          209
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - bind
        - close
        - freeaddrinfo
        - gai_strerror
        - getaddrinfo
        - listen
        - rfbLogPerror
        - setsockopt
        - snprintf
        - socket
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:1100,5'
          Dst:             snprintf
        - Src:             'src/libvncserver/sockets.c:1107,15'
          Dst:             getaddrinfo
        - Src:             'src/libvncserver/sockets.c:1108,66'
          Dst:             gai_strerror
        - Src:             'src/libvncserver/sockets.c:1114,21'
          Dst:             socket
        - Src:             'src/libvncserver/sockets.c:1120,6'
          Dst:             setsockopt
        - Src:             'src/libvncserver/sockets.c:1121,4'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:1122,4'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:1123,4'
          Dst:             freeaddrinfo
        - Src:             'src/libvncserver/sockets.c:1128,6'
          Dst:             setsockopt
        - Src:             'src/libvncserver/sockets.c:1129,4'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:1130,4'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:1131,4'
          Dst:             freeaddrinfo
        - Src:             'src/libvncserver/sockets.c:1135,6'
          Dst:             bind
        - Src:             'src/libvncserver/sockets.c:1136,4'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:1144,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:1145,9'
          Dst:             freeaddrinfo
        - Src:             'src/libvncserver/sockets.c:1150,5'
          Dst:             freeaddrinfo
        - Src:             'src/libvncserver/sockets.c:1152,9'
          Dst:             listen
        - Src:             'src/libvncserver/sockets.c:1153,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:1154,2'
          Dst:             close
    - functionName:    listen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbListenOnTCPPort
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1055
      functionLinenumberEnd: 1083
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          115
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - bind
        - close
        - htons
        - listen
        - setsockopt
        - socket
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:1062,21'
          Dst:             htons
        - Src:             'src/libvncserver/sockets.c:1065,17'
          Dst:             socket
        - Src:             'src/libvncserver/sockets.c:1068,9'
          Dst:             setsockopt
        - Src:             'src/libvncserver/sockets.c:1070,2'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:1073,9'
          Dst:             bind
        - Src:             'src/libvncserver/sockets.c:1074,2'
          Dst:             close
        - Src:             'src/libvncserver/sockets.c:1077,9'
          Dst:             listen
        - Src:             'src/libvncserver/sockets.c:1078,2'
          Dst:             close
    - functionName:    rfbInitSockets
      functionSourceFile: '/src/libvncserver/src/libvncserver/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         71
      ICount:          594
      EdgeCount:       95
      CyclomaticComplexity: 26
      functionsReached:
        - rfbListenOnTCP6Port
        - rfbListenOnTCPPort
        - rfbListenOnUDPPort
        - rfbLogPerror
        - rfbSetNonBlocking
        - setsockopt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/sockets.c:200,13'
          Dst:             rfbSetNonBlocking
        - Src:             'src/libvncserver/sockets.c:203,6'
          Dst:             setsockopt
        - Src:             'src/libvncserver/sockets.c:205,6'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:220,42'
          Dst:             rfbListenOnTCPPort
        - Src:             'src/libvncserver/sockets.c:227,6'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:241,43'
          Dst:             rfbListenOnTCP6Port
        - Src:             'src/libvncserver/sockets.c:248,6'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:261,36'
          Dst:             rfbListenOnTCPPort
        - Src:             'src/libvncserver/sockets.c:262,2'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/sockets.c:273,37'
          Dst:             rfbListenOnTCP6Port
        - Src:             'src/libvncserver/sockets.c:289,28'
          Dst:             rfbListenOnUDPPort
        - Src:             'src/libvncserver/sockets.c:290,6'
          Dst:             rfbLogPerror
    - functionName:    rfbPrintStats
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         72
      ICount:          535
      EdgeCount:       95
      CyclomaticComplexity: 25
      functionsReached:
        - encodingName
        - messageNameClient2Server
        - messageNameServer2Client
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/stats.c:396,22'
          Dst:             messageNameServer2Client
        - Src:             'src/libvncserver/stats.c:414,22'
          Dst:             encodingName
        - Src:             'src/libvncserver/stats.c:442,22'
          Dst:             messageNameClient2Server
        - Src:             'src/libvncserver/stats.c:459,22'
          Dst:             encodingName
    - functionName:    messageNameServer2Client
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          114
      EdgeCount:       17
      CyclomaticComplexity: 2
      functionsReached:
        - snprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/stats.c:48,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/stats.c:49,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:50,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:51,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:52,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:53,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:54,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:55,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:56,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:57,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:59,9'
          Dst:             snprintf
    - functionName:    encodingName
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          459
      EdgeCount:       60
      CyclomaticComplexity: 2
      functionsReached:
        - snprintf
      functionUses:    8
      BranchProfiles:
        - Branch String:   'src/libvncserver/stats.c:96,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/stats.c:97,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:98,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:99,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:100,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:101,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:102,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:103,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:104,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:105,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:106,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:107,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:108,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:109,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:110,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:111,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:112,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:113,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:114,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:115,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:116,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:117,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:118,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:120,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:121,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:122,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:124,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:125,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:126,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:127,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:128,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:129,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:130,41'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:133,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:134,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:135,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:136,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:137,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:138,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:139,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:140,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:141,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:142,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:144,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:145,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:146,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:147,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:148,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:149,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:150,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:151,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:152,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:153,37'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:157,9'
          Dst:             snprintf
    - functionName:    messageNameClient2Server
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          163
      EdgeCount:       23
      CyclomaticComplexity: 2
      functionsReached:
        - snprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/stats.c:66,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/stats.c:67,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:68,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:69,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:70,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:71,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:72,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:73,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:74,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:75,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:76,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:77,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:78,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:79,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:80,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:81,39'
          Dst:             snprintf
        - Src:             'src/libvncserver/stats.c:83,9'
          Dst:             snprintf
    - functionName:    rfbResetStats
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStatGetEncodingCountRcvd
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStatGetEncodingCountSent
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStatGetMessageCountRcvd
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 336
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStatGetMessageCountSent
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStatGetRcvdBytesIfRaw
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStatGetRcvdBytes
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStatGetSentBytesIfRaw
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStatGetSentBytes
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStatRecordMessageRcvd
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbStatLookupMessage
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/stats.c:263,11'
          Dst:             rfbStatLookupMessage
    - functionName:    rfbStatLookupMessage
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          88
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStatRecordMessageSent
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbStatLookupMessage
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/stats.c:250,11'
          Dst:             rfbStatLookupMessage
    - functionName:    rfbStatRecordEncodingRcvd
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbStatLookupEncoding
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/stats.c:237,11'
          Dst:             rfbStatLookupEncoding
    - functionName:    rfbStatLookupEncoding
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          88
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbStatRecordEncodingSent
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbStatLookupEncoding
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/stats.c:224,11'
          Dst:             rfbStatLookupEncoding
    - functionName:    rfbStatRecordEncodingSentAdd
      functionSourceFile: '/src/libvncserver/src/libvncserver/stats.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbStatLookupEncoding
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/stats.c:214,11'
          Dst:             rfbStatLookupEncoding
    - functionName:    getBgColour
      functionSourceFile: '/src/libvncserver/src/libvncserver/corre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          145
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    subrectEncode32
      functionSourceFile: '/src/libvncserver/src/libvncserver/corre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          442
      EdgeCount:       72
      CyclomaticComplexity: 18
      functionsReached:
        - getBgColour
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/corre.c:309,1'
          Dst:             getBgColour
    - functionName:    subrectEncode16
      functionSourceFile: '/src/libvncserver/src/libvncserver/corre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          449
      EdgeCount:       72
      CyclomaticComplexity: 18
      functionsReached:
        - getBgColour
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/corre.c:308,1'
          Dst:             getBgColour
    - functionName:    subrectEncode8
      functionSourceFile: '/src/libvncserver/src/libvncserver/corre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          449
      EdgeCount:       72
      CyclomaticComplexity: 18
      functionsReached:
        - getBgColour
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/corre.c:307,1'
          Dst:             getBgColour
    - functionName:    rfbSendSmallRectEncodingCoRRE
      functionSourceFile: '/src/libvncserver/src/libvncserver/corre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          665
      EdgeCount:       98
      CyclomaticComplexity: 25
      functionsReached:
        - realloc
        - rfbSendRectEncodingRaw
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
        - subrectEncode16
        - subrectEncode32
        - subrectEncode8
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/corre.c:133,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/corre.c:103,51'
          Dst:             realloc
        - Src:             'src/libvncserver/corre.c:115,50'
          Dst:             realloc
        - Src:             'src/libvncserver/corre.c:135,21'
          Dst:             subrectEncode8
        - Src:             'src/libvncserver/corre.c:138,21'
          Dst:             subrectEncode16
        - Src:             'src/libvncserver/corre.c:141,21'
          Dst:             subrectEncode32
        - Src:             'src/libvncserver/corre.c:152,16'
          Dst:             rfbSendRectEncodingRaw
        - Src:             'src/libvncserver/corre.c:155,5'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/corre.c:162,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/corre.c:195,18'
          Dst:             rfbSendUpdateBuf
    - functionName:    rfbSendRectEncodingCoRRE
      functionSourceFile: '/src/libvncserver/src/libvncserver/corre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          132
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - rfbSendRectEncodingCoRRE
        - rfbSendSmallRectEncodingCoRRE
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/corre.c:60,17'
          Dst:             rfbSendRectEncodingCoRRE
        - Src:             'src/libvncserver/corre.c:61,3'
          Dst:             rfbSendRectEncodingCoRRE
        - Src:             'src/libvncserver/corre.c:66,17'
          Dst:             rfbSendRectEncodingCoRRE
        - Src:             'src/libvncserver/corre.c:67,3'
          Dst:             rfbSendRectEncodingCoRRE
        - Src:             'src/libvncserver/corre.c:71,5'
          Dst:             rfbSendSmallRectEncodingCoRRE
    - functionName:    subrectEncode32
      functionSourceFile: '/src/libvncserver/src/libvncserver/hextile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      char
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          509
      EdgeCount:       76
      CyclomaticComplexity: 19
      functionsReached:
        - rfbStatRecordEncodingSentAdd
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/hextile.c:342,1'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/hextile.c:342,1'
          Dst:             rfbStatRecordEncodingSentAdd
    - functionName:    testColours32
      functionSourceFile: '/src/libvncserver/src/libvncserver/hextile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          133
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    subrectEncode16
      functionSourceFile: '/src/libvncserver/src/libvncserver/hextile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      char
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - short
        - short
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          491
      EdgeCount:       76
      CyclomaticComplexity: 19
      functionsReached:
        - rfbStatRecordEncodingSentAdd
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/hextile.c:341,1'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/hextile.c:341,1'
          Dst:             rfbStatRecordEncodingSentAdd
    - functionName:    testColours16
      functionSourceFile: '/src/libvncserver/src/libvncserver/hextile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          137
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    subrectEncode8
      functionSourceFile: '/src/libvncserver/src/libvncserver/hextile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      char
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - char
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          478
      EdgeCount:       76
      CyclomaticComplexity: 19
      functionsReached:
        - rfbStatRecordEncodingSentAdd
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/hextile.c:340,1'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/hextile.c:340,1'
          Dst:             rfbStatRecordEncodingSentAdd
    - functionName:    testColours8
      functionSourceFile: '/src/libvncserver/src/libvncserver/hextile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          137
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sendHextiles32
      functionSourceFile: '/src/libvncserver/src/libvncserver/hextile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          516
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSentAdd
        - subrectEncode32
        - testColours32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/hextile.c:342,1'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/hextile.c:342,1'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/hextile.c:342,1'
          Dst:             testColours32
        - Src:             'src/libvncserver/hextile.c:342,1'
          Dst:             subrectEncode32
        - Src:             'src/libvncserver/hextile.c:342,1'
          Dst:             rfbStatRecordEncodingSentAdd
    - functionName:    sendHextiles16
      functionSourceFile: '/src/libvncserver/src/libvncserver/hextile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          472
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSentAdd
        - subrectEncode16
        - testColours16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/hextile.c:341,1'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/hextile.c:341,1'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/hextile.c:341,1'
          Dst:             testColours16
        - Src:             'src/libvncserver/hextile.c:341,1'
          Dst:             subrectEncode16
        - Src:             'src/libvncserver/hextile.c:341,1'
          Dst:             rfbStatRecordEncodingSentAdd
    - functionName:    sendHextiles8
      functionSourceFile: '/src/libvncserver/src/libvncserver/hextile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          446
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSentAdd
        - subrectEncode8
        - testColours8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/hextile.c:340,1'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/hextile.c:340,1'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/hextile.c:340,1'
          Dst:             testColours8
        - Src:             'src/libvncserver/hextile.c:340,1'
          Dst:             subrectEncode8
        - Src:             'src/libvncserver/hextile.c:340,1'
          Dst:             rfbStatRecordEncodingSentAdd
    - functionName:    rfbSendRectEncodingHextile
      functionSourceFile: '/src/libvncserver/src/libvncserver/hextile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          242
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
        - sendHextiles16
        - sendHextiles32
        - sendHextiles8
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/hextile.c:67,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/hextile.c:49,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/hextile.c:63,5'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/hextile.c:69,16'
          Dst:             sendHextiles8
        - Src:             'src/libvncserver/hextile.c:71,16'
          Dst:             sendHextiles16
        - Src:             'src/libvncserver/hextile.c:73,16'
          Dst:             sendHextiles32
    - functionName:    getBgColour
      functionSourceFile: '/src/libvncserver/src/libvncserver/rre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          145
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    subrectEncode32
      functionSourceFile: '/src/libvncserver/src/libvncserver/rre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          526
      EdgeCount:       88
      CyclomaticComplexity: 22
      functionsReached:
        - getBgColour
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rre.c:276,1'
          Dst:             getBgColour
    - functionName:    subrectEncode16
      functionSourceFile: '/src/libvncserver/src/libvncserver/rre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          533
      EdgeCount:       88
      CyclomaticComplexity: 22
      functionsReached:
        - getBgColour
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rre.c:275,1'
          Dst:             getBgColour
    - functionName:    subrectEncode8
      functionSourceFile: '/src/libvncserver/src/libvncserver/rre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          533
      EdgeCount:       88
      CyclomaticComplexity: 22
      functionsReached:
        - getBgColour
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rre.c:274,1'
          Dst:             getBgColour
    - functionName:    rfbSendRectEncodingRRE
      functionSourceFile: '/src/libvncserver/src/libvncserver/rre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          665
      EdgeCount:       98
      CyclomaticComplexity: 25
      functionsReached:
        - realloc
        - rfbSendRectEncodingRaw
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
        - subrectEncode16
        - subrectEncode32
        - subrectEncode8
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/rre.c:100,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/rre.c:69,51'
          Dst:             realloc
        - Src:             'src/libvncserver/rre.c:81,50'
          Dst:             realloc
        - Src:             'src/libvncserver/rre.c:102,21'
          Dst:             subrectEncode8
        - Src:             'src/libvncserver/rre.c:105,21'
          Dst:             subrectEncode16
        - Src:             'src/libvncserver/rre.c:108,21'
          Dst:             subrectEncode32
        - Src:             'src/libvncserver/rre.c:119,16'
          Dst:             rfbSendRectEncodingRaw
        - Src:             'src/libvncserver/rre.c:122,5'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/rre.c:129,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/rre.c:162,18'
          Dst:             rfbSendUpdateBuf
    - functionName:    rfbInitOneRGBTable32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinittctemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          117
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitOneRGBTable24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinit24.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          121
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitOneRGBTable16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinittctemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          107
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitOneRGBTable8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinittctemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          72
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitTrueColourRGBTables32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinittctemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          151
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbInitOneRGBTable32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tableinittctemplate.c:113,5'
          Dst:             rfbInitOneRGBTable32
        - Src:             'src/libvncserver/tableinittctemplate.c:115,5'
          Dst:             rfbInitOneRGBTable32
        - Src:             'src/libvncserver/tableinittctemplate.c:117,5'
          Dst:             rfbInitOneRGBTable32
    - functionName:    rfbInitTrueColourRGBTables24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinit24.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          154
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbInitOneRGBTable24
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tableinit24.c:130,5'
          Dst:             rfbInitOneRGBTable24
        - Src:             'src/libvncserver/tableinit24.c:132,5'
          Dst:             rfbInitOneRGBTable24
        - Src:             'src/libvncserver/tableinit24.c:134,5'
          Dst:             rfbInitOneRGBTable24
    - functionName:    rfbInitTrueColourRGBTables16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinittctemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          151
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbInitOneRGBTable16
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tableinittctemplate.c:113,5'
          Dst:             rfbInitOneRGBTable16
        - Src:             'src/libvncserver/tableinittctemplate.c:115,5'
          Dst:             rfbInitOneRGBTable16
        - Src:             'src/libvncserver/tableinittctemplate.c:117,5'
          Dst:             rfbInitOneRGBTable16
    - functionName:    rfbInitTrueColourRGBTables8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinittctemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          151
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbInitOneRGBTable8
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tableinittctemplate.c:113,5'
          Dst:             rfbInitOneRGBTable8
        - Src:             'src/libvncserver/tableinittctemplate.c:115,5'
          Dst:             rfbInitOneRGBTable8
        - Src:             'src/libvncserver/tableinittctemplate.c:117,5'
          Dst:             rfbInitOneRGBTable8
    - functionName:    rfbTranslateWithRGBTables32to32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          150
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables32to24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          159
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables32to16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          154
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables32to8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          154
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables24to32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          159
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables24to24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          168
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables24to16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          163
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables24to8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          163
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables16to32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          153
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables16to24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          162
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables16to16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          157
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables16to8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          157
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables8to32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          153
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables8to24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          162
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables8to16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          157
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithRGBTables8to8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          157
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitColourMapSingleTable32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinitcmtemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          282
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitColourMapSingleTable24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinit24.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          304
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitColourMapSingleTable16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinitcmtemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          270
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitColourMapSingleTable8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinitcmtemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          228
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitTrueColourSingleTable32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinittctemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          244
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitTrueColourSingleTable24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinit24.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          266
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitTrueColourSingleTable16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinittctemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          232
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbInitTrueColourSingleTable8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tableinittctemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          190
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable32to32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          85
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable32to24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          87
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable32to16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          85
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable32to8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          85
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable24to32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          94
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable24to24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          144
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable24to16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          94
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable24to8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          94
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable16to32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          85
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable16to24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          88
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable16to16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          85
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable16to8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          85
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable8to32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          85
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable8to24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletrans24template.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          88
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable8to16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          85
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbTranslateWithSingleTable8to8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tabletranstemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          85
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbSetClientColourMaps
      functionSourceFile: '/src/libvncserver/src/libvncserver/translate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 460
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rfbClientIteratorNext
        - rfbGetClientIterator
        - rfbReleaseClientIterator
        - rfbSetClientColourMap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/translate.c:456,9'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/translate.c:457,17'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/translate.c:458,7'
          Dst:             rfbSetClientColourMap
        - Src:             'src/libvncserver/translate.c:459,5'
          Dst:             rfbReleaseClientIterator
    - functionName:    rfbSetClientColourMap
      functionSourceFile: '/src/libvncserver/src/libvncserver/translate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 419
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          134
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbSendSetColourMapEntries
        - sraRgnCreateRect
        - sraRgnDestroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/translate.c:429,2'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/translate.c:434,2'
          Dst:             sraRgnDestroy
        - Src:             'src/libvncserver/translate.c:436,4'
          Dst:             sraRgnCreateRect
        - Src:             'src/libvncserver/translate.c:437,2'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/translate.c:442,12'
          Dst:             rfbSendSetColourMapEntries
    - functionName:    rfbSetClientColourMapBGR233
      functionSourceFile: '/src/libvncserver/src/libvncserver/translate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          243
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - rfbCloseClient
        - rfbLogPerror
        - rfbWriteExact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/translate.c:375,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/translate.c:400,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/translate.c:401,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/translate.c:402,9'
          Dst:             rfbCloseClient
    - functionName:    PrintPixelFormat
      functionSourceFile: '/src/libvncserver/src/libvncserver/translate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 464
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          119
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbSetTranslateFunction
      functionSourceFile: '/src/libvncserver/src/libvncserver/translate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         74
      ICount:          654
      EdgeCount:       103
      CyclomaticComplexity: 31
      functionsReached:
        - PrintPixelFormat
        - rfbCloseClient
        - rfbSetClientColourMapBGR233
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/translate.c:248,5'
          Dst:             PrintPixelFormat
        - Src:             'src/libvncserver/translate.c:264,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/translate.c:277,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/translate.c:285,9'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/translate.c:301,14'
          Dst:             rfbSetClientColourMapBGR233
    - functionName:    rfbTranslateNone
      functionSourceFile: '/src/libvncserver/src/libvncserver/translate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          58
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    validateString
      functionSourceFile: '/src/libvncserver/src/libvncserver/httpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 677
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          123
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - __ctype_b_loc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/httpd.c:681,7'
          Dst:             __ctype_b_loc
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compareAndSkip
      functionSourceFile: '/src/libvncserver/src/libvncserver/httpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 590
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strlen
        - strncmp
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/httpd.c:591,28'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:591,9'
          Dst:             strncmp
        - Src:             'src/libvncserver/httpd.c:592,10'
          Dst:             strlen
    - 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:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parseParams
      functionSourceFile: '/src/libvncserver/src/libvncserver/httpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 667
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          172
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - sprintf
        - strcat
        - strchr
        - strcpy
        - strlen
        - validateString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/httpd.c:620,14'
          Dst:             strchr
        - Src:             'src/libvncserver/httpd.c:622,10'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:625,6'
          Dst:             strcpy
        - Src:             'src/libvncserver/httpd.c:636,14'
          Dst:             strchr
        - Src:             'src/libvncserver/httpd.c:641,6'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:646,7'
          Dst:             validateString
        - Src:             'src/libvncserver/httpd.c:646,41'
          Dst:             validateString
        - Src:             'src/libvncserver/httpd.c:651,8'
          Dst:             sprintf
        - Src:             'src/libvncserver/httpd.c:657,2'
          Dst:             strcat
    - functionName:    strchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    httpCloseSock
      functionSourceFile: '/src/libvncserver/src/libvncserver/httpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - close
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/httpd.c:273,5'
          Dst:             close
    - functionName:    httpProcessInput
      functionSourceFile: '/src/libvncserver/src/libvncserver/httpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         151
      ICount:          895
      EdgeCount:       206
      CyclomaticComplexity: 57
      functionsReached:
        - __errno_location
        - __isoc99_sscanf
        - atoi
        - compareAndSkip
        - fclose
        - fopen
        - fread
        - getenv
        - getnameinfo
        - getpeername
        - httpCloseSock
        - parseParams
        - read
        - rfbLogPerror
        - rfbNewClientConnection
        - rfbWriteExact
        - sprintf
        - strcasecmp
        - strchr
        - strcmp
        - strcpy
        - strcspn
        - strlen
        - strncmp
        - strrchr
        - strstr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/httpd.c:300,16'
          Dst:             getenv
        - Src:             'src/libvncserver/httpd.c:305,9'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:307,2'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:310,5'
          Dst:             strcpy
        - Src:             'src/libvncserver/httpd.c:311,24'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:312,25'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:322,6'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:326,8'
          Dst:             read
        - Src:             'src/libvncserver/httpd.c:336,7'
          Dst:             __errno_location
        - Src:             'src/libvncserver/httpd.c:339,3'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/httpd.c:341,6'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:349,6'
          Dst:             strstr
        - Src:             'src/libvncserver/httpd.c:349,30'
          Dst:             strstr
        - Src:             'src/libvncserver/httpd.c:350,6'
          Dst:             strstr
        - Src:             'src/libvncserver/httpd.c:350,34'
          Dst:             strstr
        - Src:             'src/libvncserver/httpd.c:358,6'
          Dst:             strncmp
        - Src:             'src/libvncserver/httpd.c:359,20'
          Dst:             strchr
        - Src:             'src/libvncserver/httpd.c:360,26'
          Dst:             atoi
        - Src:             'src/libvncserver/httpd.c:362,3'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:363,3'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:368,37'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:368,6'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:369,6'
          Dst:             rfbNewClientConnection
        - Src:             'src/libvncserver/httpd.c:373,7'
          Dst:             strncmp
        - Src:             'src/libvncserver/httpd.c:374,20'
          Dst:             strchr
        - Src:             'src/libvncserver/httpd.c:375,28'
          Dst:             strncmp
        - Src:             'src/libvncserver/httpd.c:378,34'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:378,3'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:379,3'
          Dst:             rfbNewClientConnection
        - Src:             'src/libvncserver/httpd.c:386,9'
          Dst:             strncmp
        - Src:             'src/libvncserver/httpd.c:388,2'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:392,6'
          Dst:             strcspn
        - Src:             'src/libvncserver/httpd.c:395,9'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:397,2'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:401,9'
          Dst:             __isoc99_sscanf
        - Src:             'src/libvncserver/httpd.c:403,2'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:409,2'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:410,2'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:415,5'
          Dst:             getpeername
        - Src:             'src/libvncserver/httpd.c:419,12'
          Dst:             getnameinfo
        - Src:             'src/libvncserver/httpd.c:420,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/httpd.c:432,11'
          Dst:             strchr
        - Src:             'src/libvncserver/httpd.c:435,13'
          Dst:             parseParams
        - Src:             'src/libvncserver/httpd.c:443,9'
          Dst:             strstr
        - Src:             'src/libvncserver/httpd.c:445,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:446,9'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:452,9'
          Dst:             strcmp
        - Src:             'src/libvncserver/httpd.c:453,2'
          Dst:             strcpy
        - Src:             'src/libvncserver/httpd.c:459,9'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:459,45'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:459,31'
          Dst:             strcmp
        - Src:             'src/libvncserver/httpd.c:465,15'
          Dst:             fopen
        - Src:             'src/libvncserver/httpd.c:466,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/httpd.c:467,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:468,9'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:472,5'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:473,17'
          Dst:             strrchr
        - Src:             'src/libvncserver/httpd.c:475,15'
          Dst:             strcasecmp
        - Src:             'src/libvncserver/httpd.c:477,20'
          Dst:             strcasecmp
        - Src:             'src/libvncserver/httpd.c:479,20'
          Dst:             strcasecmp
        - Src:             'src/libvncserver/httpd.c:481,20'
          Dst:             strcasecmp
        - Src:             'src/libvncserver/httpd.c:483,37'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:483,5'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:485,5'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:488,10'
          Dst:             fread
        - Src:             'src/libvncserver/httpd.c:490,6'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/httpd.c:491,6'
          Dst:             fclose
        - Src:             'src/libvncserver/httpd.c:492,6'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:510,23'
          Dst:             strchr
        - Src:             'src/libvncserver/httpd.c:511,3'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:515,7'
          Dst:             compareAndSkip
        - Src:             'src/libvncserver/httpd.c:517,7'
          Dst:             sprintf
        - Src:             'src/libvncserver/httpd.c:518,31'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:518,7'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:520,14'
          Dst:             compareAndSkip
        - Src:             'src/libvncserver/httpd.c:522,7'
          Dst:             sprintf
        - Src:             'src/libvncserver/httpd.c:523,31'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:523,7'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:525,14'
          Dst:             compareAndSkip
        - Src:             'src/libvncserver/httpd.c:527,7'
          Dst:             sprintf
        - Src:             'src/libvncserver/httpd.c:528,31'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:528,7'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:530,14'
          Dst:             compareAndSkip
        - Src:             'src/libvncserver/httpd.c:532,7'
          Dst:             sprintf
        - Src:             'src/libvncserver/httpd.c:533,31'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:533,7'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:535,14'
          Dst:             compareAndSkip
        - Src:             'src/libvncserver/httpd.c:537,7'
          Dst:             sprintf
        - Src:             'src/libvncserver/httpd.c:538,31'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:538,7'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:540,14'
          Dst:             compareAndSkip
        - Src:             'src/libvncserver/httpd.c:542,50'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:542,7'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:544,14'
          Dst:             compareAndSkip
        - Src:             'src/libvncserver/httpd.c:546,7'
          Dst:             sprintf
        - Src:             'src/libvncserver/httpd.c:547,31'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:547,7'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:549,14'
          Dst:             compareAndSkip
        - Src:             'src/libvncserver/httpd.c:553,8'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:552,4'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:556,4'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:557,14'
          Dst:             compareAndSkip
        - Src:             'src/libvncserver/httpd.c:559,31'
          Dst:             strlen
        - Src:             'src/libvncserver/httpd.c:559,4'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:561,12'
          Dst:             compareAndSkip
        - Src:             'src/libvncserver/httpd.c:564,11'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:565,4'
          Dst:             fclose
        - Src:             'src/libvncserver/httpd.c:566,4'
          Dst:             httpCloseSock
        - Src:             'src/libvncserver/httpd.c:571,10'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:578,10'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/httpd.c:583,5'
          Dst:             fclose
        - Src:             'src/libvncserver/httpd.c:584,5'
          Dst:             httpCloseSock
    - functionName:    strstr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atoi
      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:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcspn
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fread
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbHttpCheckFds
      functionSourceFile: '/src/libvncserver/src/libvncserver/httpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         68
      ICount:          482
      EdgeCount:       92
      CyclomaticComplexity: 26
      functionsReached:
        - __errno_location
        - accept
        - close
        - httpProcessInput
        - rfbLogPerror
        - rfbSetNonBlocking
        - select
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/httpd.c:207,12'
          Dst:             select
        - Src:             'src/libvncserver/httpd.c:215,6'
          Dst:             __errno_location
        - Src:             'src/libvncserver/httpd.c:216,3'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/httpd.c:221,2'
          Dst:             httpProcessInput
        - Src:             'src/libvncserver/httpd.c:226,49'
          Dst:             close
        - Src:             'src/libvncserver/httpd.c:229,33'
          Dst:             accept
        - Src:             'src/libvncserver/httpd.c:230,8'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/httpd.c:235,33'
          Dst:             accept
        - Src:             'src/libvncserver/httpd.c:236,8'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/httpd.c:260,13'
          Dst:             rfbSetNonBlocking
        - Src:             'src/libvncserver/httpd.c:261,6'
          Dst:             close
    - functionName:    rfbHttpShutdownSockets
      functionSourceFile: '/src/libvncserver/src/libvncserver/httpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          185
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - close
        - pthread_mutex_destroy
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/httpd.c:138,2'
          Dst:             close
        - Src:             'src/libvncserver/httpd.c:144,2'
          Dst:             close
        - Src:             'src/libvncserver/httpd.c:150,2'
          Dst:             close
        - Src:             'src/libvncserver/httpd.c:153,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/httpd.c:154,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/httpd.c:155,5'
          Dst:             pthread_mutex_destroy
        - Src:             'src/libvncserver/httpd.c:157,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/httpd.c:158,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/httpd.c:159,5'
          Dst:             pthread_mutex_destroy
        - Src:             'src/libvncserver/httpd.c:161,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/httpd.c:162,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/httpd.c:163,5'
          Dst:             pthread_mutex_destroy
    - functionName:    rfbHttpInitSockets
      functionSourceFile: '/src/libvncserver/src/libvncserver/httpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          153
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - pthread_mutex_init
        - rfbListenOnTCP6Port
        - rfbListenOnTCPPort
        - rfbLogPerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/httpd.c:110,7'
          Dst:             rfbListenOnTCPPort
        - Src:             'src/libvncserver/httpd.c:111,2'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/httpd.c:123,5'
          Dst:             rfbListenOnTCP6Port
        - Src:             'src/libvncserver/httpd.c:130,5'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/httpd.c:131,5'
          Dst:             pthread_mutex_init
        - Src:             'src/libvncserver/httpd.c:132,5'
          Dst:             pthread_mutex_init
    - functionName:    rfbSetCursor
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 764
      functionLinenumberEnd: 792
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          119
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbClientIteratorNext
        - rfbFreeCursor
        - rfbGetClientIterator
        - rfbRedrawAfterHideCursor
        - rfbReleaseClientIterator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cursor.c:768,3'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/cursor.c:771,14'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/cursor.c:772,15'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/cursor.c:774,4'
          Dst:             rfbRedrawAfterHideCursor
        - Src:             'src/libvncserver/cursor.c:775,5'
          Dst:             rfbReleaseClientIterator
        - Src:             'src/libvncserver/cursor.c:778,3'
          Dst:             rfbFreeCursor
        - Src:             'src/libvncserver/cursor.c:783,12'
          Dst:             rfbGetClientIterator
        - Src:             'src/libvncserver/cursor.c:784,13'
          Dst:             rfbClientIteratorNext
        - Src:             'src/libvncserver/cursor.c:787,7'
          Dst:             rfbRedrawAfterHideCursor
        - Src:             'src/libvncserver/cursor.c:789,3'
          Dst:             rfbReleaseClientIterator
        - Src:             'src/libvncserver/cursor.c:791,3'
          Dst:             pthread_mutex_unlock
    - functionName:    rfbRedrawAfterHideCursor
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 718
      functionLinenumberEnd: 743
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          118
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - sraClipRect2
        - sraRgnCreateRect
        - sraRgnDestroy
        - sraRgnOr
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cursor.c:730,5'
          Dst:             sraClipRect2
        - Src:             'src/libvncserver/cursor.c:732,13'
          Dst:             sraRgnCreateRect
        - Src:             'src/libvncserver/cursor.c:734,7'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/cursor.c:736,7'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/cursor.c:737,7'
          Dst:             sraRgnOr
        - Src:             'src/libvncserver/cursor.c:738,7'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/cursor.c:740,6'
          Dst:             sraRgnDestroy
    - functionName:    rfbFreeCursor
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          119
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbShowCursor
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 709
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         80
      ICount:          891
      EdgeCount:       105
      CyclomaticComplexity: 27
      functionsReached:
        - memcmp
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbMakeRichCursorFromXCursor
        - rfbScaledScreenUpdate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cursor.c:556,4'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/cursor.c:559,2'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/cursor.c:579,6'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/cursor.c:588,6'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/cursor.c:597,23'
          Dst:             memcmp
        - Src:             'src/libvncserver/cursor.c:604,6'
          Dst:             rfbMakeRichCursorFromXCursor
        - Src:             'src/libvncserver/cursor.c:706,4'
          Dst:             rfbScaledScreenUpdate
        - Src:             'src/libvncserver/cursor.c:708,4'
          Dst:             pthread_mutex_unlock
    - functionName:    rfbMakeRichCursorFromXCursor
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          274
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cursor.c:481,42'
          Dst:             calloc
    - functionName:    rfbHideCursor
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 505
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          245
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbScaledScreenUpdate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cursor.c:510,4'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/cursor.c:513,6'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/cursor.c:523,6'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/cursor.c:531,6'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/cursor.c:542,4'
          Dst:             rfbScaledScreenUpdate
        - Src:             'src/libvncserver/cursor.c:544,4'
          Dst:             pthread_mutex_unlock
    - functionName:    rfbMakeMaskFromAlphaSource
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          213
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - calloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cursor.c:327,19'
          Dst:             calloc
        - Src:             'src/libvncserver/cursor.c:329,40'
          Dst:             calloc
    - functionName:    rfbMakeMaskForXCursor
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          244
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cursor.c:300,22'
          Dst:             calloc
    - functionName:    rfbMakeXCursor
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          306
      EdgeCount:       53
      CyclomaticComplexity: 14
      functionsReached:
        - calloc
        - rfbMakeMaskForXCursor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cursor.c:257,40'
          Dst:             calloc
        - Src:             'src/libvncserver/cursor.c:270,37'
          Dst:             calloc
        - Src:             'src/libvncserver/cursor.c:281,38'
          Dst:             calloc
        - Src:             'src/libvncserver/cursor.c:291,37'
          Dst:             rfbMakeMaskForXCursor
    - functionName:    rfbConvertLSBCursorBitmapOrMask
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          50
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbSendCursorPos
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          161
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cursor.c:186,10'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/cursor.c:200,3'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/cursor.c:202,8'
          Dst:             rfbSendUpdateBuf
    - functionName:    rfbMakeXCursorFromRichCursor
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         64
      ICount:          699
      EdgeCount:       86
      CyclomaticComplexity: 24
      functionsReached:
        - calloc
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cursor.c:404,35'
          Dst:             calloc
        - Src:             'src/libvncserver/cursor.c:460,13'
          Dst:             memcmp
    - functionName:    rfbSendCursorShape
      functionSourceFile: '/src/libvncserver/src/libvncserver/cursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         78
      ICount:          778
      EdgeCount:       105
      CyclomaticComplexity: 29
      functionsReached:
        - rfbMakeRichCursorFromXCursor
        - rfbMakeXCursorFromRichCursor
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cursor.c:54,2'
          Dst:             rfbMakeRichCursorFromXCursor
        - Src:             'src/libvncserver/cursor.c:58,3'
          Dst:             rfbMakeXCursorFromRichCursor
        - Src:             'src/libvncserver/cursor.c:72,11'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/cursor.c:81,7'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/cursor.c:99,7'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/cursor.c:167,5'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/cursor.c:170,10'
          Dst:             rfbSendUpdateBuf
    - functionName:    rfbEncryptBytes2
      functionSourceFile: '/src/libvncserver/src/common/vncauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          115
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - encrypt_rfbdes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/vncauth.c:208,3'
          Dst:             encrypt_rfbdes
        - Src:             'src/common/vncauth.c:213,5'
          Dst:             encrypt_rfbdes
    - functionName:    rfbEncryptBytes
      functionSourceFile: '/src/libvncserver/src/common/vncauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - encrypt_rfbdes
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/vncauth.c:193,10'
          Dst:             strlen
        - Src:             'src/common/vncauth.c:200,5'
          Dst:             encrypt_rfbdes
    - functionName:    rfbRandomBytes
      functionSourceFile: '/src/libvncserver/src/common/vncauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - getpid
        - random
        - srandom
        - time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/vncauth.c:168,24'
          Dst:             time
        - Src:             'src/common/vncauth.c:168,51'
          Dst:             getpid
        - Src:             'src/common/vncauth.c:168,2'
          Dst:             srandom
        - Src:             'src/common/vncauth.c:173,29'
          Dst:             random
    - 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:    srandom
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    random
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbDecryptPasswdFromFile
      functionSourceFile: '/src/libvncserver/src/common/vncauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          101
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - decrypt_rfbdes
        - fclose
        - fopen
        - getc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/vncauth.c:130,26'
          Dst:             fopen
        - Src:             'src/common/vncauth.c:136,7'
          Dst:             getc
        - Src:             'src/common/vncauth.c:138,6'
          Dst:             fclose
        - Src:             'src/common/vncauth.c:145,5'
          Dst:             fclose
        - Src:             'src/common/vncauth.c:147,9'
          Dst:             decrypt_rfbdes
    - functionName:    getc
      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:    rfbEncryptAndStorePasswd
      functionSourceFile: '/src/libvncserver/src/common/vncauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          107
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - encrypt_rfbdes
        - fchmod
        - fclose
        - fileno
        - fopen
        - putc
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/vncauth.c:86,15'
          Dst:             fopen
        - Src:             'src/common/vncauth.c:90,12'
          Dst:             fileno
        - Src:             'src/common/vncauth.c:90,5'
          Dst:             fchmod
        - Src:             'src/common/vncauth.c:96,10'
          Dst:             strlen
        - Src:             'src/common/vncauth.c:105,5'
          Dst:             encrypt_rfbdes
        - Src:             'src/common/vncauth.c:108,2'
          Dst:             putc
        - Src:             'src/common/vncauth.c:111,5'
          Dst:             fclose
    - functionName:    fileno
      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:    fchmod
      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:    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:    sock_wait_for_connected
      functionSourceFile: '/src/libvncserver/src/common/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          119
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - getsockopt
        - select
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/sockets.c:64,7'
          Dst:             __errno_location
        - Src:             'src/common/sockets.c:72,7'
          Dst:             select
        - Src:             'src/common/sockets.c:79,5'
          Dst:             getsockopt
    - functionName:    getsockopt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sock_set_nonblocking
      functionSourceFile: '/src/libvncserver/src/common/sockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - int
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - fcntl
        - strerror
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/sockets.c:39,15'
          Dst:             fcntl
        - Src:             'src/common/sockets.c:45,19'
          Dst:             fcntl
        - Src:             'src/common/sockets.c:47,96'
          Dst:             __errno_location
        - Src:             'src/common/sockets.c:47,87'
          Dst:             strerror
    - functionName:    rfbProcessSizeArguments
      functionSourceFile: '/src/libvncserver/src/libvncserver/cargs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          136
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - atoi
        - rfbPurgeArguments
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cargs.c:250,13'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:251,23'
          Dst:             atoi
        - Src:             'src/libvncserver/cargs.c:252,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:253,25'
          Dst:             atoi
        - Src:             'src/libvncserver/cargs.c:254,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:255,26'
          Dst:             atoi
        - Src:             'src/libvncserver/cargs.c:261,2'
          Dst:             rfbPurgeArguments
    - functionName:    rfbPurgeArguments
      functionSourceFile: '/src/libvncserver/src/libvncserver/cargs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          55
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbProcessArguments
      functionSourceFile: '/src/libvncserver/src/libvncserver/cargs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         134
      ICount:          934
      EdgeCount:       184
      CyclomaticComplexity: 52
      functionsReached:
        - __isoc99_sscanf
        - atoi
        - rfbGetExtensionIterator
        - rfbPurgeArguments
        - rfbReleaseExtensionIterator
        - rfbStringToAddr
        - rfbUsage
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cargs.c:88,13'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:88,46'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:88,76'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:89,6'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:91,13'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:93,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:96,24'
          Dst:             atoi
        - Src:             'src/libvncserver/cargs.c:98,13'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:100,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:103,28'
          Dst:             atoi
        - Src:             'src/libvncserver/cargs.c:105,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:107,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:110,33'
          Dst:             atoi
        - Src:             'src/libvncserver/cargs.c:111,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:113,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:118,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:120,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:122,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:125,6'
          Dst:             __isoc99_sscanf
        - Src:             'src/libvncserver/cargs.c:126,13'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:129,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:137,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:139,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:142,42'
          Dst:             atoi
        - Src:             'src/libvncserver/cargs.c:143,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:145,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:148,45'
          Dst:             atoi
        - Src:             'src/libvncserver/cargs.c:149,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:151,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:155,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:157,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:159,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:161,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:163,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:167,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:169,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:172,35'
          Dst:             atoi
        - Src:             'src/libvncserver/cargs.c:174,13'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:176,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:179,36'
          Dst:             atoi
        - Src:             'src/libvncserver/cargs.c:181,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:183,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:185,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:188,49'
          Dst:             atoi
        - Src:             'src/libvncserver/cargs.c:189,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:191,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:194,19'
          Dst:             rfbStringToAddr
        - Src:             'src/libvncserver/cargs.c:198,13'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:200,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:206,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:208,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:212,20'
          Dst:             strcmp
        - Src:             'src/libvncserver/cargs.c:214,3'
          Dst:             rfbUsage
        - Src:             'src/libvncserver/cargs.c:223,20'
          Dst:             rfbGetExtensionIterator
        - Src:             'src/libvncserver/cargs.c:227,6'
          Dst:             rfbReleaseExtensionIterator
        - Src:             'src/libvncserver/cargs.c:237,2'
          Dst:             rfbPurgeArguments
    - functionName:    rfbUsage
      functionSourceFile: '/src/libvncserver/src/libvncserver/cargs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          98
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - fprintf
        - rfbGetExtensionIterator
        - rfbReleaseExtensionIterator
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/cargs.c:24,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:26,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:28,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:29,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:31,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:32,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:33,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:35,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:37,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:39,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:40,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:41,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:42,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:47,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:48,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:50,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:51,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:53,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:55,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:56,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:57,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:58,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:60,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:61,5'
          Dst:             fprintf
        - Src:             'src/libvncserver/cargs.c:64,19'
          Dst:             rfbGetExtensionIterator
        - Src:             'src/libvncserver/cargs.c:67,5'
          Dst:             rfbReleaseExtensionIterator
    - functionName:    rfbSendOneRectEncodingUltra
      functionSourceFile: '/src/libvncserver/src/libvncserver/ultra.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          658
      EdgeCount:       98
      CyclomaticComplexity: 27
      functionsReached:
        - lzo1x_1_compress
        - realloc
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/ultra.c:65,51'
          Dst:             realloc
        - Src:             'src/libvncserver/ultra.c:83,50'
          Dst:             realloc
        - Src:             'src/libvncserver/ultra.c:113,21'
          Dst:             lzo1x_1_compress
        - Src:             'src/libvncserver/ultra.c:125,5'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/ultra.c:130,7'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/ultra.c:164,11'
          Dst:             rfbSendUpdateBuf
    - functionName:    rfbSendRectEncodingUltra
      functionSourceFile: '/src/libvncserver/src/libvncserver/ultra.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          162
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - rfbSendOneRectEncodingUltra
        - rfbSendUpdateBuf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/ultra.c:213,16'
          Dst:             rfbSendOneRectEncodingUltra
        - Src:             'src/libvncserver/ultra.c:235,18'
          Dst:             rfbSendUpdateBuf
    - functionName:    rfbFreeUltraData
      functionSourceFile: '/src/libvncserver/src/libvncserver/ultra.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbSendNewScaleSize
      functionSourceFile: '/src/libvncserver/src/libvncserver/scale.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          374
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbCloseClient
        - rfbLogPerror
        - rfbWriteExact
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/scale.c:392,5'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/scale.c:394,5'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/scale.c:408,2'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/scale.c:409,13'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/scale.c:410,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/scale.c:411,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/scale.c:412,6'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/scale.c:415,2'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/scale.c:425,2'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/scale.c:426,13'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/scale.c:427,13'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/scale.c:428,13'
          Dst:             rfbCloseClient
        - Src:             'src/libvncserver/scale.c:429,6'
          Dst:             pthread_mutex_unlock
        - Src:             'src/libvncserver/scale.c:432,2'
          Dst:             pthread_mutex_unlock
    - functionName:    rfbScalingSetup
      functionSourceFile: '/src/libvncserver/src/libvncserver/scale.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          116
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbScaledScreenAllocate
        - rfbScaledScreenUpdateRect
        - rfbScalingFind
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/scale.c:357,11'
          Dst:             rfbScalingFind
        - Src:             'src/libvncserver/scale.c:359,15'
          Dst:             rfbScaledScreenAllocate
        - Src:             'src/libvncserver/scale.c:365,13'
          Dst:             rfbScaledScreenUpdateRect
        - Src:             'src/libvncserver/scale.c:373,9'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/scale.c:378,9'
          Dst:             pthread_mutex_unlock
    - functionName:    rfbScalingFind
      functionSourceFile: '/src/libvncserver/src/libvncserver/scale.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbScaledScreenAllocate
      functionSourceFile: '/src/libvncserver/src/libvncserver/scale.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          176
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - pad4
        - pthread_mutex_lock
        - pthread_mutex_unlock
        - rfbScaledScreenUpdateRect
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/scale.c:294,21'
          Dst:             pad4
        - Src:             'src/libvncserver/scale.c:307,35'
          Dst:             pad4
        - Src:             'src/libvncserver/scale.c:319,13'
          Dst:             rfbScaledScreenUpdateRect
        - Src:             'src/libvncserver/scale.c:321,13'
          Dst:             pthread_mutex_lock
        - Src:             'src/libvncserver/scale.c:324,13'
          Dst:             pthread_mutex_unlock
    - functionName:    rfbScaledScreenUpdateRect
      functionSourceFile: '/src/libvncserver/src/libvncserver/scale.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          623
      EdgeCount:       74
      CyclomaticComplexity: 14
      functionsReached:
        - ScaleX
        - ScaleY
        - rfbScaledCorrection
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/libvncserver/scale.c:206,14'
          Branch Sides:    []
        - Branch String:   'src/libvncserver/scale.c:233,10'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/scale.c:150,5'
          Dst:             rfbScaledCorrection
        - Src:             'src/libvncserver/scale.c:151,10'
          Dst:             ScaleX
        - Src:             'src/libvncserver/scale.c:152,10'
          Dst:             ScaleY
        - Src:             'src/libvncserver/scale.c:153,10'
          Dst:             ScaleX
        - Src:             'src/libvncserver/scale.c:154,10'
          Dst:             ScaleY
        - Src:             'src/libvncserver/scale.c:164,13'
          Dst:             ScaleX
        - Src:             'src/libvncserver/scale.c:165,13'
          Dst:             ScaleY
    - functionName:    rfbScaledCorrection
      functionSourceFile: '/src/libvncserver/src/libvncserver/scale.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          270
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ScaleX
      functionSourceFile: '/src/libvncserver/src/libvncserver/scale.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ScaleY
      functionSourceFile: '/src/libvncserver/src/libvncserver/scale.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pad4
      functionSourceFile: '/src/libvncserver/src/libvncserver/scale.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbScaledScreenUpdate
      functionSourceFile: '/src/libvncserver/src/libvncserver/scale.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - rfbScaledScreenUpdateRect
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/scale.c:272,11'
          Dst:             rfbScaledScreenUpdateRect
    - functionName:    pad_leading_zeros
      functionSourceFile: '/src/libvncserver/src/common/crypto_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dh_compute_shared_key
      functionSourceFile: '/src/libvncserver/src/common/crypto_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - BN_bin2bn
        - BN_new
        - DH_compute_key
        - DH_free
        - DH_new
        - DH_set0_key
        - DH_set0_pqg
        - pad_leading_zeros
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/crypto_openssl.c:242,15'
          Dst:             DH_new
        - Src:             'src/common/crypto_openssl.c:249,25'
          Dst:             BN_bin2bn
        - Src:             'src/common/crypto_openssl.c:249,63'
          Dst:             BN_new
        - Src:             'src/common/crypto_openssl.c:249,9'
          Dst:             DH_set0_pqg
        - Src:             'src/common/crypto_openssl.c:251,31'
          Dst:             BN_bin2bn
        - Src:             'src/common/crypto_openssl.c:251,9'
          Dst:             DH_set0_key
        - Src:             'src/common/crypto_openssl.c:254,49'
          Dst:             BN_bin2bn
        - Src:             'src/common/crypto_openssl.c:254,22'
          Dst:             DH_compute_key
        - Src:             'src/common/crypto_openssl.c:258,5'
          Dst:             pad_leading_zeros
        - Src:             'src/common/crypto_openssl.c:262,5'
          Dst:             DH_free
    - functionName:    DH_new
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_bin2bn
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_new
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DH_set0_pqg
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DH_set0_key
      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:    DH_compute_key
      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:    DH_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dh_generate_keypair
      functionSourceFile: '/src/libvncserver/src/common/crypto_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - BN_bin2bn
        - BN_bn2binpad
        - DH_free
        - DH_generate_key
        - DH_get0_key
        - DH_new
        - DH_set0_pqg
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/crypto_openssl.c:201,15'
          Dst:             DH_new
        - Src:             'src/common/crypto_openssl.c:208,25'
          Dst:             BN_bin2bn
        - Src:             'src/common/crypto_openssl.c:208,63'
          Dst:             BN_bin2bn
        - Src:             'src/common/crypto_openssl.c:208,9'
          Dst:             DH_set0_pqg
        - Src:             'src/common/crypto_openssl.c:211,9'
          Dst:             DH_generate_key
        - Src:             'src/common/crypto_openssl.c:223,5'
          Dst:             DH_get0_key
        - Src:             'src/common/crypto_openssl.c:224,8'
          Dst:             BN_bn2binpad
        - Src:             'src/common/crypto_openssl.c:226,8'
          Dst:             BN_bn2binpad
        - Src:             'src/common/crypto_openssl.c:233,5'
          Dst:             DH_free
    - functionName:    DH_generate_key
      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:    DH_get0_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_bn2binpad
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypt_aes128ecb
      functionSourceFile: '/src/libvncserver/src/common/crypto_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - EVP_CIPHER_CTX_free
        - EVP_CIPHER_CTX_new
        - EVP_CIPHER_CTX_set_padding
        - EVP_EncryptInit_ex
        - EVP_EncryptUpdate
        - EVP_aes_128_ecb
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/crypto_openssl.c:167,16'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'src/common/crypto_openssl.c:169,5'
          Dst:             EVP_CIPHER_CTX_set_padding
        - Src:             'src/common/crypto_openssl.c:170,33'
          Dst:             EVP_aes_128_ecb
        - Src:             'src/common/crypto_openssl.c:170,9'
          Dst:             EVP_EncryptInit_ex
        - Src:             'src/common/crypto_openssl.c:172,9'
          Dst:             EVP_EncryptUpdate
        - Src:             'src/common/crypto_openssl.c:178,5'
          Dst:             EVP_CIPHER_CTX_free
    - functionName:    EVP_CIPHER_CTX_new
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_set_padding
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_128_ecb
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_EncryptInit_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_EncryptUpdate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_rfbdes
      functionSourceFile: '/src/libvncserver/src/common/crypto_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          112
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - EVP_CIPHER_CTX_free
        - EVP_CIPHER_CTX_new
        - EVP_CIPHER_CTX_set_padding
        - EVP_DecryptInit_ex
        - EVP_DecryptUpdate
        - EVP_des_ecb
        - reverseByte
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/crypto_openssl.c:129,22'
          Dst:             reverseByte
        - Src:             'src/common/crypto_openssl.c:139,16'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'src/common/crypto_openssl.c:141,33'
          Dst:             EVP_des_ecb
        - Src:             'src/common/crypto_openssl.c:141,9'
          Dst:             EVP_DecryptInit_ex
        - Src:             'src/common/crypto_openssl.c:143,9'
          Dst:             EVP_CIPHER_CTX_set_padding
        - Src:             'src/common/crypto_openssl.c:145,9'
          Dst:             EVP_DecryptUpdate
        - Src:             'src/common/crypto_openssl.c:152,2'
          Dst:             EVP_CIPHER_CTX_free
    - functionName:    reverseByte
      functionSourceFile: '/src/libvncserver/src/common/crypto_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          40
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_des_ecb
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DecryptInit_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DecryptUpdate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypt_rfbdes
      functionSourceFile: '/src/libvncserver/src/common/crypto_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          103
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - EVP_CIPHER_CTX_free
        - EVP_CIPHER_CTX_new
        - EVP_EncryptInit_ex
        - EVP_EncryptUpdate
        - EVP_des_ecb
        - reverseByte
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/crypto_openssl.c:86,22'
          Dst:             reverseByte
        - Src:             'src/common/crypto_openssl.c:96,16'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'src/common/crypto_openssl.c:98,33'
          Dst:             EVP_des_ecb
        - Src:             'src/common/crypto_openssl.c:98,9'
          Dst:             EVP_EncryptInit_ex
        - Src:             'src/common/crypto_openssl.c:100,9'
          Dst:             EVP_EncryptUpdate
        - Src:             'src/common/crypto_openssl.c:107,7'
          Dst:             EVP_CIPHER_CTX_free
    - functionName:    random_bytes
      functionSourceFile: '/src/libvncserver/src/common/crypto_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - RAND_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/crypto_openssl.c:71,5'
          Dst:             RAND_bytes
    - functionName:    RAND_bytes
      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:    hash_sha1
      functionSourceFile: '/src/libvncserver/src/common/crypto_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - SHA1_Final
        - SHA1_Init
        - SHA1_Update
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/crypto_openssl.c:59,9'
          Dst:             SHA1_Init
        - Src:             'src/common/crypto_openssl.c:61,9'
          Dst:             SHA1_Update
        - Src:             'src/common/crypto_openssl.c:63,9'
          Dst:             SHA1_Final
    - functionName:    SHA1_Init
      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:    SHA1_Update
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SHA1_Final
      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:    hash_md5
      functionSourceFile: '/src/libvncserver/src/common/crypto_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - MD5_Final
        - MD5_Init
        - MD5_Update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/crypto_openssl.c:46,9'
          Dst:             MD5_Init
        - Src:             'src/common/crypto_openssl.c:48,9'
          Dst:             MD5_Update
        - Src:             'src/common/crypto_openssl.c:50,9'
          Dst:             MD5_Final
    - functionName:    MD5_Init
      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:    MD5_Update
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MD5_Final
      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:    rfbssl_destroy
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbssl_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - SSL_CTX_free
        - SSL_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbssl_openssl.c:132,2'
          Dst:             SSL_free
        - Src:             'src/libvncserver/rfbssl_openssl.c:134,2'
          Dst:             SSL_CTX_free
    - functionName:    SSL_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbssl_pending
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbssl_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - SSL_pending
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbssl_openssl.c:125,12'
          Dst:             SSL_pending
    - functionName:    SSL_pending
      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:    rfbssl_read
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbssl_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - SSL_get_error
        - SSL_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbssl_openssl.c:115,19'
          Dst:             SSL_read
        - Src:             'src/libvncserver/rfbssl_openssl.c:116,6'
          Dst:             SSL_get_error
    - functionName:    SSL_read
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_get_error
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbssl_peek
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbssl_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - SSL_get_error
        - SSL_peek
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbssl_openssl.c:103,19'
          Dst:             SSL_peek
        - Src:             'src/libvncserver/rfbssl_openssl.c:104,6'
          Dst:             SSL_get_error
    - functionName:    SSL_peek
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbssl_write
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbssl_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - SSL_get_error
        - SSL_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbssl_openssl.c:91,19'
          Dst:             SSL_write
        - Src:             'src/libvncserver/rfbssl_openssl.c:92,6'
          Dst:             SSL_get_error
    - functionName:    SSL_write
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbssl_error
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbssl_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ERR_error_string
        - ERR_get_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbssl_openssl.c:36,23'
          Dst:             ERR_get_error
        - Src:             'src/libvncserver/rfbssl_openssl.c:37,26'
          Dst:             ERR_error_string
    - functionName:    ERR_get_error
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ERR_error_string
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbssl_init
      functionSourceFile: '/src/libvncserver/src/libvncserver/rfbssl_openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         42
      ICount:          257
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - OPENSSL_init_ssl
        - SSL_CTX_new
        - SSL_CTX_use_PrivateKey_file
        - SSL_CTX_use_certificate_file
        - SSL_accept
        - SSL_get_error
        - SSL_new
        - SSL_set_fd
        - TLS_server_method
        - rfbssl_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/rfbssl_openssl.c:46,5'
          Dst:             OPENSSL_init_ssl
        - Src:             'src/libvncserver/rfbssl_openssl.c:47,5'
          Dst:             OPENSSL_init_ssl
        - Src:             'src/libvncserver/rfbssl_openssl.c:59,52'
          Dst:             TLS_server_method
        - Src:             'src/libvncserver/rfbssl_openssl.c:59,40'
          Dst:             SSL_CTX_new
        - Src:             'src/libvncserver/rfbssl_openssl.c:60,2'
          Dst:             rfbssl_error
        - Src:             'src/libvncserver/rfbssl_openssl.c:61,16'
          Dst:             SSL_CTX_use_PrivateKey_file
        - Src:             'src/libvncserver/rfbssl_openssl.c:63,16'
          Dst:             SSL_CTX_use_certificate_file
        - Src:             'src/libvncserver/rfbssl_openssl.c:65,36'
          Dst:             SSL_new
        - Src:             'src/libvncserver/rfbssl_openssl.c:67,2'
          Dst:             rfbssl_error
        - Src:             'src/libvncserver/rfbssl_openssl.c:68,18'
          Dst:             SSL_set_fd
        - Src:             'src/libvncserver/rfbssl_openssl.c:70,2'
          Dst:             rfbssl_error
        - Src:             'src/libvncserver/rfbssl_openssl.c:72,14'
          Dst:             SSL_accept
        - Src:             'src/libvncserver/rfbssl_openssl.c:73,10'
          Dst:             SSL_get_error
        - Src:             'src/libvncserver/rfbssl_openssl.c:77,39'
          Dst:             SSL_get_error
    - functionName:    OPENSSL_init_ssl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    TLS_server_method
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_CTX_new
      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:    SSL_CTX_use_PrivateKey_file
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_CTX_use_certificate_file
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_new
      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:    SSL_set_fd
      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:    SSL_accept
      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:    rfbSendOneRectEncodingZlib
      functionSourceFile: '/src/libvncserver/src/libvncserver/zlib.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         82
      ICount:          798
      EdgeCount:       111
      CyclomaticComplexity: 31
      functionsReached:
        - deflate
        - deflateInit2_
        - realloc
        - rfbSendRectEncodingRaw
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zlib.c:73,51'
          Dst:             realloc
        - Src:             'src/libvncserver/zlib.c:97,18'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/zlib.c:101,18'
          Dst:             rfbSendRectEncodingRaw
        - Src:             'src/libvncserver/zlib.c:117,50'
          Dst:             realloc
        - Src:             'src/libvncserver/zlib.c:153,9'
          Dst:             deflateInit2_
        - Src:             'src/libvncserver/zlib.c:168,21'
          Dst:             deflate
        - Src:             'src/libvncserver/zlib.c:186,5'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/zlib.c:192,7'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/zlib.c:225,11'
          Dst:             rfbSendUpdateBuf
    - functionName:    deflateInit2_
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    deflate
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbSendRectEncodingZlib
      functionSourceFile: '/src/libvncserver/src/libvncserver/zlib.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          162
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - rfbSendOneRectEncodingZlib
        - rfbSendUpdateBuf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zlib.c:275,16'
          Dst:             rfbSendOneRectEncodingZlib
        - Src:             'src/libvncserver/zlib.c:297,18'
          Dst:             rfbSendUpdateBuf
    - functionName:    Harr
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          87
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FilterWaveletSquare
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          174
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    WaveletLevel
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          89
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Harr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/zywrletemplate.c:369,3'
          Dst:             Harr
        - Src:             'src/common/zywrletemplate.c:371,3'
          Dst:             Harr
        - Src:             'src/common/zywrletemplate.c:373,3'
          Dst:             Harr
    - functionName:    rfbFreeZrleData
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - zrleOutStreamFree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrle.c:243,3'
          Dst:             zrleOutStreamFree
    - functionName:    zrleEncode32LE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - zrleEncodeTile32LE
        - zrleOutStreamFlush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:113,40'
          Dst:             calloc
        - Src:             'src/libvncserver/zrleencodetemplate.c:116,7'
          Dst:             zrleEncodeTile32LE
        - Src:             'src/libvncserver/zrleencodetemplate.c:120,3'
          Dst:             zrleOutStreamFlush
    - functionName:    zrleEncodeTile32LE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          653
      EdgeCount:       121
      CyclomaticComplexity: 31
      functionsReached:
        - __assert_fail
        - zrleEncodeTile32LE
        - zrleOutStreamWriteBytes
        - zrleOutStreamWriteOpaque32
        - zrleOutStreamWriteU8
        - zrlePaletteHelperInit
        - zrlePaletteHelperInsert
        - zrlePaletteHelperLookup
        - zywrleAnalyze32LE
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:146,3'
          Dst:             zrlePaletteHelperInit
        - Src:             'src/libvncserver/zrleencodetemplate.c:156,5'
          Dst:             zrlePaletteHelperInsert
        - Src:             'src/libvncserver/zrleencodetemplate.c:162,5'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:163,5'
          Dst:             zrleOutStreamWriteOpaque32
        - Src:             'src/libvncserver/zrleencodetemplate.c:212,3'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:215,5'
          Dst:             zrleOutStreamWriteOpaque32
        - Src:             'src/libvncserver/zrleencodetemplate.c:232,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:234,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:235,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:239,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:240,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:242,9'
          Dst:             zrleOutStreamWriteOpaque32
        - Src:             'src/libvncserver/zrleencodetemplate.c:246,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:249,7'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:262,7'
          Dst:             __assert_fail
        - Src:             'src/libvncserver/zrleencodetemplate.c:274,27'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:278,13'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:284,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:293,9'
          Dst:             zywrleAnalyze32LE
        - Src:             'src/libvncserver/zrleencodetemplate.c:294,2'
          Dst:             zrleEncodeTile32LE
        - Src:             'src/libvncserver/zrleencodetemplate.c:304,9'
          Dst:             zrleOutStreamWriteBytes
    - functionName:    __assert_fail
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zywrleAnalyze32LE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          867
      EdgeCount:       115
      CyclomaticComplexity: 30
      functionsReached:
        - Wavelet
        - zywrleCalcSize
        - zywrleRGBYUV32LE
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/zywrletemplate.c:765,2'
          Dst:             zywrleCalcSize
        - Src:             'src/common/zywrletemplate.c:773,2'
          Dst:             zywrleRGBYUV32LE
        - Src:             'src/common/zywrletemplate.c:774,2'
          Dst:             Wavelet
    - functionName:    zywrleCalcSize
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 702
      functionLinenumberEnd: 705
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zywrleRGBYUV32LE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          174
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Wavelet
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 501
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          107
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - FilterWaveletSquare
        - WaveletLevel
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/zywrletemplate.c:489,4'
          Dst:             WaveletLevel
        - Src:             'src/common/zywrletemplate.c:496,4'
          Dst:             WaveletLevel
        - Src:             'src/common/zywrletemplate.c:499,3'
          Dst:             FilterWaveletSquare
    - functionName:    zrleEncode32BE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - zrleEncodeTile32BE
        - zrleOutStreamFlush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:113,40'
          Dst:             calloc
        - Src:             'src/libvncserver/zrleencodetemplate.c:116,7'
          Dst:             zrleEncodeTile32BE
        - Src:             'src/libvncserver/zrleencodetemplate.c:120,3'
          Dst:             zrleOutStreamFlush
    - functionName:    zrleEncodeTile32BE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          653
      EdgeCount:       121
      CyclomaticComplexity: 31
      functionsReached:
        - __assert_fail
        - zrleEncodeTile32BE
        - zrleOutStreamWriteBytes
        - zrleOutStreamWriteOpaque32
        - zrleOutStreamWriteU8
        - zrlePaletteHelperInit
        - zrlePaletteHelperInsert
        - zrlePaletteHelperLookup
        - zywrleAnalyze32BE
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:146,3'
          Dst:             zrlePaletteHelperInit
        - Src:             'src/libvncserver/zrleencodetemplate.c:156,5'
          Dst:             zrlePaletteHelperInsert
        - Src:             'src/libvncserver/zrleencodetemplate.c:162,5'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:163,5'
          Dst:             zrleOutStreamWriteOpaque32
        - Src:             'src/libvncserver/zrleencodetemplate.c:212,3'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:215,5'
          Dst:             zrleOutStreamWriteOpaque32
        - Src:             'src/libvncserver/zrleencodetemplate.c:232,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:234,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:235,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:239,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:240,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:242,9'
          Dst:             zrleOutStreamWriteOpaque32
        - Src:             'src/libvncserver/zrleencodetemplate.c:246,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:249,7'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:262,7'
          Dst:             __assert_fail
        - Src:             'src/libvncserver/zrleencodetemplate.c:274,27'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:278,13'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:284,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:293,9'
          Dst:             zywrleAnalyze32BE
        - Src:             'src/libvncserver/zrleencodetemplate.c:294,2'
          Dst:             zrleEncodeTile32BE
        - Src:             'src/libvncserver/zrleencodetemplate.c:304,9'
          Dst:             zrleOutStreamWriteBytes
    - functionName:    zywrleAnalyze32BE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          867
      EdgeCount:       115
      CyclomaticComplexity: 30
      functionsReached:
        - Wavelet
        - zywrleCalcSize
        - zywrleRGBYUV32BE
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/zywrletemplate.c:765,2'
          Dst:             zywrleCalcSize
        - Src:             'src/common/zywrletemplate.c:773,2'
          Dst:             zywrleRGBYUV32BE
        - Src:             'src/common/zywrletemplate.c:774,2'
          Dst:             Wavelet
    - functionName:    zywrleRGBYUV32BE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          174
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zrleEncode24BLE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - zrleEncodeTile24BLE
        - zrleOutStreamFlush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:113,40'
          Dst:             calloc
        - Src:             'src/libvncserver/zrleencodetemplate.c:116,7'
          Dst:             zrleEncodeTile24BLE
        - Src:             'src/libvncserver/zrleencodetemplate.c:120,3'
          Dst:             zrleOutStreamFlush
    - functionName:    zrleEncodeTile24BLE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         96
      ICount:          674
      EdgeCount:       126
      CyclomaticComplexity: 32
      functionsReached:
        - __assert_fail
        - zrleEncodeTile24BLE
        - zrleOutStreamWriteOpaque24B
        - zrleOutStreamWriteU8
        - zrlePaletteHelperInit
        - zrlePaletteHelperInsert
        - zrlePaletteHelperLookup
        - zywrleAnalyze32LE
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:146,3'
          Dst:             zrlePaletteHelperInit
        - Src:             'src/libvncserver/zrleencodetemplate.c:156,5'
          Dst:             zrlePaletteHelperInsert
        - Src:             'src/libvncserver/zrleencodetemplate.c:162,5'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:163,5'
          Dst:             zrleOutStreamWriteOpaque24B
        - Src:             'src/libvncserver/zrleencodetemplate.c:212,3'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:215,5'
          Dst:             zrleOutStreamWriteOpaque24B
        - Src:             'src/libvncserver/zrleencodetemplate.c:232,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:234,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:235,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:239,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:240,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:242,9'
          Dst:             zrleOutStreamWriteOpaque24B
        - Src:             'src/libvncserver/zrleencodetemplate.c:246,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:249,7'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:262,7'
          Dst:             __assert_fail
        - Src:             'src/libvncserver/zrleencodetemplate.c:274,27'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:278,13'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:284,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:293,9'
          Dst:             zywrleAnalyze32LE
        - Src:             'src/libvncserver/zrleencodetemplate.c:294,2'
          Dst:             zrleEncodeTile24BLE
        - Src:             'src/libvncserver/zrleencodetemplate.c:302,11'
          Dst:             zrleOutStreamWriteOpaque24B
    - functionName:    zrleEncode24BBE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - zrleEncodeTile24BBE
        - zrleOutStreamFlush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:113,40'
          Dst:             calloc
        - Src:             'src/libvncserver/zrleencodetemplate.c:116,7'
          Dst:             zrleEncodeTile24BBE
        - Src:             'src/libvncserver/zrleencodetemplate.c:120,3'
          Dst:             zrleOutStreamFlush
    - functionName:    zrleEncodeTile24BBE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         96
      ICount:          674
      EdgeCount:       126
      CyclomaticComplexity: 32
      functionsReached:
        - __assert_fail
        - zrleEncodeTile24BBE
        - zrleOutStreamWriteOpaque24B
        - zrleOutStreamWriteU8
        - zrlePaletteHelperInit
        - zrlePaletteHelperInsert
        - zrlePaletteHelperLookup
        - zywrleAnalyze32BE
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:146,3'
          Dst:             zrlePaletteHelperInit
        - Src:             'src/libvncserver/zrleencodetemplate.c:156,5'
          Dst:             zrlePaletteHelperInsert
        - Src:             'src/libvncserver/zrleencodetemplate.c:162,5'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:163,5'
          Dst:             zrleOutStreamWriteOpaque24B
        - Src:             'src/libvncserver/zrleencodetemplate.c:212,3'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:215,5'
          Dst:             zrleOutStreamWriteOpaque24B
        - Src:             'src/libvncserver/zrleencodetemplate.c:232,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:234,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:235,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:239,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:240,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:242,9'
          Dst:             zrleOutStreamWriteOpaque24B
        - Src:             'src/libvncserver/zrleencodetemplate.c:246,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:249,7'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:262,7'
          Dst:             __assert_fail
        - Src:             'src/libvncserver/zrleencodetemplate.c:274,27'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:278,13'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:284,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:293,9'
          Dst:             zywrleAnalyze32BE
        - Src:             'src/libvncserver/zrleencodetemplate.c:294,2'
          Dst:             zrleEncodeTile24BBE
        - Src:             'src/libvncserver/zrleencodetemplate.c:302,11'
          Dst:             zrleOutStreamWriteOpaque24B
    - functionName:    zrleEncode24ALE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - zrleEncodeTile24ALE
        - zrleOutStreamFlush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:113,40'
          Dst:             calloc
        - Src:             'src/libvncserver/zrleencodetemplate.c:116,7'
          Dst:             zrleEncodeTile24ALE
        - Src:             'src/libvncserver/zrleencodetemplate.c:120,3'
          Dst:             zrleOutStreamFlush
    - functionName:    zrleEncodeTile24ALE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         96
      ICount:          674
      EdgeCount:       126
      CyclomaticComplexity: 32
      functionsReached:
        - __assert_fail
        - zrleEncodeTile24ALE
        - zrleOutStreamWriteOpaque24A
        - zrleOutStreamWriteU8
        - zrlePaletteHelperInit
        - zrlePaletteHelperInsert
        - zrlePaletteHelperLookup
        - zywrleAnalyze32LE
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:146,3'
          Dst:             zrlePaletteHelperInit
        - Src:             'src/libvncserver/zrleencodetemplate.c:156,5'
          Dst:             zrlePaletteHelperInsert
        - Src:             'src/libvncserver/zrleencodetemplate.c:162,5'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:163,5'
          Dst:             zrleOutStreamWriteOpaque24A
        - Src:             'src/libvncserver/zrleencodetemplate.c:212,3'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:215,5'
          Dst:             zrleOutStreamWriteOpaque24A
        - Src:             'src/libvncserver/zrleencodetemplate.c:232,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:234,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:235,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:239,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:240,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:242,9'
          Dst:             zrleOutStreamWriteOpaque24A
        - Src:             'src/libvncserver/zrleencodetemplate.c:246,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:249,7'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:262,7'
          Dst:             __assert_fail
        - Src:             'src/libvncserver/zrleencodetemplate.c:274,27'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:278,13'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:284,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:293,9'
          Dst:             zywrleAnalyze32LE
        - Src:             'src/libvncserver/zrleencodetemplate.c:294,2'
          Dst:             zrleEncodeTile24ALE
        - Src:             'src/libvncserver/zrleencodetemplate.c:302,11'
          Dst:             zrleOutStreamWriteOpaque24A
    - functionName:    zrleEncode24ABE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - zrleEncodeTile24ABE
        - zrleOutStreamFlush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:113,40'
          Dst:             calloc
        - Src:             'src/libvncserver/zrleencodetemplate.c:116,7'
          Dst:             zrleEncodeTile24ABE
        - Src:             'src/libvncserver/zrleencodetemplate.c:120,3'
          Dst:             zrleOutStreamFlush
    - functionName:    zrleEncodeTile24ABE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         96
      ICount:          674
      EdgeCount:       126
      CyclomaticComplexity: 32
      functionsReached:
        - __assert_fail
        - zrleEncodeTile24ABE
        - zrleOutStreamWriteOpaque24A
        - zrleOutStreamWriteU8
        - zrlePaletteHelperInit
        - zrlePaletteHelperInsert
        - zrlePaletteHelperLookup
        - zywrleAnalyze32BE
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:146,3'
          Dst:             zrlePaletteHelperInit
        - Src:             'src/libvncserver/zrleencodetemplate.c:156,5'
          Dst:             zrlePaletteHelperInsert
        - Src:             'src/libvncserver/zrleencodetemplate.c:162,5'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:163,5'
          Dst:             zrleOutStreamWriteOpaque24A
        - Src:             'src/libvncserver/zrleencodetemplate.c:212,3'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:215,5'
          Dst:             zrleOutStreamWriteOpaque24A
        - Src:             'src/libvncserver/zrleencodetemplate.c:232,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:234,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:235,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:239,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:240,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:242,9'
          Dst:             zrleOutStreamWriteOpaque24A
        - Src:             'src/libvncserver/zrleencodetemplate.c:246,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:249,7'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:262,7'
          Dst:             __assert_fail
        - Src:             'src/libvncserver/zrleencodetemplate.c:274,27'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:278,13'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:284,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:293,9'
          Dst:             zywrleAnalyze32BE
        - Src:             'src/libvncserver/zrleencodetemplate.c:294,2'
          Dst:             zrleEncodeTile24ABE
        - Src:             'src/libvncserver/zrleencodetemplate.c:302,11'
          Dst:             zrleOutStreamWriteOpaque24A
    - functionName:    zrleEncode15LE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - zrleEncodeTile15LE
        - zrleOutStreamFlush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:113,40'
          Dst:             calloc
        - Src:             'src/libvncserver/zrleencodetemplate.c:116,7'
          Dst:             zrleEncodeTile15LE
        - Src:             'src/libvncserver/zrleencodetemplate.c:120,3'
          Dst:             zrleOutStreamFlush
    - functionName:    zrleEncodeTile15LE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          667
      EdgeCount:       121
      CyclomaticComplexity: 31
      functionsReached:
        - __assert_fail
        - zrleEncodeTile15LE
        - zrleOutStreamWriteBytes
        - zrleOutStreamWriteOpaque16
        - zrleOutStreamWriteU8
        - zrlePaletteHelperInit
        - zrlePaletteHelperInsert
        - zrlePaletteHelperLookup
        - zywrleAnalyze15LE
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:146,3'
          Dst:             zrlePaletteHelperInit
        - Src:             'src/libvncserver/zrleencodetemplate.c:156,5'
          Dst:             zrlePaletteHelperInsert
        - Src:             'src/libvncserver/zrleencodetemplate.c:162,5'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:163,5'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:212,3'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:215,5'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:232,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:234,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:235,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:239,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:240,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:242,9'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:246,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:249,7'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:262,7'
          Dst:             __assert_fail
        - Src:             'src/libvncserver/zrleencodetemplate.c:274,27'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:278,13'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:284,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:293,9'
          Dst:             zywrleAnalyze15LE
        - Src:             'src/libvncserver/zrleencodetemplate.c:294,2'
          Dst:             zrleEncodeTile15LE
        - Src:             'src/libvncserver/zrleencodetemplate.c:304,9'
          Dst:             zrleOutStreamWriteBytes
    - functionName:    zywrleAnalyze15LE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          919
      EdgeCount:       115
      CyclomaticComplexity: 30
      functionsReached:
        - Wavelet
        - zywrleCalcSize
        - zywrleRGBYUV15LE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/zywrletemplate.c:765,2'
          Dst:             zywrleCalcSize
        - Src:             'src/common/zywrletemplate.c:773,2'
          Dst:             zywrleRGBYUV15LE
        - Src:             'src/common/zywrletemplate.c:774,2'
          Dst:             Wavelet
    - functionName:    zywrleRGBYUV15LE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          186
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zrleEncode15BE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - zrleEncodeTile15BE
        - zrleOutStreamFlush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:113,40'
          Dst:             calloc
        - Src:             'src/libvncserver/zrleencodetemplate.c:116,7'
          Dst:             zrleEncodeTile15BE
        - Src:             'src/libvncserver/zrleencodetemplate.c:120,3'
          Dst:             zrleOutStreamFlush
    - functionName:    zrleEncodeTile15BE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          667
      EdgeCount:       121
      CyclomaticComplexity: 31
      functionsReached:
        - __assert_fail
        - zrleEncodeTile15BE
        - zrleOutStreamWriteBytes
        - zrleOutStreamWriteOpaque16
        - zrleOutStreamWriteU8
        - zrlePaletteHelperInit
        - zrlePaletteHelperInsert
        - zrlePaletteHelperLookup
        - zywrleAnalyze15BE
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:146,3'
          Dst:             zrlePaletteHelperInit
        - Src:             'src/libvncserver/zrleencodetemplate.c:156,5'
          Dst:             zrlePaletteHelperInsert
        - Src:             'src/libvncserver/zrleencodetemplate.c:162,5'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:163,5'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:212,3'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:215,5'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:232,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:234,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:235,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:239,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:240,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:242,9'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:246,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:249,7'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:262,7'
          Dst:             __assert_fail
        - Src:             'src/libvncserver/zrleencodetemplate.c:274,27'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:278,13'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:284,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:293,9'
          Dst:             zywrleAnalyze15BE
        - Src:             'src/libvncserver/zrleencodetemplate.c:294,2'
          Dst:             zrleEncodeTile15BE
        - Src:             'src/libvncserver/zrleencodetemplate.c:304,9'
          Dst:             zrleOutStreamWriteBytes
    - functionName:    zywrleAnalyze15BE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          919
      EdgeCount:       115
      CyclomaticComplexity: 30
      functionsReached:
        - Wavelet
        - zywrleCalcSize
        - zywrleRGBYUV15BE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/zywrletemplate.c:765,2'
          Dst:             zywrleCalcSize
        - Src:             'src/common/zywrletemplate.c:773,2'
          Dst:             zywrleRGBYUV15BE
        - Src:             'src/common/zywrletemplate.c:774,2'
          Dst:             Wavelet
    - functionName:    zywrleRGBYUV15BE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          186
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zrleEncode16LE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - zrleEncodeTile16LE
        - zrleOutStreamFlush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:113,40'
          Dst:             calloc
        - Src:             'src/libvncserver/zrleencodetemplate.c:116,7'
          Dst:             zrleEncodeTile16LE
        - Src:             'src/libvncserver/zrleencodetemplate.c:120,3'
          Dst:             zrleOutStreamFlush
    - functionName:    zrleEncodeTile16LE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          667
      EdgeCount:       121
      CyclomaticComplexity: 31
      functionsReached:
        - __assert_fail
        - zrleEncodeTile16LE
        - zrleOutStreamWriteBytes
        - zrleOutStreamWriteOpaque16
        - zrleOutStreamWriteU8
        - zrlePaletteHelperInit
        - zrlePaletteHelperInsert
        - zrlePaletteHelperLookup
        - zywrleAnalyze16LE
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:146,3'
          Dst:             zrlePaletteHelperInit
        - Src:             'src/libvncserver/zrleencodetemplate.c:156,5'
          Dst:             zrlePaletteHelperInsert
        - Src:             'src/libvncserver/zrleencodetemplate.c:162,5'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:163,5'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:212,3'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:215,5'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:232,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:234,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:235,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:239,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:240,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:242,9'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:246,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:249,7'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:262,7'
          Dst:             __assert_fail
        - Src:             'src/libvncserver/zrleencodetemplate.c:274,27'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:278,13'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:284,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:293,9'
          Dst:             zywrleAnalyze16LE
        - Src:             'src/libvncserver/zrleencodetemplate.c:294,2'
          Dst:             zrleEncodeTile16LE
        - Src:             'src/libvncserver/zrleencodetemplate.c:304,9'
          Dst:             zrleOutStreamWriteBytes
    - functionName:    zywrleAnalyze16LE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          915
      EdgeCount:       115
      CyclomaticComplexity: 30
      functionsReached:
        - Wavelet
        - zywrleCalcSize
        - zywrleRGBYUV16LE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/zywrletemplate.c:765,2'
          Dst:             zywrleCalcSize
        - Src:             'src/common/zywrletemplate.c:773,2'
          Dst:             zywrleRGBYUV16LE
        - Src:             'src/common/zywrletemplate.c:774,2'
          Dst:             Wavelet
    - functionName:    zywrleRGBYUV16LE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          185
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zrleEncode16BE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - zrleEncodeTile16BE
        - zrleOutStreamFlush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:113,40'
          Dst:             calloc
        - Src:             'src/libvncserver/zrleencodetemplate.c:116,7'
          Dst:             zrleEncodeTile16BE
        - Src:             'src/libvncserver/zrleencodetemplate.c:120,3'
          Dst:             zrleOutStreamFlush
    - functionName:    zrleEncodeTile16BE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          667
      EdgeCount:       121
      CyclomaticComplexity: 31
      functionsReached:
        - __assert_fail
        - zrleEncodeTile16BE
        - zrleOutStreamWriteBytes
        - zrleOutStreamWriteOpaque16
        - zrleOutStreamWriteU8
        - zrlePaletteHelperInit
        - zrlePaletteHelperInsert
        - zrlePaletteHelperLookup
        - zywrleAnalyze16BE
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:146,3'
          Dst:             zrlePaletteHelperInit
        - Src:             'src/libvncserver/zrleencodetemplate.c:156,5'
          Dst:             zrlePaletteHelperInsert
        - Src:             'src/libvncserver/zrleencodetemplate.c:162,5'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:163,5'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:212,3'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:215,5'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:232,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:234,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:235,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:239,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:240,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:242,9'
          Dst:             zrleOutStreamWriteOpaque16
        - Src:             'src/libvncserver/zrleencodetemplate.c:246,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:249,7'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:262,7'
          Dst:             __assert_fail
        - Src:             'src/libvncserver/zrleencodetemplate.c:274,27'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:278,13'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:284,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:293,9'
          Dst:             zywrleAnalyze16BE
        - Src:             'src/libvncserver/zrleencodetemplate.c:294,2'
          Dst:             zrleEncodeTile16BE
        - Src:             'src/libvncserver/zrleencodetemplate.c:304,9'
          Dst:             zrleOutStreamWriteBytes
    - functionName:    zywrleAnalyze16BE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          915
      EdgeCount:       115
      CyclomaticComplexity: 30
      functionsReached:
        - Wavelet
        - zywrleCalcSize
        - zywrleRGBYUV16BE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/zywrletemplate.c:765,2'
          Dst:             zywrleCalcSize
        - Src:             'src/common/zywrletemplate.c:773,2'
          Dst:             zywrleRGBYUV16BE
        - Src:             'src/common/zywrletemplate.c:774,2'
          Dst:             Wavelet
    - functionName:    zywrleRGBYUV16BE
      functionSourceFile: '/src/libvncserver/src/common/zywrletemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          185
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zrleEncode8NE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - zrleEncodeTile8NE
        - zrleOutStreamFlush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:113,40'
          Dst:             calloc
        - Src:             'src/libvncserver/zrleencodetemplate.c:116,7'
          Dst:             zrleEncodeTile8NE
        - Src:             'src/libvncserver/zrleencodetemplate.c:120,3'
          Dst:             zrleOutStreamFlush
    - functionName:    zrleEncodeTile8NE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleencodetemplate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         81
      ICount:          605
      EdgeCount:       106
      CyclomaticComplexity: 27
      functionsReached:
        - __assert_fail
        - zrleOutStreamWriteBytes
        - zrleOutStreamWriteOpaque8
        - zrleOutStreamWriteU8
        - zrlePaletteHelperInit
        - zrlePaletteHelperInsert
        - zrlePaletteHelperLookup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleencodetemplate.c:146,3'
          Dst:             zrlePaletteHelperInit
        - Src:             'src/libvncserver/zrleencodetemplate.c:156,5'
          Dst:             zrlePaletteHelperInsert
        - Src:             'src/libvncserver/zrleencodetemplate.c:162,5'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:163,5'
          Dst:             zrleOutStreamWriteOpaque8
        - Src:             'src/libvncserver/zrleencodetemplate.c:212,3'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:215,5'
          Dst:             zrleOutStreamWriteOpaque8
        - Src:             'src/libvncserver/zrleencodetemplate.c:232,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:234,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:235,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:239,21'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:240,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:242,9'
          Dst:             zrleOutStreamWriteOpaque8
        - Src:             'src/libvncserver/zrleencodetemplate.c:246,9'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:249,7'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:262,7'
          Dst:             __assert_fail
        - Src:             'src/libvncserver/zrleencodetemplate.c:274,27'
          Dst:             zrlePaletteHelperLookup
        - Src:             'src/libvncserver/zrleencodetemplate.c:278,13'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:284,11'
          Dst:             zrleOutStreamWriteU8
        - Src:             'src/libvncserver/zrleencodetemplate.c:304,9'
          Dst:             zrleOutStreamWriteBytes
    - functionName:    rfbSendRectEncodingZRLE
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         113
      ICount:          971
      EdgeCount:       148
      CyclomaticComplexity: 37
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
        - zrleEncode15BE
        - zrleEncode15LE
        - zrleEncode16BE
        - zrleEncode16LE
        - zrleEncode24ABE
        - zrleEncode24ALE
        - zrleEncode24BBE
        - zrleEncode24BLE
        - zrleEncode32BE
        - zrleEncode32LE
        - zrleEncode8NE
        - zrleOutStreamNew
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/zrle.c:136,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/zrle.c:131,20'
          Dst:             zrleOutStreamNew
        - Src:             'src/libvncserver/zrle.c:139,5'
          Dst:             zrleEncode8NE
        - Src:             'src/libvncserver/zrle.c:145,5'
          Dst:             zrleEncode16BE
        - Src:             'src/libvncserver/zrle.c:147,5'
          Dst:             zrleEncode16LE
        - Src:             'src/libvncserver/zrle.c:150,5'
          Dst:             zrleEncode15BE
        - Src:             'src/libvncserver/zrle.c:152,5'
          Dst:             zrleEncode15LE
        - Src:             'src/libvncserver/zrle.c:169,3'
          Dst:             zrleEncode24ABE
        - Src:             'src/libvncserver/zrle.c:171,3'
          Dst:             zrleEncode24ALE
        - Src:             'src/libvncserver/zrle.c:176,3'
          Dst:             zrleEncode24BBE
        - Src:             'src/libvncserver/zrle.c:178,3'
          Dst:             zrleEncode24BLE
        - Src:             'src/libvncserver/zrle.c:182,3'
          Dst:             zrleEncode32BE
        - Src:             'src/libvncserver/zrle.c:184,3'
          Dst:             zrleEncode32LE
        - Src:             'src/libvncserver/zrle.c:190,3'
          Dst:             rfbStatRecordEncodingSent
        - Src:             'src/libvncserver/zrle.c:196,12'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/zrle.c:231,12'
          Dst:             rfbSendUpdateBuf
    - functionName:    zrleOutStreamOverrun
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          290
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - deflate
        - zrleBufferGrow
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:168,5'
          Dst:             zrleBufferGrow
        - Src:             'src/libvncserver/zrleoutstream.c:181,18'
          Dst:             deflate
    - functionName:    zrleBufferGrow
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          86
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:55,16'
          Dst:             realloc
    - functionName:    zrleOutStreamWriteOpaque24B
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - zrleOutStreamCheck
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:273,3'
          Dst:             zrleOutStreamCheck
    - functionName:    zrleOutStreamCheck
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - zrleOutStreamOverrun
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:217,12'
          Dst:             zrleOutStreamOverrun
    - functionName:    zrleOutStreamWriteOpaque24A
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - zrleOutStreamCheck
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:265,3'
          Dst:             zrleOutStreamCheck
    - functionName:    zrleOutStreamWriteOpaque32
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - zrleOutStreamCheck
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:256,3'
          Dst:             zrleOutStreamCheck
    - functionName:    zrleOutStreamWriteOpaque16
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - zrleOutStreamCheck
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:249,3'
          Dst:             zrleOutStreamCheck
    - functionName:    zrleOutStreamWriteOpaque8
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - zrleOutStreamCheck
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:243,3'
          Dst:             zrleOutStreamCheck
    - functionName:    zrleOutStreamWriteU8
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - zrleOutStreamCheck
      functionUses:    99
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:237,3'
          Dst:             zrleOutStreamCheck
    - functionName:    zrleOutStreamWriteBytes
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - zrleOutStreamCheck
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:228,13'
          Dst:             zrleOutStreamCheck
    - functionName:    zrleOutStreamFlush
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          171
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - deflate
        - zrleBufferGrow
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:121,5'
          Dst:             zrleBufferGrow
        - Src:             'src/libvncserver/zrleoutstream.c:134,18'
          Dst:             deflate
    - functionName:    zrleOutStreamFree
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - deflateEnd
        - zrleBufferFree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:101,3'
          Dst:             deflateEnd
        - Src:             'src/libvncserver/zrleoutstream.c:102,3'
          Dst:             zrleBufferFree
        - Src:             'src/libvncserver/zrleoutstream.c:103,3'
          Dst:             zrleBufferFree
    - functionName:    zrleBufferFree
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zrleBufferAlloc
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zrleOutStreamNew
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrleoutstream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          87
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - deflateInit_
        - zrleBufferAlloc
        - zrleBufferFree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrleoutstream.c:76,8'
          Dst:             zrleBufferAlloc
        - Src:             'src/libvncserver/zrleoutstream.c:81,8'
          Dst:             zrleBufferAlloc
        - Src:             'src/libvncserver/zrleoutstream.c:82,5'
          Dst:             zrleBufferFree
        - Src:             'src/libvncserver/zrleoutstream.c:90,7'
          Dst:             deflateInit_
        - Src:             'src/libvncserver/zrleoutstream.c:91,5'
          Dst:             zrleBufferFree
    - functionName:    deflateInit_
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zrlePaletteHelperLookup
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrlepalettehelper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          100
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
      functionUses:    33
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/zrlepalettehelper.c:55,3'
          Dst:             __assert_fail
    - functionName:    zrlePaletteHelperInsert
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrlepalettehelper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          112
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zrlePaletteHelperInit
      functionSourceFile: '/src/libvncserver/src/libvncserver/zrlepalettehelper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo1x_decompress_safe
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5940
      functionLinenumberEnd: 6361
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         172
      ICount:          1160
      EdgeCount:       232
      CyclomaticComplexity: 62
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo1x_decompress
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5399
      functionLinenumberEnd: 5801
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         108
      ICount:          787
      EdgeCount:       140
      CyclomaticComplexity: 34
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo1x_1_compress_core
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4928
      functionLinenumberEnd: 5208
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          654
      EdgeCount:       95
      CyclomaticComplexity: 22
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo1x_1_compress
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5215
      functionLinenumberEnd: 5274
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          361
      EdgeCount:       64
      CyclomaticComplexity: 16
      functionsReached:
        - lzo1x_1_compress_core
        - lzo_memset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/minilzo.c:5232,9'
          Dst:             lzo_memset
        - Src:             'src/common/minilzo.c:5234,13'
          Dst:             lzo1x_1_compress_core
    - functionName:    lzo_memset
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4396
      functionLinenumberEnd: 4405
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __lzo_init_v2
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4551
      functionLinenumberEnd: 4583
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - int
        - int
        - int
        - int
        - int
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          250
      EdgeCount:       74
      CyclomaticComplexity: 22
      functionsReached:
        - _lzo_config_check
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/minilzo.c:4578,9'
          Dst:             _lzo_config_check
    - functionName:    _lzo_config_check
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4448
      functionLinenumberEnd: 4545
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         31
      ICount:          447
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - u2p
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/minilzo.c:4459,9'
          Dst:             u2p
        - Src:             'src/common/minilzo.c:4469,9'
          Dst:             u2p
        - Src:             'src/common/minilzo.c:4474,9'
          Dst:             u2p
        - Src:             'src/common/minilzo.c:4489,9'
          Dst:             u2p
        - Src:             'src/common/minilzo.c:4505,9'
          Dst:             u2p
    - functionName:    u2p
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4441
      functionLinenumberEnd: 4442
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo_bitops_unused_funcs
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3654
      functionLinenumberEnd: 3662
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo_memmove
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4370
      functionLinenumberEnd: 4392
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo_memcpy
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4355
      functionLinenumberEnd: 4366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo_memcmp
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4338
      functionLinenumberEnd: 4351
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/minilzo.c:4351,12'
          Dst:             memcmp
    - functionName:    lzo_adler32
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4281
      functionLinenumberEnd: 4308
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          310
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _lzo_version_date
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4266
      functionLinenumberEnd: 4267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _lzo_version_string
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4260
      functionLinenumberEnd: 4261
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo_version_date
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4254
      functionLinenumberEnd: 4255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo_version_string
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4248
      functionLinenumberEnd: 4249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo_version
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4242
      functionLinenumberEnd: 4243
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lzo_copyright
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4236
      functionLinenumberEnd: 4237
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __lzo_align_gap
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4192
      functionLinenumberEnd: 4210
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __lzo_ptr_linear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/minilzo.c:4198,9'
          Dst:             __lzo_ptr_linear
    - functionName:    __lzo_ptr_linear
      functionSourceFile: '/src/libvncserver/src/common/minilzo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4176
      functionLinenumberEnd: 4187
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CheckSolidTile8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 566
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      char
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          134
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CheckSolidTile16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 567
      functionDepth:   0
      returnType:      char
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          134
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CheckSolidTile32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 568
      functionDepth:   0
      returnType:      char
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          130
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EncodeIndexedRect16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1461
      functionLinenumberEnd: 1461
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          137
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EncodeIndexedRect32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1462
      functionLinenumberEnd: 1462
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          131
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EncodeMonoRect8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1515
      functionLinenumberEnd: 1515
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          215
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EncodeMonoRect16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1516
      functionLinenumberEnd: 1516
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          215
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EncodeMonoRect32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1517
      functionLinenumberEnd: 1517
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          208
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CompressData
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1053
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          240
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - deflate
        - deflateInit2_
        - deflateParams
        - rfbSendCompressedDataTight
        - rfbStatRecordEncodingSentAdd
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:1007,9'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/tight.c:1012,16'
          Dst:             rfbSendCompressedDataTight
        - Src:             'src/libvncserver/tight.c:1022,15'
          Dst:             deflateInit2_
        - Src:             'src/libvncserver/tight.c:1039,13'
          Dst:             deflateParams
        - Src:             'src/libvncserver/tight.c:1046,9'
          Dst:             deflate
        - Src:             'src/libvncserver/tight.c:1051,12'
          Dst:             rfbSendCompressedDataTight
    - functionName:    rfbSendCompressedDataTight
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1057
      functionLinenumberEnd: 1088
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          217
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSentAdd
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:1061,5'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/tight.c:1065,9'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/tight.c:1069,13'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/tight.c:1079,18'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/tight.c:1085,5'
          Dst:             rfbStatRecordEncodingSentAdd
    - functionName:    deflateParams
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Pack24
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1400
      functionLinenumberEnd: 1423
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          122
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    PaletteInsert
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1328
      functionLinenumberEnd: 1387
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          349
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    PaletteReset
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1317
      functionLinenumberEnd: 1320
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SendIndexedRect
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 882
      functionLinenumberEnd: 953
      functionDepth:   0
      returnType:      char
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          360
      EdgeCount:       36
      CyclomaticComplexity: 8
      functionsReached:
        - CompressData
        - EncodeIndexedRect16
        - EncodeIndexedRect32
        - Pack24
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSentAdd
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/tight.c:910,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/tight.c:895,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/tight.c:913,9'
          Dst:             EncodeIndexedRect32
        - Src:             'src/libvncserver/tight.c:920,13'
          Dst:             Pack24
        - Src:             'src/libvncserver/tight.c:928,9'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/tight.c:933,9'
          Dst:             EncodeIndexedRect16
        - Src:             'src/libvncserver/tight.c:942,9'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/tight.c:950,12'
          Dst:             CompressData
    - functionName:    SendMonoRect
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 801
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      char
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          322
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - CompressData
        - EncodeMonoRect16
        - EncodeMonoRect32
        - EncodeMonoRect8
        - Pack24
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSentAdd
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/libvncserver/tight.c:833,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/tight.c:815,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/tight.c:836,9'
          Dst:             EncodeMonoRect32
        - Src:             'src/libvncserver/tight.c:841,13'
          Dst:             Pack24
        - Src:             'src/libvncserver/tight.c:848,9'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/tight.c:852,9'
          Dst:             EncodeMonoRect16
        - Src:             'src/libvncserver/tight.c:859,9'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/tight.c:863,9'
          Dst:             EncodeMonoRect8
        - Src:             'src/libvncserver/tight.c:867,9'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/tight.c:870,12'
          Dst:             CompressData
    - functionName:    SendFullColorRect
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 961
      functionLinenumberEnd: 992
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          155
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - CompressData
        - Pack24
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSentAdd
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:972,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/tight.c:981,5'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/tight.c:984,9'
          Dst:             Pack24
        - Src:             'src/libvncserver/tight.c:989,12'
          Dst:             CompressData
    - functionName:    FillPalette32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1201
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          268
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - PaletteInsert
        - PaletteReset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:1201,1'
          Dst:             PaletteReset
        - Src:             'src/libvncserver/tight.c:1201,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1201,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1201,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1201,1'
          Dst:             PaletteInsert
    - functionName:    FillPalette16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1200
      functionLinenumberEnd: 1200
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          284
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - PaletteInsert
        - PaletteReset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:1200,1'
          Dst:             PaletteReset
        - Src:             'src/libvncserver/tight.c:1200,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1200,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1200,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1200,1'
          Dst:             PaletteInsert
    - functionName:    FillPalette8
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1097
      functionLinenumberEnd: 1135
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          201
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FastFillPalette32
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1304
      functionLinenumberEnd: 1304
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          525
      EdgeCount:       79
      CyclomaticComplexity: 20
      functionsReached:
        - PaletteInsert
        - PaletteReset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:1304,1'
          Dst:             PaletteReset
        - Src:             'src/libvncserver/tight.c:1304,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1304,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1304,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1304,1'
          Dst:             PaletteInsert
    - functionName:    FastFillPalette16
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1303
      functionLinenumberEnd: 1303
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          560
      EdgeCount:       79
      CyclomaticComplexity: 20
      functionsReached:
        - PaletteInsert
        - PaletteReset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:1303,1'
          Dst:             PaletteReset
        - Src:             'src/libvncserver/tight.c:1303,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1303,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1303,1'
          Dst:             PaletteInsert
        - Src:             'src/libvncserver/tight.c:1303,1'
          Dst:             PaletteInsert
    - functionName:    SendJpegRect
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1526
      functionLinenumberEnd: 1638
      functionDepth:   0
      returnType:      char
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          668
      EdgeCount:       89
      CyclomaticComplexity: 25
      functionsReached:
        - SendFullColorRect
        - TJBUFSIZE
        - realloc
        - rfbSendCompressedDataTight
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSentAdd
        - tjCompress
        - tjGetErrorStr
        - tjInitCompress
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:1535,16'
          Dst:             SendFullColorRect
        - Src:             'src/libvncserver/tight.c:1542,28'
          Dst:             tjInitCompress
        - Src:             'src/libvncserver/tight.c:1543,40'
          Dst:             tjGetErrorStr
        - Src:             'src/libvncserver/tight.c:1548,51'
          Dst:             TJBUFSIZE
        - Src:             'src/libvncserver/tight.c:1550,46'
          Dst:             TJBUFSIZE
        - Src:             'src/libvncserver/tight.c:1552,75'
          Dst:             TJBUFSIZE
        - Src:             'src/libvncserver/tight.c:1552,50'
          Dst:             realloc
        - Src:             'src/libvncserver/tight.c:1561,31'
          Dst:             TJBUFSIZE
        - Src:             'src/libvncserver/tight.c:1614,9'
          Dst:             tjCompress
        - Src:             'src/libvncserver/tight.c:1616,36'
          Dst:             tjGetErrorStr
        - Src:             'src/libvncserver/tight.c:1630,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/tight.c:1635,5'
          Dst:             rfbStatRecordEncodingSentAdd
        - Src:             'src/libvncserver/tight.c:1637,12'
          Dst:             rfbSendCompressedDataTight
    - functionName:    SendSubrect
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 730
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          504
      EdgeCount:       70
      CyclomaticComplexity: 15
      functionsReached:
        - FastFillPalette16
        - FastFillPalette32
        - FillPalette16
        - FillPalette32
        - FillPalette8
        - SendFullColorRect
        - SendIndexedRect
        - SendJpegRect
        - SendMonoRect
        - SendSolidRect
        - rfbSendTightHeader
        - rfbSendUpdateBuf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/libvncserver/tight.c:674,9'
          Branch Sides:    []
        - Branch String:   'src/libvncserver/tight.c:696,9'
          Branch Sides:    []
        - Branch String:   'src/libvncserver/tight.c:708,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/tight.c:644,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/tight.c:648,10'
          Dst:             rfbSendTightHeader
        - Src:             'src/libvncserver/tight.c:656,16'
          Dst:             SendJpegRect
        - Src:             'src/libvncserver/tight.c:676,13'
          Dst:             FastFillPalette16
        - Src:             'src/libvncserver/tight.c:680,13'
          Dst:             FastFillPalette32
        - Src:             'src/libvncserver/tight.c:698,13'
          Dst:             FillPalette8
        - Src:             'src/libvncserver/tight.c:701,13'
          Dst:             FillPalette16
        - Src:             'src/libvncserver/tight.c:704,13'
          Dst:             FillPalette32
        - Src:             'src/libvncserver/tight.c:712,23'
          Dst:             SendJpegRect
        - Src:             'src/libvncserver/tight.c:714,23'
          Dst:             SendFullColorRect
        - Src:             'src/libvncserver/tight.c:719,19'
          Dst:             SendSolidRect
        - Src:             'src/libvncserver/tight.c:723,19'
          Dst:             SendMonoRect
        - Src:             'src/libvncserver/tight.c:727,19'
          Dst:             SendIndexedRect
    - functionName:    rfbSendTightHeader
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 738
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          226
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSent
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:742,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/tight.c:756,5'
          Dst:             rfbStatRecordEncodingSent
    - functionName:    SendSolidRect
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 770
      functionLinenumberEnd: 791
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          110
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Pack24
        - rfbSendUpdateBuf
        - rfbStatRecordEncodingSentAdd
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:774,9'
          Dst:             Pack24
        - Src:             'src/libvncserver/tight.c:780,14'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/tight.c:788,5'
          Dst:             rfbStatRecordEncodingSentAdd
    - functionName:    ExtendSolidArea
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      void
      argCount:        10
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          244
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - CheckSolidTile
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:488,22'
          Dst:             CheckSolidTile
        - Src:             'src/libvncserver/tight.c:496,15'
          Dst:             CheckSolidTile
        - Src:             'src/libvncserver/tight.c:502,22'
          Dst:             CheckSolidTile
        - Src:             'src/libvncserver/tight.c:510,15'
          Dst:             CheckSolidTile
    - functionName:    CheckSolidTile
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      char
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          76
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - CheckSolidTile16
        - CheckSolidTile32
        - CheckSolidTile8
      functionUses:    7
      BranchProfiles:
        - Branch String:   'src/libvncserver/tight.c:525,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/tight.c:527,16'
          Dst:             CheckSolidTile32
        - Src:             'src/libvncserver/tight.c:529,16'
          Dst:             CheckSolidTile16
        - Src:             'src/libvncserver/tight.c:531,16'
          Dst:             CheckSolidTile8
    - functionName:    FindBestSolidArea
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 435
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          209
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - CheckSolidTile
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:449,14'
          Dst:             CheckSolidTile
        - Src:             'src/libvncserver/tight.c:455,18'
          Dst:             CheckSolidTile
    - functionName:    SendRectSimple
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 572
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          381
      EdgeCount:       85
      CyclomaticComplexity: 23
      functionsReached:
        - SendSubrect
        - realloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:585,51'
          Dst:             realloc
        - Src:             'src/libvncserver/tight.c:597,50'
          Dst:             realloc
        - Src:             'src/libvncserver/tight.c:619,22'
          Dst:             SendSubrect
        - Src:             'src/libvncserver/tight.c:624,14'
          Dst:             SendSubrect
    - functionName:    rfbSendRectEncodingTightPng
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - SendRectEncodingTight
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:242,12'
          Dst:             SendRectEncodingTight
    - functionName:    SendRectEncodingTight
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         105
      ICount:          761
      EdgeCount:       143
      CyclomaticComplexity: 40
      functionsReached:
        - CheckSolidTile
        - ExtendSolidArea
        - FindBestSolidArea
        - SendRectEncodingTight
        - SendRectSimple
        - SendSolidRect
        - realloc
        - rfbSendTightHeader
        - rfbSendUpdateBuf
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:259,5'
          Dst:             rfbSendUpdateBuf
        - Src:             'src/libvncserver/tight.c:295,16'
          Dst:             SendRectSimple
        - Src:             'src/libvncserver/tight.c:303,51'
          Dst:             realloc
        - Src:             'src/libvncserver/tight.c:331,18'
          Dst:             SendRectSimple
        - Src:             'src/libvncserver/tight.c:345,17'
          Dst:             CheckSolidTile
        - Src:             'src/libvncserver/tight.c:358,17'
          Dst:             FindBestSolidArea
        - Src:             'src/libvncserver/tight.c:371,17'
          Dst:             ExtendSolidArea
        - Src:             'src/libvncserver/tight.c:377,23'
          Dst:             SendRectSimple
        - Src:             'src/libvncserver/tight.c:380,23'
          Dst:             SendRectEncodingTight
        - Src:             'src/libvncserver/tight.c:386,22'
          Dst:             rfbSendTightHeader
        - Src:             'src/libvncserver/tight.c:397,22'
          Dst:             SendSolidRect
        - Src:             'src/libvncserver/tight.c:403,23'
          Dst:             SendRectEncodingTight
        - Src:             'src/libvncserver/tight.c:407,23'
          Dst:             SendRectEncodingTight
        - Src:             'src/libvncserver/tight.c:422,12'
          Dst:             SendRectSimple
    - functionName:    rfbSendRectEncodingTight
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      char
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - SendRectEncodingTight
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:231,12'
          Dst:             SendRectEncodingTight
    - functionName:    rfbNumCodedRectsTight
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          97
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfbFreeTightData
      functionSourceFile: '/src/libvncserver/src/libvncserver/tight.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - tjDestroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/tight.c:126,9'
          Dst:             tjDestroy
    - functionName:    skip_input_data
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fill_input_buffer
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 631
      functionLinenumberEnd: 633
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    src_noop
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 643
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    empty_output_buffer
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dst_noop
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    my_output_message
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tjDecompress
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 857
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getPixelFormat
        - tjDecompress2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:857,11'
          Dst:             getPixelFormat
        - Src:             'src/common/turbojpeg.c:856,9'
          Dst:             tjDecompress2
    - functionName:    getPixelFormat
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          82
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tjDecompress2
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 751
      functionLinenumberEnd: 850
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         84
      ICount:          546
      EdgeCount:       114
      CyclomaticComplexity: 32
      functionsReached:
        - _setjmp
        - jpeg_abort_decompress
        - jpeg_finish_decompress
        - jpeg_read_header
        - jpeg_read_scanlines
        - jpeg_start_decompress
        - putenv
        - setDecompDefaults
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:759,2'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:761,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:765,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:767,28'
          Dst:             putenv
        - Src:             'src/common/turbojpeg.c:768,33'
          Dst:             putenv
        - Src:             'src/common/turbojpeg.c:769,34'
          Dst:             putenv
        - Src:             'src/common/turbojpeg.c:771,5'
          Dst:             _setjmp
        - Src:             'src/common/turbojpeg.c:780,2'
          Dst:             jpeg_read_header
        - Src:             'src/common/turbojpeg.c:781,5'
          Dst:             setDecompDefaults
        - Src:             'src/common/turbojpeg.c:799,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:806,2'
          Dst:             jpeg_start_decompress
        - Src:             'src/common/turbojpeg.c:825,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:834,3'
          Dst:             jpeg_read_scanlines
        - Src:             'src/common/turbojpeg.c:837,2'
          Dst:             jpeg_finish_decompress
        - Src:             'src/common/turbojpeg.c:844,39'
          Dst:             jpeg_abort_decompress
    - functionName:    putenv
      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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _setjmp
      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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_read_header
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setDecompDefaults
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          106
      EdgeCount:       33
      CyclomaticComplexity: 18
      functionsReached:
        - snprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/common/turbojpeg.c:210,2'
          Branch Sides:    []
      Callsites:
        - Src:             'src/common/turbojpeg.c:251,4'
          Dst:             snprintf
    - functionName:    jpeg_start_decompress
      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:    jpeg_read_scanlines
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_finish_decompress
      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:    jpeg_abort_decompress
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tjGetScalingFactors
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 735
      functionLinenumberEnd: 745
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:738,3'
          Dst:             snprintf
    - functionName:    tjDecompressHeader
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 727
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tjDecompressHeader2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:729,9'
          Dst:             tjDecompressHeader2
    - functionName:    tjDecompressHeader2
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 723
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          183
      EdgeCount:       40
      CyclomaticComplexity: 13
      functionsReached:
        - _setjmp
        - getSubsamp
        - jpeg_abort_decompress
        - jpeg_read_header
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:692,2'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:694,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:698,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:700,5'
          Dst:             _setjmp
        - Src:             'src/common/turbojpeg.c:708,2'
          Dst:             jpeg_read_header
        - Src:             'src/common/turbojpeg.c:712,15'
          Dst:             getSubsamp
        - Src:             'src/common/turbojpeg.c:714,2'
          Dst:             jpeg_abort_decompress
        - Src:             'src/common/turbojpeg.c:717,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:719,3'
          Dst:             snprintf
    - functionName:    getSubsamp
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          154
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _tjInitDecompress
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 647
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          96
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _setjmp
        - jpeg_CreateDecompress
        - jpeg_std_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:649,18'
          Dst:             jpeg_std_error
        - Src:             'src/common/turbojpeg.c:653,5'
          Dst:             _setjmp
        - Src:             'src/common/turbojpeg.c:660,2'
          Dst:             jpeg_CreateDecompress
    - functionName:    jpeg_std_error
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    my_error_exit
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - longjmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:72,2'
          Dst:             longjmp
    - functionName:    jpeg_CreateDecompress
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_resync_to_restart
      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:    longjmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tjInitDecompress
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 673
      functionLinenumberEnd: 683
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _tjInitDecompress
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:677,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:682,9'
          Dst:             _tjInitDecompress
    - functionName:    tjCompress
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 624
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getPixelFormat
        - tjCompress2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:621,3'
          Dst:             getPixelFormat
        - Src:             'src/common/turbojpeg.c:620,9'
          Dst:             tjCompress2
    - functionName:    tjCompress2
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 542
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          421
      EdgeCount:       94
      CyclomaticComplexity: 28
      functionsReached:
        - _setjmp
        - jpeg_abort_compress
        - jpeg_finish_compress
        - jpeg_start_compress
        - jpeg_write_scanlines
        - putenv
        - setCompDefaults
        - snprintf
        - tjBufSize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:548,2'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:550,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:555,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:557,5'
          Dst:             _setjmp
        - Src:             'src/common/turbojpeg.c:579,28'
          Dst:             putenv
        - Src:             'src/common/turbojpeg.c:580,33'
          Dst:             putenv
        - Src:             'src/common/turbojpeg.c:581,34'
          Dst:             putenv
        - Src:             'src/common/turbojpeg.c:583,5'
          Dst:             setCompDefaults
        - Src:             'src/common/turbojpeg.c:587,28'
          Dst:             tjBufSize
        - Src:             'src/common/turbojpeg.c:589,2'
          Dst:             jpeg_start_compress
        - Src:             'src/common/turbojpeg.c:591,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:599,3'
          Dst:             jpeg_write_scanlines
        - Src:             'src/common/turbojpeg.c:602,2'
          Dst:             jpeg_finish_compress
        - Src:             'src/common/turbojpeg.c:603,13'
          Dst:             tjBufSize
        - Src:             'src/common/turbojpeg.c:607,39'
          Dst:             jpeg_abort_compress
    - functionName:    setCompDefaults
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          200
      EdgeCount:       31
      CyclomaticComplexity: 4
      functionsReached:
        - jpeg_set_colorspace
        - jpeg_set_defaults
        - jpeg_set_quality
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/common/turbojpeg.c:145,2'
          Branch Sides:    []
      Callsites:
        - Src:             'src/common/turbojpeg.c:183,2'
          Dst:             jpeg_set_defaults
        - Src:             'src/common/turbojpeg.c:186,3'
          Dst:             jpeg_set_quality
        - Src:             'src/common/turbojpeg.c:191,3'
          Dst:             jpeg_set_colorspace
        - Src:             'src/common/turbojpeg.c:193,3'
          Dst:             jpeg_set_colorspace
    - functionName:    tjBufSize
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 501
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          110
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - snprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:504,3'
          Dst:             snprintf
    - functionName:    jpeg_start_compress
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_write_scanlines
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_finish_compress
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_abort_compress
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_set_defaults
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_set_quality
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_set_colorspace
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    TJBUFSIZE
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 535
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - snprintf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:525,3'
          Dst:             snprintf
    - functionName:    _tjInitCompress
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 483
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          88
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _setjmp
        - jpeg_CreateCompress
        - jpeg_std_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:464,18'
          Dst:             jpeg_std_error
        - Src:             'src/common/turbojpeg.c:468,5'
          Dst:             _setjmp
        - Src:             'src/common/turbojpeg.c:475,2'
          Dst:             jpeg_CreateCompress
    - functionName:    jpeg_CreateCompress
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tjInitCompress
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 486
      functionLinenumberEnd: 496
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _tjInitCompress
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:490,3'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:495,9'
          Dst:             _tjInitCompress
    - functionName:    tjDestroy
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          90
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - _setjmp
        - jpeg_destroy_compress
        - jpeg_destroy_decompress
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/turbojpeg.c:440,2'
          Dst:             snprintf
        - Src:             'src/common/turbojpeg.c:441,5'
          Dst:             _setjmp
        - Src:             'src/common/turbojpeg.c:442,26'
          Dst:             jpeg_destroy_compress
        - Src:             'src/common/turbojpeg.c:443,28'
          Dst:             jpeg_destroy_decompress
    - functionName:    jpeg_destroy_compress
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_destroy_decompress
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tjGetErrorStr
      functionSourceFile: '/src/libvncserver/src/common/turbojpeg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ws_read
      functionSourceFile: '/src/libvncserver/src/libvncserver/websockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - read
        - rfbssl_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/websockets.c:351,13'
          Dst:             rfbssl_read
        - Src:             'src/libvncserver/websockets.c:353,13'
          Dst:             read
    - functionName:    webSocketsGenSha1Key
      functionSourceFile: '/src/libvncserver/src/libvncserver/websockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __b64_ntop
        - hash_sha1
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/websockets.c:104,14'
          Dst:             strlen
        - Src:             'src/libvncserver/websockets.c:105,22'
          Dst:             strlen
        - Src:             'src/libvncserver/websockets.c:106,18'
          Dst:             strlen
        - Src:             'src/libvncserver/websockets.c:107,5'
          Dst:             hash_sha1
        - Src:             'src/libvncserver/websockets.c:108,15'
          Dst:             __b64_ntop
    - functionName:    min
      functionSourceFile: '/src/libvncserver/src/libvncserver/websockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    webSocketsHasDataInBuffer
      functionSourceFile: '/src/libvncserver/src/libvncserver/websockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 457
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - rfbssl_pending
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/websockets.c:463,27'
          Dst:             rfbssl_pending
    - functionName:    webSocketCheckDisconnect
      functionSourceFile: '/src/libvncserver/src/libvncserver/websockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    webSocketsDecode
      functionSourceFile: '/src/libvncserver/src/libvncserver/websockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 435
      functionLinenumberEnd: 438
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - webSocketsDecodeHybi
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/websockets.c:438,12'
          Dst:             webSocketsDecodeHybi
    - functionName:    webSocketsEncodeHybi
      functionSourceFile: '/src/libvncserver/src/libvncserver/websockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          222
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - __b64_ntop
        - __bswap_16
        - __bswap_64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/websockets.c:401,27'
          Dst:             __bswap_16
        - Src:             'src/libvncserver/websockets.c:405,27'
          Dst:             __bswap_64
        - Src:             'src/libvncserver/websockets.c:410,26'
          Dst:             __b64_ntop
    - functionName:    webSocketsEncode
      functionSourceFile: '/src/libvncserver/src/libvncserver/websockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - webSocketsEncodeHybi
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/websockets.c:430,12'
          Dst:             webSocketsEncodeHybi
    - functionName:    webSocketsHandshake
      functionSourceFile: '/src/libvncserver/src/libvncserver/websockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         114
      ICount:          732
      EdgeCount:       155
      CyclomaticComplexity: 43
      functionsReached:
        - __errno_location
        - calloc
        - hybiDecodeCleanupComplete
        - min
        - rfbLogPerror
        - rfbReadExact
        - rfbReadExactTimeout
        - rfbWriteExact
        - snprintf
        - strdup
        - strlen
        - strncasecmp
        - strncmp
        - strstr
        - strtol
        - webSocketsGenSha1Key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/websockets.c:175,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/websockets.c:181,9'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/websockets.c:186,18'
          Dst:             rfbReadExactTimeout
        - Src:             'src/libvncserver/websockets.c:188,29'
          Dst:             __errno_location
        - Src:             'src/libvncserver/websockets.c:195,17'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/websockets.c:207,33'
          Dst:             strncmp
        - Src:             'src/libvncserver/websockets.c:209,30'
          Dst:             rfbReadExact
        - Src:             'src/libvncserver/websockets.c:210,41'
          Dst:             __errno_location
        - Src:             'src/libvncserver/websockets.c:216,29'
          Dst:             rfbLogPerror
        - Src:             'src/libvncserver/websockets.c:226,64'
          Dst:             min
        - Src:             'src/libvncserver/websockets.c:226,42'
          Dst:             strncmp
        - Src:             'src/libvncserver/websockets.c:230,30'
          Dst:             strdup
        - Src:             'src/libvncserver/websockets.c:232,53'
          Dst:             min
        - Src:             'src/libvncserver/websockets.c:232,25'
          Dst:             strncasecmp
        - Src:             'src/libvncserver/websockets.c:236,55'
          Dst:             min
        - Src:             'src/libvncserver/websockets.c:236,25'
          Dst:             strncasecmp
        - Src:             'src/libvncserver/websockets.c:240,67'
          Dst:             min
        - Src:             'src/libvncserver/websockets.c:240,25'
          Dst:             strncasecmp
        - Src:             'src/libvncserver/websockets.c:244,67'
          Dst:             min
        - Src:             'src/libvncserver/websockets.c:244,25'
          Dst:             strncasecmp
        - Src:             'src/libvncserver/websockets.c:250,71'
          Dst:             min
        - Src:             'src/libvncserver/websockets.c:250,25'
          Dst:             strncasecmp
        - Src:             'src/libvncserver/websockets.c:254,69'
          Dst:             min
        - Src:             'src/libvncserver/websockets.c:254,25'
          Dst:             strncasecmp
        - Src:             'src/libvncserver/websockets.c:257,66'
          Dst:             min
        - Src:             'src/libvncserver/websockets.c:257,25'
          Dst:             strncasecmp
        - Src:             'src/libvncserver/websockets.c:260,70'
          Dst:             min
        - Src:             'src/libvncserver/websockets.c:260,25'
          Dst:             strncasecmp
        - Src:             'src/libvncserver/websockets.c:261,34'
          Dst:             strtol
        - Src:             'src/libvncserver/websockets.c:292,24'
          Dst:             strstr
        - Src:             'src/libvncserver/websockets.c:298,28'
          Dst:             strstr
        - Src:             'src/libvncserver/websockets.c:311,5'
          Dst:             webSocketsGenSha1Key
        - Src:             'src/libvncserver/websockets.c:313,8'
          Dst:             strlen
        - Src:             'src/libvncserver/websockets.c:314,15'
          Dst:             snprintf
        - Src:             'src/libvncserver/websockets.c:317,15'
          Dst:             snprintf
        - Src:             'src/libvncserver/websockets.c:321,9'
          Dst:             rfbWriteExact
        - Src:             'src/libvncserver/websockets.c:331,13'
          Dst:             calloc
        - Src:             'src/libvncserver/websockets.c:340,5'
          Dst:             hybiDecodeCleanupComplete
    - functionName:    strncasecmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strtol
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    webSocketsCheck
      functionSourceFile: '/src/libvncserver/src/libvncserver/websockets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          162
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - rfbPeekExactTimeout
        - rfbssl_init
        - strncmp
        - webSocketsHandshake
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/websockets.c:122,11'
          Dst:             rfbPeekExactTimeout
        - Src:             'src/libvncserver/websockets.c:124,23'
          Dst:             __errno_location
        - Src:             'src/libvncserver/websockets.c:132,9'
          Dst:             strncmp
        - Src:             'src/libvncserver/websockets.c:135,16'
          Dst:             strncmp
        - Src:             'src/libvncserver/websockets.c:135,49'
          Dst:             strncmp
        - Src:             'src/libvncserver/websockets.c:137,19'
          Dst:             rfbssl_init
        - Src:             'src/libvncserver/websockets.c:141,8'
          Dst:             rfbPeekExactTimeout
        - Src:             'src/libvncserver/websockets.c:147,9'
          Dst:             strncmp
        - Src:             'src/libvncserver/websockets.c:154,10'
          Dst:             webSocketsHandshake
    - functionName:    hybiPayloadStart
      functionSourceFile: '/src/libvncserver/src/libvncserver/ws_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hybiWsFrameComplete
      functionSourceFile: '/src/libvncserver/src/libvncserver/ws_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hybiRemaining
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/ws_decode.c:308,27'
          Dst:             hybiRemaining
    - functionName:    hybiRemaining
      functionSourceFile: '/src/libvncserver/src/libvncserver/ws_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hybiDecodeCleanupForContinuation
      functionSourceFile: '/src/libvncserver/src/libvncserver/ws_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hybiDecodeCleanupBasics
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/ws_decode.c:56,3'
          Dst:             hybiDecodeCleanupBasics
    - functionName:    hybiDecodeCleanupBasics
      functionSourceFile: '/src/libvncserver/src/libvncserver/ws_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          51
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    isControlFrame
      functionSourceFile: '/src/libvncserver/src/libvncserver/ws_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hybiReturnData
      functionSourceFile: '/src/libvncserver/src/libvncserver/ws_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          112
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - hybiRemaining
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/ws_decode.c:100,11'
          Dst:             hybiRemaining
        - Src:             'src/libvncserver/ws_decode.c:111,5'
          Dst:             __errno_location
    - functionName:    hybiReadAndDecode
      functionSourceFile: '/src/libvncserver/src/libvncserver/ws_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          498
      EdgeCount:       59
      CyclomaticComplexity: 14
      functionsReached:
        - __b64_pton
        - __errno_location
        - hybiPayloadStart
        - hybiRemaining
        - hybiReturnData
        - hybiWsFrameComplete
        - strerror
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/libvncserver/ws_decode.c:442,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/ws_decode.c:362,7'
          Dst:             hybiRemaining
        - Src:             'src/libvncserver/ws_decode.c:365,16'
          Dst:             hybiRemaining
        - Src:             'src/libvncserver/ws_decode.c:373,22'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:374,49'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:374,40'
          Dst:             strerror
        - Src:             'src/libvncserver/ws_decode.c:375,7'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:391,7'
          Dst:             hybiRemaining
        - Src:             'src/libvncserver/ws_decode.c:401,5'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:432,7'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:445,11'
          Dst:             hybiWsFrameComplete
        - Src:             'src/libvncserver/ws_decode.c:448,9'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:454,9'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:461,35'
          Dst:             __b64_pton
        - Src:             'src/libvncserver/ws_decode.c:462,68'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:462,59'
          Dst:             strerror
        - Src:             'src/libvncserver/ws_decode.c:464,25'
          Dst:             hybiPayloadStart
        - Src:             'src/libvncserver/ws_decode.c:468,25'
          Dst:             hybiPayloadStart
        - Src:             'src/libvncserver/ws_decode.c:476,10'
          Dst:             hybiReturnData
    - functionName:    hybiReadHeader
      functionSourceFile: '/src/libvncserver/src/libvncserver/ws_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         77
      ICount:          692
      EdgeCount:       103
      CyclomaticComplexity: 28
      functionsReached:
        - __bswap_16
        - __bswap_64
        - __errno_location
        - hybiDecodeCleanupComplete
        - isControlFrame
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/ws_decode.c:143,22'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:144,51'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:144,42'
          Dst:             strerror
        - Src:             'src/libvncserver/ws_decode.c:145,7'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:164,7'
          Dst:             isControlFrame
        - Src:             'src/libvncserver/ws_decode.c:175,7'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:186,9'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:214,5'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:230,24'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:231,53'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:231,44'
          Dst:             strerror
        - Src:             'src/libvncserver/ws_decode.c:232,9'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:249,32'
          Dst:             __bswap_16
        - Src:             'src/libvncserver/ws_decode.c:253,32'
          Dst:             __bswap_64
        - Src:             'src/libvncserver/ws_decode.c:276,5'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:294,3'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:301,3'
          Dst:             hybiDecodeCleanupComplete
    - functionName:    hybiDecodeCleanupComplete
      functionSourceFile: '/src/libvncserver/src/libvncserver/ws_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hybiDecodeCleanupBasics
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/libvncserver/ws_decode.c:63,3'
          Dst:             hybiDecodeCleanupBasics
    - functionName:    webSocketsDecodeHybi
      functionSourceFile: '/src/libvncserver/src/libvncserver/ws_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          164
      EdgeCount:       33
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - hybiDecodeCleanupComplete
        - hybiDecodeCleanupForContinuation
        - hybiReadAndDecode
        - hybiReadHeader
        - hybiReturnData
        - isControlFrame
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/libvncserver/ws_decode.c:527,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/libvncserver/ws_decode.c:530,34'
          Dst:             hybiReadHeader
        - Src:             'src/libvncserver/ws_decode.c:537,36'
          Dst:             hybiReadAndDecode
        - Src:             'src/libvncserver/ws_decode.c:541,34'
          Dst:             hybiReturnData
        - Src:             'src/libvncserver/ws_decode.c:545,34'
          Dst:             hybiReadAndDecode
        - Src:             'src/libvncserver/ws_decode.c:551,9'
          Dst:             __errno_location
        - Src:             'src/libvncserver/ws_decode.c:559,33'
          Dst:             isControlFrame
        - Src:             'src/libvncserver/ws_decode.c:561,9'
          Dst:             hybiDecodeCleanupComplete
        - Src:             'src/libvncserver/ws_decode.c:565,9'
          Dst:             hybiDecodeCleanupForContinuation
        - Src:             'src/libvncserver/ws_decode.c:568,7'
          Dst:             hybiDecodeCleanupComplete
    - functionName:    __b64_pton
      functionSourceFile: '/src/libvncserver/src/common/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         85
      ICount:          476
      EdgeCount:       109
      CyclomaticComplexity: 26
      functionsReached:
        - __ctype_b_loc
        - strchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/common/base64.c:213,3'
          Branch Sides:    []
        - Branch String:   'src/common/base64.c:269,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/common/base64.c:203,7'
          Dst:             __ctype_b_loc
        - Src:             'src/common/base64.c:209,9'
          Dst:             strchr
        - Src:             'src/common/base64.c:277,10'
          Dst:             __ctype_b_loc
        - Src:             'src/common/base64.c:292,10'
          Dst:             __ctype_b_loc
    - functionName:    __b64_ntop
      functionSourceFile: '/src/libvncserver/src/common/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          304
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
...
