---
Fuzzer filename: '/src/jpegoptim/fuzz/fuzz_compression.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/jpegoptim/fuzz/fuzz_compression.c'
      linkageType:     externalLinkage
      functionLinenumber: 6
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - fclose
        - fopen
        - fuzz_manager_init
        - fwrite
        - lstat
        - optimize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz/fuzz_compression.c:10,3'
          Dst:             fuzz_manager_init
        - Src:             'fuzz/fuzz_compression.c:12,12'
          Dst:             lstat
        - Src:             'fuzz/fuzz_compression.c:18,21'
          Dst:             fopen
        - Src:             'fuzz/fuzz_compression.c:24,15'
          Dst:             fwrite
        - Src:             'fuzz/fuzz_compression.c:27,3'
          Dst:             fclose
        - Src:             'fuzz/fuzz_compression.c:29,3'
          Dst:             optimize
    - functionName:    lstat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fwrite
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      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:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_manager_init
      functionSourceFile: '/src/jpegoptim/fuzz/fuzz_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dirname
        - fopen
        - fuzz_set_target_size
        - generate_temp_file_name
        - strncpy
        - strnlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz/fuzz_manager.c:29,3'
          Dst:             fuzz_set_target_size
        - Src:             'fuzz/fuzz_manager.c:32,25'
          Dst:             fopen
        - Src:             'fuzz/fuzz_manager.c:34,3'
          Dst:             generate_temp_file_name
        - Src:             'fuzz/fuzz_manager.c:35,3'
          Dst:             generate_temp_file_name
        - Src:             'fuzz/fuzz_manager.c:37,3'
          Dst:             strncpy
        - Src:             'fuzz/fuzz_manager.c:38,3'
          Dst:             dirname
        - Src:             'fuzz/fuzz_manager.c:40,20'
          Dst:             strnlen
    - functionName:    generate_temp_file_name
      functionSourceFile: '/src/jpegoptim/fuzz/fuzz_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11
      functionLinenumberEnd: 20
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          36
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - close
        - exit
        - mkstemp
        - perror
        - strncpy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz/fuzz_manager.c:13,3'
          Dst:             strncpy
        - Src:             'fuzz/fuzz_manager.c:14,19'
          Dst:             mkstemp
        - Src:             'fuzz/fuzz_manager.c:16,5'
          Dst:             perror
        - Src:             'fuzz/fuzz_manager.c:17,5'
          Dst:             exit
        - Src:             'fuzz/fuzz_manager.c:19,3'
          Dst:             close
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dirname
      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:    strnlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mkstemp
      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:    perror
      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:    exit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_set_target_size
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1558
      functionLinenumberEnd: 1560
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    wait_for_worker
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1260
      functionLinenumberEnd: 1341
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         64
      ICount:          331
      EdgeCount:       85
      CyclomaticComplexity: 23
      functionsReached:
        - __isoc99_sscanf
        - close
        - fatal
        - fdopen
        - fgets
        - fprintf
        - strncmp
        - wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegoptim.c:1273,13'
          Dst:             wait
        - Src:             'jpegoptim.c:1284,3'
          Dst:             fatal
        - Src:             'jpegoptim.c:1289,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1301,3'
          Dst:             fatal
        - Src:             'jpegoptim.c:1304,6'
          Dst:             fdopen
        - Src:             'jpegoptim.c:1305,10'
          Dst:             fatal
        - Src:             'jpegoptim.c:1306,9'
          Dst:             fgets
        - Src:             'jpegoptim.c:1308,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1313,22'
          Dst:             strncmp
        - Src:             'jpegoptim.c:1318,8'
          Dst:             __isoc99_sscanf
        - Src:             'jpegoptim.c:1333,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1335,2'
          Dst:             close
    - functionName:    wait
      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:    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:    46
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fdopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fgets
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strncmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - 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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    my_output_message
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fprintf
        - strncopy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegoptim.c:235,3'
          Dst:             fprintf
        - Src:             'jpegoptim.c:238,2'
          Dst:             strncopy
    - functionName:    my_error_exit
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached:
        - fatal
        - longjmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegoptim.c:221,3'
          Dst:             longjmp
        - Src:             'jpegoptim.c:223,3'
          Dst:             fatal
    - 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:    optimize
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 1254
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         554
      ICount:          2733
      EdgeCount:       742
      CyclomaticComplexity: 190
      functionsReached:
        - _setjmp
        - calloc
        - chmod
        - chown
        - copy_file
        - create_file
        - create_temp_file
        - delete_file
        - fatal
        - fclose
        - fflush
        - file_exists
        - file_size
        - fopen
        - fprintf
        - fread
        - free_line_buf
        - fseek
        - fwrite
        - geteuid
        - jpeg_CreateCompress
        - jpeg_CreateDecompress
        - jpeg_abort_compress
        - jpeg_abort_decompress
        - jpeg_c_int_param_supported
        - jpeg_c_set_int_param
        - jpeg_copy_critical_parameters
        - jpeg_custom_mem_src
        - jpeg_custom_src
        - jpeg_destroy_compress
        - jpeg_destroy_decompress
        - jpeg_finish_compress
        - jpeg_finish_decompress
        - jpeg_memory_dest
        - jpeg_read_coefficients
        - jpeg_read_header
        - jpeg_read_scanlines
        - jpeg_save_markers
        - jpeg_set_defaults
        - jpeg_set_quality
        - jpeg_simple_progression
        - jpeg_start_compress
        - jpeg_start_decompress
        - jpeg_std_error
        - jpeg_write_coefficients
        - jpeg_write_scanlines
        - parse_markers
        - rename_file
        - snprintf
        - utimensat
        - warn
        - write_markers
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegoptim.c:671,14'
          Dst:             jpeg_std_error
        - Src:             'jpegoptim.c:672,2'
          Dst:             jpeg_CreateDecompress
        - Src:             'jpegoptim.c:678,14'
          Dst:             jpeg_std_error
        - Src:             'jpegoptim.c:679,2'
          Dst:             jpeg_CreateCompress
        - Src:             'jpegoptim.c:690,17'
          Dst:             fopen
        - Src:             'jpegoptim.c:691,4'
          Dst:             warn
        - Src:             'jpegoptim.c:702,6'
          Dst:             _setjmp
        - Src:             'jpegoptim.c:705,3'
          Dst:             jpeg_abort_decompress
        - Src:             'jpegoptim.c:706,3'
          Dst:             fclose
        - Src:             'jpegoptim.c:707,3'
          Dst:             free_line_buf
        - Src:             'jpegoptim.c:709,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:721,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:722,4'
          Dst:             fflush
        - Src:             'jpegoptim.c:728,24'
          Dst:             file_size
        - Src:             'jpegoptim.c:733,18'
          Dst:             calloc
        - Src:             'jpegoptim.c:734,4'
          Dst:             fatal
        - Src:             'jpegoptim.c:737,2'
          Dst:             jpeg_save_markers
        - Src:             'jpegoptim.c:739,3'
          Dst:             jpeg_save_markers
        - Src:             'jpegoptim.c:742,3'
          Dst:             jpeg_custom_src
        - Src:             'jpegoptim.c:745,4'
          Dst:             jpeg_custom_mem_src
        - Src:             'jpegoptim.c:747,4'
          Dst:             jpeg_custom_mem_src
        - Src:             'jpegoptim.c:749,2'
          Dst:             jpeg_read_header
        - Src:             'jpegoptim.c:753,20'
          Dst:             parse_markers
        - Src:             'jpegoptim.c:758,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:760,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:764,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:768,5'
          Dst:             fprintf
        - Src:             'jpegoptim.c:769,4'
          Dst:             fflush
        - Src:             'jpegoptim.c:775,3'
          Dst:             jpeg_start_decompress
        - Src:             'jpegoptim.c:778,15'
          Dst:             calloc
        - Src:             'jpegoptim.c:779,4'
          Dst:             fatal
        - Src:             'jpegoptim.c:781,17'
          Dst:             calloc
        - Src:             'jpegoptim.c:783,5'
          Dst:             fatal
        - Src:             'jpegoptim.c:787,4'
          Dst:             jpeg_read_scanlines
        - Src:             'jpegoptim.c:791,17'
          Dst:             jpeg_read_coefficients
        - Src:             'jpegoptim.c:794,5'
          Dst:             fprintf
        - Src:             'jpegoptim.c:801,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:806,18'
          Dst:             file_size
        - Src:             'jpegoptim.c:807,5'
          Dst:             fatal
        - Src:             'jpegoptim.c:810,6'
          Dst:             fprintf
        - Src:             'jpegoptim.c:818,26'
          Dst:             calloc
        - Src:             'jpegoptim.c:819,7'
          Dst:             fatal
        - Src:             'jpegoptim.c:820,10'
          Dst:             fseek
        - Src:             'jpegoptim.c:821,7'
          Dst:             fatal
        - Src:             'jpegoptim.c:822,10'
          Dst:             fread
        - Src:             'jpegoptim.c:823,7'
          Dst:             fatal
        - Src:             'jpegoptim.c:828,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:829,4'
          Dst:             fflush
        - Src:             'jpegoptim.c:838,8'
          Dst:             file_exists
        - Src:             'jpegoptim.c:840,6'
          Dst:             fprintf
        - Src:             'jpegoptim.c:848,6'
          Dst:             _setjmp
        - Src:             'jpegoptim.c:851,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:852,3'
          Dst:             jpeg_abort_compress
        - Src:             'jpegoptim.c:853,3'
          Dst:             jpeg_abort_decompress
        - Src:             'jpegoptim.c:854,3'
          Dst:             fclose
        - Src:             'jpegoptim.c:855,3'
          Dst:             free_line_buf
        - Src:             'jpegoptim.c:880,18'
          Dst:             calloc
        - Src:             'jpegoptim.c:881,3'
          Dst:             fatal
        - Src:             'jpegoptim.c:884,2'
          Dst:             jpeg_memory_dest
        - Src:             'jpegoptim.c:894,3'
          Dst:             jpeg_set_defaults
        - Src:             'jpegoptim.c:895,3'
          Dst:             jpeg_set_quality
        - Src:             'jpegoptim.c:897,7'
          Dst:             jpeg_c_int_param_supported
        - Src:             'jpegoptim.c:898,4'
          Dst:             jpeg_c_set_int_param
        - Src:             'jpegoptim.c:906,4'
          Dst:             jpeg_simple_progression
        - Src:             'jpegoptim.c:923,3'
          Dst:             jpeg_start_compress
        - Src:             'jpegoptim.c:926,3'
          Dst:             write_markers
        - Src:             'jpegoptim.c:930,4'
          Dst:             jpeg_write_scanlines
        - Src:             'jpegoptim.c:937,3'
          Dst:             jpeg_copy_critical_parameters
        - Src:             'jpegoptim.c:939,7'
          Dst:             jpeg_c_int_param_supported
        - Src:             'jpegoptim.c:940,4'
          Dst:             jpeg_c_set_int_param
        - Src:             'jpegoptim.c:948,4'
          Dst:             jpeg_simple_progression
        - Src:             'jpegoptim.c:966,3'
          Dst:             jpeg_write_coefficients
        - Src:             'jpegoptim.c:969,3'
          Dst:             write_markers
        - Src:             'jpegoptim.c:973,2'
          Dst:             jpeg_finish_compress
        - Src:             'jpegoptim.c:976,3'
          Dst:             fprintf
        - Src:             'jpegoptim.c:986,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:997,7'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1004,5'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1030,5'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1035,2'
          Dst:             jpeg_finish_decompress
        - Src:             'jpegoptim.c:1036,2'
          Dst:             free_line_buf
        - Src:             'jpegoptim.c:1053,6'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1059,5'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1087,5'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1091,5'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1095,6'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1112,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1116,2'
          Dst:             fclose
        - Src:             'jpegoptim.c:1120,3'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1130,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1139,8'
          Dst:             fwrite
        - Src:             'jpegoptim.c:1140,5'
          Dst:             fatal
        - Src:             'jpegoptim.c:1144,18'
          Dst:             snprintf
        - Src:             'jpegoptim.c:1147,6'
          Dst:             fatal
        - Src:             'jpegoptim.c:1150,6'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1152,9'
          Dst:             file_exists
        - Src:             'jpegoptim.c:1153,6'
          Dst:             fatal
        - Src:             'jpegoptim.c:1155,9'
          Dst:             copy_file
        - Src:             'jpegoptim.c:1156,6'
          Dst:             fatal
        - Src:             'jpegoptim.c:1158,18'
          Dst:             create_file
        - Src:             'jpegoptim.c:1159,6'
          Dst:             fatal
        - Src:             'jpegoptim.c:1163,21'
          Dst:             create_temp_file
        - Src:             'jpegoptim.c:1164,6'
          Dst:             fatal
        - Src:             'jpegoptim.c:1169,5'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1171,8'
          Dst:             fwrite
        - Src:             'jpegoptim.c:1172,5'
          Dst:             fatal
        - Src:             'jpegoptim.c:1175,6'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1176,9'
          Dst:             fwrite
        - Src:             'jpegoptim.c:1177,6'
          Dst:             fatal
        - Src:             'jpegoptim.c:1179,4'
          Dst:             fclose
        - Src:             'jpegoptim.c:1186,6'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1193,9'
          Dst:             utimensat
        - Src:             'jpegoptim.c:1194,6'
          Dst:             warn
        - Src:             'jpegoptim.c:1207,6'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1208,9'
          Dst:             delete_file
        - Src:             'jpegoptim.c:1209,6'
          Dst:             warn
        - Src:             'jpegoptim.c:1214,9'
          Dst:             chmod
        - Src:             'jpegoptim.c:1215,6'
          Dst:             warn
        - Src:             'jpegoptim.c:1219,8'
          Dst:             geteuid
        - Src:             'jpegoptim.c:1218,9'
          Dst:             chown
        - Src:             'jpegoptim.c:1221,6'
          Dst:             warn
        - Src:             'jpegoptim.c:1224,6'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1225,9'
          Dst:             rename_file
        - Src:             'jpegoptim.c:1226,6'
          Dst:             fatal
        - Src:             'jpegoptim.c:1231,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:1234,8'
          Dst:             fwrite
        - Src:             'jpegoptim.c:1235,5'
          Dst:             fatal
        - Src:             'jpegoptim.c:1251,2'
          Dst:             jpeg_destroy_compress
        - Src:             'jpegoptim.c:1252,2'
          Dst:             jpeg_destroy_decompress
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - 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_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:    _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:    2
      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:    free_line_buf
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    calloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_save_markers
      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:    2
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_markers
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 592
      functionLinenumberEnd: 627
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          148
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - calloc
        - fatal
        - jpeg_special_marker
        - jpeg_special_marker_types_count
        - str_add_list
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegoptim.c:596,24'
          Dst:             jpeg_special_marker_types_count
        - Src:             'jpegoptim.c:600,14'
          Dst:             calloc
        - Src:             'jpegoptim.c:601,3'
          Dst:             fatal
        - Src:             'jpegoptim.c:611,18'
          Dst:             jpeg_special_marker
        - Src:             'jpegoptim.c:613,5'
          Dst:             str_add_list
        - Src:             'jpegoptim.c:618,4'
          Dst:             str_add_list
    - 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_read_coefficients
      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:    fseek
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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:    3
      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_c_int_param_supported
      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:    jpeg_c_set_int_param
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_simple_progression
      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:    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:    write_markers
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 533
      functionLinenumberEnd: 587
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         59
      ICount:          306
      EdgeCount:       80
      CyclomaticComplexity: 23
      functionsReached:
        - fatal
        - fprintf
        - jpeg_marker_name
        - jpeg_special_marker_name
        - jpeg_write_marker
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegoptim.c:539,3'
          Dst:             fatal
        - Src:             'jpegoptim.c:544,12'
          Dst:             jpeg_special_marker_name
        - Src:             'jpegoptim.c:551,21'
          Dst:             strncmp
        - Src:             'jpegoptim.c:554,21'
          Dst:             strncmp
        - Src:             'jpegoptim.c:557,20'
          Dst:             strncmp
        - Src:             'jpegoptim.c:560,20'
          Dst:             strncmp
        - Src:             'jpegoptim.c:563,21'
          Dst:             strncmp
        - Src:             'jpegoptim.c:566,22'
          Dst:             strncmp
        - Src:             'jpegoptim.c:575,8'
          Dst:             strncmp
        - Src:             'jpegoptim.c:580,50'
          Dst:             jpeg_marker_name
        - Src:             'jpegoptim.c:580,4'
          Dst:             fprintf
        - Src:             'jpegoptim.c:583,4'
          Dst:             jpeg_write_marker
    - 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_copy_critical_parameters
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_write_coefficients
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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_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:    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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utimensat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chmod
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    geteuid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chown
      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:    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:    jpeg_write_marker
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      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:    own_signal_handler
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - exit
        - fprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegoptim.c:526,3'
          Dst:             fprintf
        - Src:             'jpegoptim.c:527,2'
          Dst:             exit
    - functionName:    parse_arguments
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         118
      ICount:          547
      EdgeCount:       147
      CyclomaticComplexity: 31
      functionsReached:
        - __isoc99_sscanf
        - exit
        - fatal
        - fopen
        - fprintf
        - getopt_long
        - is_directory
        - is_file
        - print_usage
        - print_version
        - realpath
        - strlen
        - strncatenate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'jpegoptim.c:352,3'
          Branch Sides:    []
      Callsites:
        - Src:             'jpegoptim.c:348,12'
          Dst:             getopt_long
        - Src:             'jpegoptim.c:358,9'
          Dst:             __isoc99_sscanf
        - Src:             'jpegoptim.c:364,6'
          Dst:             fatal
        - Src:             'jpegoptim.c:369,8'
          Dst:             realpath
        - Src:             'jpegoptim.c:370,5'
          Dst:             fatal
        - Src:             'jpegoptim.c:371,9'
          Dst:             is_directory
        - Src:             'jpegoptim.c:372,5'
          Dst:             fatal
        - Src:             'jpegoptim.c:373,4'
          Dst:             strncatenate
        - Src:             'jpegoptim.c:375,5'
          Dst:             fprintf
        - Src:             'jpegoptim.c:384,4'
          Dst:             print_usage
        - Src:             'jpegoptim.c:385,4'
          Dst:             exit
        - Src:             'jpegoptim.c:414,4'
          Dst:             print_version
        - Src:             'jpegoptim.c:415,4'
          Dst:             exit
        - Src:             'jpegoptim.c:444,9'
          Dst:             __isoc99_sscanf
        - Src:             'jpegoptim.c:449,10'
          Dst:             fatal
        - Src:             'jpegoptim.c:456,9'
          Dst:             __isoc99_sscanf
        - Src:             'jpegoptim.c:458,14'
          Dst:             strlen
        - Src:             'jpegoptim.c:465,10'
          Dst:             fatal
        - Src:             'jpegoptim.c:473,9'
          Dst:             __isoc99_sscanf
        - Src:             'jpegoptim.c:477,10'
          Dst:             fatal
        - Src:             'jpegoptim.c:488,10'
          Dst:             is_file
        - Src:             'jpegoptim.c:489,6'
          Dst:             fatal
        - Src:             'jpegoptim.c:490,23'
          Dst:             fopen
        - Src:             'jpegoptim.c:491,6'
          Dst:             fatal
        - Src:             'jpegoptim.c:496,4'
          Dst:             exit
        - Src:             'jpegoptim.c:515,3'
          Dst:             fatal
        - Src:             'jpegoptim.c:517,3'
          Dst:             fatal
        - Src:             'jpegoptim.c:519,3'
          Dst:             fatal
    - functionName:    getopt_long
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    realpath
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    print_usage
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegoptim.c:244,2'
          Dst:             fprintf
        - Src:             'jpegoptim.c:246,2'
          Dst:             fprintf
    - functionName:    print_version
      functionSourceFile: '/src/jpegoptim/jpegoptim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fatal
        - jpeg_std_error
        - printf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegoptim.c:323,2'
          Dst:             printf
        - Src:             'jpegoptim.c:327,2'
          Dst:             printf
        - Src:             'jpegoptim.c:328,2'
          Dst:             printf
        - Src:             'jpegoptim.c:332,7'
          Dst:             jpeg_std_error
        - Src:             'jpegoptim.c:333,3'
          Dst:             fatal
        - Src:             'jpegoptim.c:335,2'
          Dst:             printf
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - 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:    custom_fill_mem_input_buffer
      functionSourceFile: '/src/jpegoptim/jpegsrc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    custom_init_mem_source
      functionSourceFile: '/src/jpegoptim/jpegsrc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_custom_mem_src
      functionSourceFile: '/src/jpegoptim/jpegsrc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          115
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    custom_skip_input_data
      functionSourceFile: '/src/jpegoptim/jpegsrc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    custom_term_source
      functionSourceFile: '/src/jpegoptim/jpegsrc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    custom_fill_input_buffer
      functionSourceFile: '/src/jpegoptim/jpegsrc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          236
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - fread
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegsrc.c:83,15'
          Dst:             fread
        - Src:             'jpegsrc.c:96,13'
          Dst:             realloc
    - functionName:    realloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    custom_init_source
      functionSourceFile: '/src/jpegoptim/jpegsrc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_custom_src
      functionSourceFile: '/src/jpegoptim/jpegsrc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          151
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_memory_term_destination
      functionSourceFile: '/src/jpegoptim/jpegdest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_memory_empty_output_buffer
      functionSourceFile: '/src/jpegoptim/jpegdest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          134
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegdest.c:74,11'
          Dst:             realloc
    - functionName:    jpeg_memory_init_destination
      functionSourceFile: '/src/jpegoptim/jpegdest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_memory_dest
      functionSourceFile: '/src/jpegoptim/jpegdest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          133
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - fatal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegdest.c:105,3'
          Dst:             fatal
        - Src:             'jpegdest.c:107,3'
          Dst:             fatal
    - functionName:    jpeg_special_marker_name
      functionSourceFile: '/src/jpegoptim/jpegmarker.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jpeg_special_marker
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegmarker.c:148,10'
          Dst:             jpeg_special_marker
    - functionName:    jpeg_special_marker
      functionSourceFile: '/src/jpegoptim/jpegmarker.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          110
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'jpegmarker.c:136,9'
          Dst:             memcmp
    - functionName:    memcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_special_marker_types_count
      functionSourceFile: '/src/jpegoptim/jpegmarker.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jpeg_marker_name
      functionSourceFile: '/src/jpegoptim/jpegmarker.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_add_list
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          77
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - strncatenate
        - strnlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:330,6'
          Dst:             strnlen
        - Src:             'misc.c:331,3'
          Dst:             strncatenate
        - Src:             'misc.c:333,9'
          Dst:             strncatenate
    - functionName:    strncatenate
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          80
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - strncat
        - strnlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:317,9'
          Dst:             strnlen
        - Src:             'misc.c:321,9'
          Dst:             strncat
    - functionName:    strncat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strncopy
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          69
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - strncpy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:302,3'
          Dst:             strncpy
    - functionName:    splitname
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          103
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - strlen
        - strrchr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:281,11'
          Dst:             strrchr
        - Src:             'misc.c:286,13'
          Dst:             strlen
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    splitdir
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          103
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - strrchr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:261,11'
          Dst:             strrchr
    - functionName:    fgetstr
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          109
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - fgets
        - strnlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:242,7'
          Dst:             fgets
        - Src:             'misc.c:245,10'
          Dst:             strnlen
    - functionName:    copy_file
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          152
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - calloc
        - create_file
        - fatal
        - fclose
        - feof
        - ferror
        - fopen
        - fread
        - fwrite
        - warn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:195,13'
          Dst:             fopen
        - Src:             'misc.c:196,3'
          Dst:             warn
        - Src:             'misc.c:199,14'
          Dst:             create_file
        - Src:             'misc.c:200,3'
          Dst:             fclose
        - Src:             'misc.c:201,3'
          Dst:             warn
        - Src:             'misc.c:205,14'
          Dst:             calloc
        - Src:             'misc.c:206,3'
          Dst:             fatal
        - Src:             'misc.c:210,7'
          Dst:             fread
        - Src:             'misc.c:212,8'
          Dst:             fwrite
        - Src:             'misc.c:215,5'
          Dst:             warn
        - Src:             'misc.c:219,8'
          Dst:             ferror
        - Src:             'misc.c:221,5'
          Dst:             warn
        - Src:             'misc.c:225,12'
          Dst:             feof
        - Src:             'misc.c:227,2'
          Dst:             fclose
        - Src:             'misc.c:228,2'
          Dst:             fclose
    - functionName:    warn
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     externalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fflush
        - fprintf
        - vfprintf
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:358,2'
          Dst:             fprintf
        - Src:             'misc.c:360,2'
          Dst:             vfprintf
        - Src:             'misc.c:362,2'
          Dst:             fprintf
        - Src:             'misc.c:363,2'
          Dst:             fflush
    - functionName:    create_file
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - close
        - fdopen
        - open
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:54,7'
          Dst:             open
        - Src:             'misc.c:58,12'
          Dst:             fdopen
        - Src:             'misc.c:59,3'
          Dst:             close
    - functionName:    fatal
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - exit
        - fflush
        - fprintf
        - vfprintf
      functionUses:    39
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:341,2'
          Dst:             fprintf
        - Src:             'misc.c:343,2'
          Dst:             vfprintf
        - Src:             'misc.c:345,2'
          Dst:             fprintf
        - Src:             'misc.c:346,2'
          Dst:             fflush
        - Src:             'misc.c:348,2'
          Dst:             exit
    - functionName:    ferror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    feof
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    open
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rename_file
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          41
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - rename
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:179,9'
          Dst:             rename
    - functionName:    rename
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file_exists
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stat
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:167,10'
          Dst:             stat
    - 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:    is_file
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - lstat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:151,6'
          Dst:             lstat
    - functionName:    is_directory
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - stat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:137,6'
          Dst:             stat
    - functionName:    file_size
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - fileno
        - fstat
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:123,12'
          Dst:             fileno
        - Src:             'misc.c:123,6'
          Dst:             fstat
    - 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:    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:    delete_file
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          74
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - fprintf
        - unlink
        - warn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:109,3'
          Dst:             fprintf
        - Src:             'misc.c:110,14'
          Dst:             unlink
        - Src:             'misc.c:111,3'
          Dst:             warn
    - 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:    create_temp_file
      functionSourceFile: '/src/jpegoptim/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - fdopen
        - getpid
        - getuid
        - mkstemps
        - snprintf
        - warn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:75,18'
          Dst:             getuid
        - Src:             'misc.c:75,28'
          Dst:             getpid
        - Src:             'misc.c:74,11'
          Dst:             snprintf
        - Src:             'misc.c:82,3'
          Dst:             warn
        - Src:             'misc.c:87,14'
          Dst:             mkstemps
        - Src:             'misc.c:89,3'
          Dst:             warn
        - Src:             'misc.c:92,6'
          Dst:             fdopen
    - functionName:    getuid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getpid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mkstemps
      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:       []
...
