All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6
      start: 5
    functionDepth: 0
    functionLinenumber: 5
    functionLinenumberEnd: 6
    functionName: ZIP_MIN
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_MIN(a, b)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fgets
      Src: /src/libzip/regress/programs/ziptool_regress.c:103,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 127
    functionName: get_stdin_commands
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - fgets
    linkageType: ''
    returnType: int
    signature: int get_stdin_commands(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/regress/programs/ziptool_regress.c:139,1
    - Dst: source_nul
      Src: /src/libzip/regress/programs/ziptool_regress.c:141,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:142,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:142,1
    - Dst: zip_file_add
      Src: /src/libzip/regress/programs/ziptool_regress.c:146,1
    - Dst: zip_source_free
      Src: /src/libzip/regress/programs/ziptool_regress.c:147,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:148,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 152
    functionName: add_nul
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - zip_file_add
    - strtoull
    - fprintf
    - zip_source_free
    - source_nul
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int add_nul(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - archive
    - ud
    argTypes:
    - zip_t*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 159
    functionName: cancel_callback
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int cancel_callback(zip_t *archive, void *ud)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoll
      Src: /src/libzip/regress/programs/ziptool_regress.c:163,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:165,1
    - Dst: zip_register_cancel_callback_with_state
      Src: /src/libzip/regress/programs/ziptool_regress.c:170,1
    - Dst: print_progress
      Src: /src/libzip/regress/programs/ziptool_regress.c:173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 175
    functionName: cancel
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - print_progress
    - zip_register_cancel_callback_with_state
    - strtoll
    - fprintf
    linkageType: ''
    returnType: int
    signature: int cancel(char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/regress/programs/ziptool_regress.c:182,1
    - Dst: fopen
      Src: /src/libzip/regress/programs/ziptool_regress.c:183,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:184,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:184,1
    - Dst: cat_impl_backend
      Src: /src/libzip/regress/programs/ziptool_regress.c:187,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/ziptool_regress.c:188,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:189,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:189,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 193
    functionName: extract_as
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - fopen
    - strtoull
    - fprintf
    - cat_impl_backend
    - fclose
    - strerror
    linkageType: ''
    returnType: int
    signature: int extract_as(char *argv[])
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/regress/programs/ziptool_regress.c:200,1
    - Dst: zip_fopen_index
      Src: /src/libzip/regress/programs/ziptool_regress.c:201,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:202,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:202,1
    - Dst: zip_file_is_seekable
      Src: /src/libzip/regress/programs/ziptool_regress.c:205,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:207,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:207,1
    - Dst: printf
      Src: /src/libzip/regress/programs/ziptool_regress.c:210,1
    - Dst: printf
      Src: /src/libzip/regress/programs/ziptool_regress.c:213,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 217
    functionName: is_seekable
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 1
    functionsReached:
    - zip_fopen_index
    - strtoull
    - fprintf
    - zip_file_is_seekable
    - zip_strerror
    - printf
    linkageType: ''
    returnType: int
    signature: int is_seekable(char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/regress/programs/ziptool_regress.c:225,1
    - Dst: strtoll
      Src: /src/libzip/regress/programs/ziptool_regress.c:226,1
    - Dst: get_whence
      Src: /src/libzip/regress/programs/ziptool_regress.c:227,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:229,1
    - Dst: zip_fseek
      Src: /src/libzip/regress/programs/ziptool_regress.c:234,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:235,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:235,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 239
    functionName: regress_fseek
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - zip_fseek
    - strtoull
    - fprintf
    - strtoll
    - zip_strerror
    - get_whence
    linkageType: ''
    returnType: int
    signature: int regress_fseek(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_unchange_all
      Src: /src/libzip/regress/programs/ziptool_regress.c:242,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:243,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:243,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 247
    functionName: unchange_all
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 1
    functionsReached:
    - zip_strerror
    - zip_unchange_all
    - fprintf
    linkageType: ''
    returnType: int
    signature: int unchange_all(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/regress/programs/ziptool_regress.c:253,1
    - Dst: zip_unchange
      Src: /src/libzip/regress/programs/ziptool_regress.c:255,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:256,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:256,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 261
    functionName: unchange_one
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - zip_strerror
    - strtoull
    - zip_unchange
    - fprintf
    linkageType: ''
    returnType: int
    signature: int unchange_one(char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/regress/programs/ziptool_regress.c:266,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:268,1
    - Dst: zip_close
      Src: /src/libzip/regress/programs/ziptool_regress.c:271,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:272,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:272,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 279
    functionName: zin_close
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - zip_close
    - zip_strerror
    - strtoull
    - fprintf
    linkageType: ''
    returnType: int
    signature: int zin_close(char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:283,1
    - Dst: zip_fopen
      Src: /src/libzip/regress/programs/ziptool_regress.c:286,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:287,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:287,1
    - Dst: printf
      Src: /src/libzip/regress/programs/ziptool_regress.c:290,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 293
    functionName: regress_fopen
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - printf
    - zip_strerror
    - zip_fopen
    - fprintf
    linkageType: ''
    returnType: int
    signature: int regress_fopen(char *argv[])
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/regress/programs/ziptool_regress.c:303,1
    - Dst: strtoull
      Src: /src/libzip/regress/programs/ziptool_regress.c:304,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:307,1
    - Dst: zip_fread
      Src: /src/libzip/regress/programs/ziptool_regress.c:320,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:322,1
    - Dst: zip_file_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:322,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:327,1
    - Dst: fwrite
      Src: /src/libzip/regress/programs/ziptool_regress.c:333,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:334,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:334,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 296
    functionDepth: 1
    functionLinenumber: 296
    functionLinenumberEnd: 340
    functionName: regress_fread
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - zip_fread
    - strtoull
    - fprintf
    - fwrite
    - zip_file_strerror
    - strerror
    linkageType: ''
    returnType: int
    signature: int regress_fread(char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libzip/regress/programs/ziptool_regress.c:347,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:348,1
    - Dst: source_hole_create
      Src: /src/libzip/regress/programs/ziptool_regress.c:352,1
    - Dst: zip_open_from_source
      Src: /src/libzip/regress/programs/ziptool_regress.c:352,1
    - Dst: zip_source_free
      Src: /src/libzip/regress/programs/ziptool_regress.c:353,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - archive
    - flags
    - error
    argTypes:
    - char*
    - int
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 357
    functionName: read_hole
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - zip_error_set
    - source_hole_create
    - zip_source_free
    - strcmp
    - zip_open_from_source
    linkageType: ''
    returnType: zip_t
    signature: zip_t *read_hole(const char *archive, int flags, zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcasecmp
      Src: /src/libzip/regress/programs/ziptool_regress.c:361,1
    - Dst: strcasecmp
      Src: /src/libzip/regress/programs/ziptool_regress.c:364,1
    - Dst: strcasecmp
      Src: /src/libzip/regress/programs/ziptool_regress.c:367,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 373
    functionName: get_whence
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 1
    functionsReached:
    - strcasecmp
    linkageType: ''
    returnType: int
    signature: int get_whence(const char *str)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libzip/regress/programs/ziptool_regress.c:381,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:382,1
    - Dst: fopen
      Src: /src/libzip/regress/programs/ziptool_regress.c:386,1
    - Dst: zip_source_buffer_create
      Src: /src/libzip/regress/programs/ziptool_regress.c:388,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:391,1
    - Dst: fstat
      Src: /src/libzip/regress/programs/ziptool_regress.c:398,1
    - Dst: fileno
      Src: /src/libzip/regress/programs/ziptool_regress.c:398,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/ziptool_regress.c:399,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:400,1
    - Dst: malloc
      Src: /src/libzip/regress/programs/ziptool_regress.c:405,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/ziptool_regress.c:406,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:407,1
    - Dst: fread
      Src: /src/libzip/regress/programs/ziptool_regress.c:410,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:411,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/ziptool_regress.c:412,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:413,1
    - Dst: zip_source_buffer_create
      Src: /src/libzip/regress/programs/ziptool_regress.c:416,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:418,1
    - Dst: malloc
      Src: /src/libzip/regress/programs/ziptool_regress.c:426,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/ziptool_regress.c:427,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:428,1
    - Dst: ZIP_MIN
      Src: /src/libzip/regress/programs/ziptool_regress.c:432,1
    - Dst: malloc
      Src: /src/libzip/regress/programs/ziptool_regress.c:433,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:437,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:440,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/ziptool_regress.c:441,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:442,1
    - Dst: fread
      Src: /src/libzip/regress/programs/ziptool_regress.c:446,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:450,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:453,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/ziptool_regress.c:454,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:455,1
    - Dst: zip_source_buffer_fragment_create
      Src: /src/libzip/regress/programs/ziptool_regress.c:459,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:462,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:464,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/ziptool_regress.c:465,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:468,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/ziptool_regress.c:470,1
    - Dst: zip_open_from_source
      Src: /src/libzip/regress/programs/ziptool_regress.c:475,1
    - Dst: zip_source_free
      Src: /src/libzip/regress/programs/ziptool_regress.c:477,1
    - Dst: zip_source_keep
      Src: /src/libzip/regress/programs/ziptool_regress.c:480,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 87
    argCount: 4
    argNames:
    - archive
    - flags
    - error
    - srcp
    argTypes:
    - char*
    - int
    - zip_error_t*
    - zip_source_t**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 376
    functionDepth: 1
    functionLinenumber: 376
    functionLinenumberEnd: 483
    functionName: read_to_memory
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - ZIP_MIN
    - fopen
    - free
    - zip_source_keep
    - zip_error_set
    - zip_source_free
    - zip_source_buffer_create
    - strcmp
    - fileno
    - malloc
    - fstat
    - zip_open_from_source
    - zip_source_buffer_fragment_create
    - fclose
    - fread
    linkageType: ''
    returnType: zip_t
    signature: zip_t *read_to_memory(const char *archive, int flags, zip_error_t *error,
      zip_source_t **srcp)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_to_data
      Src: /src/libzip/regress/programs/ziptool_regress.c:500,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:503,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:512,1
    - Dst: memset
      Src: /src/libzip/regress/programs/ziptool_regress.c:520,1
    - Dst: ZIP_SOURCE_GET_ARGS
      Src: /src/libzip/regress/programs/ziptool_regress.c:525,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/regress/programs/ziptool_regress.c:538,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:541,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 37
    argCount: 4
    argNames:
    - ud
    - data
    - length
    - command
    argTypes:
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 492
    functionDepth: 1
    functionLinenumber: 492
    functionLinenumberEnd: 544
    functionName: source_nul_cb
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - free
    - zip_error_set
    - zip_error_to_data
    - zip_source_make_command_bitmap
    - memset
    - ZIP_SOURCE_GET_ARGS
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t source_nul_cb(void *ud, void *data, zip_uint64_t length,
      zip_source_cmd_t command)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/regress/programs/ziptool_regress.c:550,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/ziptool_regress.c:551,1
    - Dst: zip_get_error
      Src: /src/libzip/regress/programs/ziptool_regress.c:551,1
    - Dst: zip_error_init
      Src: /src/libzip/regress/programs/ziptool_regress.c:555,1
    - Dst: zip_source_function
      Src: /src/libzip/regress/programs/ziptool_regress.c:559,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:560,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - zs
    - length
    argTypes:
    - zip_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 546
    functionDepth: 1
    functionLinenumber: 546
    functionLinenumberEnd: 565
    functionName: source_nul
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 1
    functionsReached:
    - free
    - zip_source_function
    - zip_error_set
    - zip_error_init
    - malloc
    - zip_get_error
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *source_nul(zip_t *zs, zip_uint64_t length)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_stat
      Src: /src/libzip/regress/programs/ziptool_regress.c:573,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:574,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:574,1
    - Dst: zip_source_error
      Src: /src/libzip/regress/programs/ziptool_regress.c:574,1
    - Dst: zip_source_open
      Src: /src/libzip/regress/programs/ziptool_regress.c:577,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/regress/programs/ziptool_regress.c:578,1
    - Dst: zip_source_error
      Src: /src/libzip/regress/programs/ziptool_regress.c:578,1
    - Dst: unlink
      Src: /src/libzip/regress/programs/ziptool_regress.c:579,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:580,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:580,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:585,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:585,1
    - Dst: zip_source_error
      Src: /src/libzip/regress/programs/ziptool_regress.c:585,1
    - Dst: malloc
      Src: /src/libzip/regress/programs/ziptool_regress.c:588,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:589,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:589,1
    - Dst: zip_source_close
      Src: /src/libzip/regress/programs/ziptool_regress.c:590,1
    - Dst: zip_source_read
      Src: /src/libzip/regress/programs/ziptool_regress.c:593,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:594,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:594,1
    - Dst: zip_source_error
      Src: /src/libzip/regress/programs/ziptool_regress.c:594,1
    - Dst: zip_source_close
      Src: /src/libzip/regress/programs/ziptool_regress.c:595,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:596,1
    - Dst: zip_source_close
      Src: /src/libzip/regress/programs/ziptool_regress.c:599,1
    - Dst: fopen
      Src: /src/libzip/regress/programs/ziptool_regress.c:600,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:601,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:601,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:602,1
    - Dst: fwrite
      Src: /src/libzip/regress/programs/ziptool_regress.c:605,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:606,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:606,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:607,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/ziptool_regress.c:608,1
    - Dst: free
      Src: /src/libzip/regress/programs/ziptool_regress.c:611,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/ziptool_regress.c:612,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/ziptool_regress.c:613,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/ziptool_regress.c:613,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 2
    argNames:
    - archive
    - src
    argTypes:
    - char*
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 568
    functionDepth: 1
    functionLinenumber: 568
    functionLinenumberEnd: 617
    functionName: write_memory_src_to_file
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - zip_source_error
    - fclose
    - free
    - fopen
    - zip_source_read
    - fprintf
    - zip_error_strerror
    - zip_source_close
    - malloc
    - fwrite
    - zip_error_code_zip
    - unlink
    - zip_source_open
    - zip_source_stat
    - strerror
    linkageType: ''
    returnType: int
    signature: int write_memory_src_to_file(const char *archive, zip_source_t *src)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: read_from_file
      Src: /src/libzip/regress/programs/ziptool_regress.c:623,1
    - Dst: read_to_memory
      Src: /src/libzip/regress/programs/ziptool_regress.c:627,1
    - Dst: read_hole
      Src: /src/libzip/regress/programs/ziptool_regress.c:631,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 5
    argNames:
    - archive
    - flags
    - error
    - offset
    - len
    argTypes:
    - char*
    - int
    - zip_error_t*
    - zip_uint64_t
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 620
    functionDepth: 2
    functionLinenumber: 620
    functionLinenumberEnd: 636
    functionName: ziptool_open
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - read_to_memory
    - read_hole
    - read_from_file
    linkageType: ''
    returnType: zip_t
    signature: zip_t *ziptool_open(const char *archive, int flags, zip_error_t *error,
      zip_uint64_t offset, zip_uint64_t len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: write_memory_src_to_file
      Src: /src/libzip/regress/programs/ziptool_regress.c:641,1
    - Dst: zip_source_free
      Src: /src/libzip/regress/programs/ziptool_regress.c:644,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - archive
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 639
    functionDepth: 2
    functionLinenumber: 639
    functionLinenumberEnd: 648
    functionName: ziptool_post_close
    functionSourceFile: /src/libzip/regress/programs/ziptool_regress.c
    functionUses: 0
    functionsReached:
    - write_memory_src_to_file
    - zip_source_free
    linkageType: ''
    returnType: int
    signature: int ziptool_post_close(const char *archive)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 52
    functionName: MY_MIN
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MY_MIN(a, b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: hole_new
      Src: /src/libzip/regress/programs/source_hole.c:94,1
    - Dst: zip_source_function_create
      Src: /src/libzip/regress/programs/source_hole.c:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - fname
    - flags
    - error
    argTypes:
    - char*
    - int
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionName: source_hole_create
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 1
    functionsReached:
    - hole_new
    - zip_source_function_create
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *source_hole_create(const char *fname, int flags, zip_error_t
      *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/regress/programs/source_hole.c:112,1
    - Dst: free
      Src: /src/libzip/regress/programs/source_hole.c:114,1
    - Dst: free
      Src: /src/libzip/regress/programs/source_hole.c:116,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 117
    functionName: buffer_free
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 0
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void buffer_free(buffer_t *buffer)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: buffer_new
      Src: /src/libzip/regress/programs/source_hole.c:124,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:125,1
    - Dst: fopen
      Src: /src/libzip/regress/programs/source_hole.c:130,1
    - Dst: buffer_free
      Src: /src/libzip/regress/programs/source_hole.c:132,1
    - Dst: buffer_read_file
      Src: /src/libzip/regress/programs/source_hole.c:137,1
    - Dst: buffer_free
      Src: /src/libzip/regress/programs/source_hole.c:138,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/source_hole.c:139,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/source_hole.c:142,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - fname
    - flags
    - error
    argTypes:
    - char*
    - int
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 147
    functionName: buffer_from_file
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 0
    functionsReached:
    - fopen
    - zip_error_set
    - buffer_new
    - buffer_read_file
    - fclose
    - buffer_free
    linkageType: ''
    returnType: buffer_t
    signature: buffer_t *buffer_from_file(const char *fname, int flags, zip_error_t
      *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/regress/programs/source_hole.c:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 164
    functionName: buffer_new
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 1
    functionsReached:
    - malloc
    linkageType: ''
    returnType: buffer_t
    signature: buffer_t *buffer_new(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: MY_MIN
      Src: /src/libzip/regress/programs/source_hole.c:170,1
    - Dst: MY_MIN
      Src: /src/libzip/regress/programs/source_hole.c:183,1
    - Dst: memcpy
      Src: /src/libzip/regress/programs/source_hole.c:186,1
    - Dst: memset
      Src: /src/libzip/regress/programs/source_hole.c:189,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 4
    argNames:
    - buffer
    - data
    - length
    - error
    argTypes:
    - buffer_t*
    - zip_uint8_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 199
    functionName: buffer_read
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 0
    functionsReached:
    - memset
    - memcpy
    - MY_MIN
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t buffer_read(buffer_t *buffer, zip_uint8_t *data, zip_uint64_t
      length, zip_error_t *error)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: fread
      Src: /src/libzip/regress/programs/source_hole.c:206,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:207,1
    - Dst: memcmp
      Src: /src/libzip/regress/programs/source_hole.c:211,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:212,1
    - Dst: get_u64
      Src: /src/libzip/regress/programs/source_hole.c:216,1
    - Dst: get_u64
      Src: /src/libzip/regress/programs/source_hole.c:217,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:220,1
    - Dst: malloc
      Src: /src/libzip/regress/programs/source_hole.c:229,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:230,1
    - Dst: fread
      Src: /src/libzip/regress/programs/source_hole.c:240,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:241,1
    - Dst: memcmp
      Src: /src/libzip/regress/programs/source_hole.c:245,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:247,1
    - Dst: malloc
      Src: /src/libzip/regress/programs/source_hole.c:250,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:251,1
    - Dst: fread
      Src: /src/libzip/regress/programs/source_hole.c:254,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:255,1
    - Dst: memcmp
      Src: /src/libzip/regress/programs/source_hole.c:260,1
    - Dst: fread
      Src: /src/libzip/regress/programs/source_hole.c:261,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:262,1
    - Dst: get_u64
      Src: /src/libzip/regress/programs/source_hole.c:265,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:268,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 59
    argCount: 3
    argNames:
    - buffer
    - f
    - error
    argTypes:
    - buffer_t*
    - FILE*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 274
    functionName: buffer_read_file
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 1
    functionsReached:
    - zip_error_set
    - get_u64
    - malloc
    - fread
    - memcmp
    linkageType: ''
    returnType: int
    signature: int buffer_read_file(buffer_t *buffer, FILE *f, zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_seek_compute_offset
      Src: /src/libzip/regress/programs/source_hole.c:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - buffer
    - data
    - length
    - error
    argTypes:
    - buffer_t*
    - void*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 285
    functionName: buffer_seek
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 0
    functionsReached:
    - zip_source_seek_compute_offset
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t buffer_seek(buffer_t *buffer, void *data, zip_uint64_t
      length, zip_error_t *error)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/libzip/regress/programs/source_hole.c:289,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:294,1
    - Dst: fwrite
      Src: /src/libzip/regress/programs/source_hole.c:298,1
    - Dst: write_u64
      Src: /src/libzip/regress/programs/source_hole.c:299,1
    - Dst: write_u64
      Src: /src/libzip/regress/programs/source_hole.c:300,1
    - Dst: only_nul
      Src: /src/libzip/regress/programs/source_hole.c:304,1
    - Dst: write_nuls
      Src: /src/libzip/regress/programs/source_hole.c:309,1
    - Dst: fwrite
      Src: /src/libzip/regress/programs/source_hole.c:312,1
    - Dst: fwrite
      Src: /src/libzip/regress/programs/source_hole.c:314,1
    - Dst: write_nuls
      Src: /src/libzip/regress/programs/source_hole.c:319,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/source_hole.c:322,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:323,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 3
    argNames:
    - buffer
    - fname
    - error
    argTypes:
    - buffer_t*
    - char*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 328
    functionName: buffer_to_file
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 0
    functionsReached:
    - fopen
    - zip_error_set
    - write_u64
    - fwrite
    - only_nul
    - fclose
    - write_nuls
    linkageType: ''
    returnType: int
    signature: int buffer_to_file(buffer_t *buffer, const char *fname, zip_error_t
      *error)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: realloc
      Src: /src/libzip/regress/programs/source_hole.c:345,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:348,1
    - Dst: only_nul
      Src: /src/libzip/regress/programs/source_hole.c:360,1
    - Dst: MY_MIN
      Src: /src/libzip/regress/programs/source_hole.c:368,1
    - Dst: malloc
      Src: /src/libzip/regress/programs/source_hole.c:371,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:372,1
    - Dst: memset
      Src: /src/libzip/regress/programs/source_hole.c:375,1
    - Dst: memcpy
      Src: /src/libzip/regress/programs/source_hole.c:377,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 4
    argNames:
    - buffer
    - data
    - length
    - error
    argTypes:
    - buffer_t*
    - zip_uint8_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 331
    functionDepth: 1
    functionLinenumber: 331
    functionLinenumberEnd: 391
    functionName: buffer_write
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 0
    functionsReached:
    - memcpy
    - zip_error_set
    - realloc
    - malloc
    - memset
    - only_nul
    - MY_MIN
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t buffer_write(buffer_t *buffer, const zip_uint8_t *data,
      zip_uint64_t length, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - zip_uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 394
    functionDepth: 0
    functionLinenumber: 394
    functionLinenumberEnd: 400
    functionName: get_u64
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t get_u64(const zip_uint8_t *b)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - data
    - length
    argTypes:
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 403
    functionDepth: 0
    functionLinenumber: 403
    functionLinenumberEnd: 413
    functionName: only_nul
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int only_nul(const zip_uint8_t *data, zip_uint64_t length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fwrite
      Src: /src/libzip/regress/programs/source_hole.c:417,1
    - Dst: write_u64
      Src: /src/libzip/regress/programs/source_hole.c:420,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - n
    - f
    argTypes:
    - zip_uint64_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 416
    functionDepth: 1
    functionLinenumber: 416
    functionLinenumberEnd: 421
    functionName: write_nuls
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 1
    functionsReached:
    - write_u64
    - fwrite
    linkageType: ''
    returnType: int
    signature: int write_nuls(zip_uint64_t n, FILE *f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fwrite
      Src: /src/libzip/regress/programs/source_hole.c:436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - u64
    - f
    argTypes:
    - zip_uint64_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 437
    functionName: write_u64
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 2
    functionsReached:
    - fwrite
    linkageType: ''
    returnType: int
    signature: int write_u64(zip_uint64_t u64, FILE *f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_fini
      Src: /src/libzip/regress/programs/source_hole.c:444,1
    - Dst: buffer_free
      Src: /src/libzip/regress/programs/source_hole.c:445,1
    - Dst: buffer_free
      Src: /src/libzip/regress/programs/source_hole.c:446,1
    - Dst: free
      Src: /src/libzip/regress/programs/source_hole.c:447,1
    - Dst: free
      Src: /src/libzip/regress/programs/source_hole.c:448,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - hole
    argTypes:
    - hole_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 440
    functionDepth: 1
    functionLinenumber: 440
    functionLinenumberEnd: 449
    functionName: hole_free
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 0
    functionsReached:
    - free
    - buffer_free
    - zip_error_fini
    linkageType: ''
    returnType: void
    signature: void hole_free(hole_t *hole)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/regress/programs/source_hole.c:453,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:456,1
    - Dst: strdup
      Src: /src/libzip/regress/programs/source_hole.c:460,1
    - Dst: free
      Src: /src/libzip/regress/programs/source_hole.c:461,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:462,1
    - Dst: buffer_from_file
      Src: /src/libzip/regress/programs/source_hole.c:466,1
    - Dst: free
      Src: /src/libzip/regress/programs/source_hole.c:467,1
    - Dst: zip_error_init
      Src: /src/libzip/regress/programs/source_hole.c:471,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - fname
    - flags
    - error
    argTypes:
    - char*
    - int
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 452
    functionDepth: 2
    functionLinenumber: 452
    functionLinenumberEnd: 475
    functionName: hole_new
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 1
    functionsReached:
    - free
    - zip_error_set
    - zip_error_init
    - malloc
    - strdup
    - buffer_from_file
    linkageType: ''
    returnType: hole_t
    signature: hole_t *hole_new(const char *fname, int flags, zip_error_t *error)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: buffer_new
      Src: /src/libzip/regress/programs/source_hole.c:483,1
    - Dst: buffer_to_file
      Src: /src/libzip/regress/programs/source_hole.c:490,1
    - Dst: buffer_free
      Src: /src/libzip/regress/programs/source_hole.c:493,1
    - Dst: zip_error_to_data
      Src: /src/libzip/regress/programs/source_hole.c:499,1
    - Dst: hole_free
      Src: /src/libzip/regress/programs/source_hole.c:502,1
    - Dst: buffer_read
      Src: /src/libzip/regress/programs/source_hole.c:510,1
    - Dst: buffer_free
      Src: /src/libzip/regress/programs/source_hole.c:513,1
    - Dst: buffer_new
      Src: /src/libzip/regress/programs/source_hole.c:514,1
    - Dst: buffer_free
      Src: /src/libzip/regress/programs/source_hole.c:515,1
    - Dst: remove
      Src: /src/libzip/regress/programs/source_hole.c:517,1
    - Dst: buffer_free
      Src: /src/libzip/regress/programs/source_hole.c:521,1
    - Dst: buffer_seek
      Src: /src/libzip/regress/programs/source_hole.c:526,1
    - Dst: buffer_seek
      Src: /src/libzip/regress/programs/source_hole.c:529,1
    - Dst: ZIP_SOURCE_GET_ARGS
      Src: /src/libzip/regress/programs/source_hole.c:532,1
    - Dst: buffer_write
      Src: /src/libzip/regress/programs/source_hole.c:552,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/regress/programs/source_hole.c:555,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/source_hole.c:558,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 60
    argCount: 4
    argNames:
    - ud
    - data
    - length
    - command
    argTypes:
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 478
    functionDepth: 2
    functionLinenumber: 478
    functionLinenumberEnd: 561
    functionName: source_hole_cb
    functionSourceFile: /src/libzip/regress/programs/source_hole.c
    functionUses: 0
    functionsReached:
    - hole_free
    - buffer_seek
    - zip_error_set
    - zip_error_to_data
    - buffer_write
    - buffer_new
    - remove
    - buffer_to_file
    - zip_source_make_command_bitmap
    - ZIP_SOURCE_GET_ARGS
    - buffer_free
    - buffer_read
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t source_hole_cb(void *ud, void *data, zip_uint64_t length,
      zip_source_cmd_t command)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fopen_unchanged.c:51,1
    - Dst: zip_open
      Src: /src/libzip/regress/programs/fopen_unchanged.c:57,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/regress/programs/fopen_unchanged.c:59,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fopen_unchanged.c:60,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/fopen_unchanged.c:60,1
    - Dst: zip_error_fini
      Src: /src/libzip/regress/programs/fopen_unchanged.c:61,1
    - Dst: zip_source_buffer
      Src: /src/libzip/regress/programs/fopen_unchanged.c:65,1
    - Dst: strlen
      Src: /src/libzip/regress/programs/fopen_unchanged.c:65,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fopen_unchanged.c:66,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fopen_unchanged.c:66,1
    - Dst: exit
      Src: /src/libzip/regress/programs/fopen_unchanged.c:67,1
    - Dst: zip_file_add
      Src: /src/libzip/regress/programs/fopen_unchanged.c:70,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fopen_unchanged.c:71,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fopen_unchanged.c:71,1
    - Dst: zip_source_free
      Src: /src/libzip/regress/programs/fopen_unchanged.c:72,1
    - Dst: zip_close
      Src: /src/libzip/regress/programs/fopen_unchanged.c:73,1
    - Dst: zip_fopen
      Src: /src/libzip/regress/programs/fopen_unchanged.c:77,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fopen_unchanged.c:78,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fopen_unchanged.c:78,1
    - Dst: zip_discard
      Src: /src/libzip/regress/programs/fopen_unchanged.c:79,1
    - Dst: zip_close
      Src: /src/libzip/regress/programs/fopen_unchanged.c:83,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fopen_unchanged.c:84,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fopen_unchanged.c:84,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 89
    functionName: main
    functionSourceFile: /src/libzip/regress/programs/fopen_unchanged.c
    functionUses: 0
    functionsReached:
    - zip_strerror
    - zip_file_add
    - fprintf
    - zip_error_strerror
    - zip_source_free
    - exit
    - strlen
    - zip_discard
    - zip_error_fini
    - zip_open
    - zip_close
    - zip_fopen
    - zip_source_buffer
    - zip_error_init_with_code
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: getopt
      Src: /src/libzip/regress/programs/tryopen.c:64,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/tryopen.c:83,1
    - Dst: zip_open
      Src: /src/libzip/regress/programs/tryopen.c:93,1
    - Dst: zip_get_num_entries
      Src: /src/libzip/regress/programs/tryopen.c:94,1
    - Dst: printf
      Src: /src/libzip/regress/programs/tryopen.c:95,1
    - Dst: zip_close
      Src: /src/libzip/regress/programs/tryopen.c:96,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/regress/programs/tryopen.c:100,1
    - Dst: printf
      Src: /src/libzip/regress/programs/tryopen.c:101,1
    - Dst: printf
      Src: /src/libzip/regress/programs/tryopen.c:103,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/tryopen.c:103,1
    - Dst: printf
      Src: /src/libzip/regress/programs/tryopen.c:106,1
    - Dst: zip_error_system_type
      Src: /src/libzip/regress/programs/tryopen.c:107,1
    - Dst: printf
      Src: /src/libzip/regress/programs/tryopen.c:110,1
    - Dst: zip_error_code_system
      Src: /src/libzip/regress/programs/tryopen.c:110,1
    - Dst: printf
      Src: /src/libzip/regress/programs/tryopen.c:117,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/tryopen.c:122,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 126
    functionName: main
    functionSourceFile: /src/libzip/regress/programs/tryopen.c
    functionUses: 0
    functionsReached:
    - zip_error_code_system
    - fprintf
    - zip_error_strerror
    - getopt
    - zip_get_num_entries
    - zip_error_system_type
    - zip_error_init_with_code
    - zip_open
    - zip_close
    - printf
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/regress/programs/add_from_filep.c:55,1
    - Dst: zip_open
      Src: /src/libzip/regress/programs/add_from_filep.c:62,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/regress/programs/add_from_filep.c:64,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/add_from_filep.c:65,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/add_from_filep.c:65,1
    - Dst: zip_error_fini
      Src: /src/libzip/regress/programs/add_from_filep.c:66,1
    - Dst: fopen
      Src: /src/libzip/regress/programs/add_from_filep.c:70,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/add_from_filep.c:71,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/add_from_filep.c:71,1
    - Dst: zip_source_filep
      Src: /src/libzip/regress/programs/add_from_filep.c:75,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/add_from_filep.c:76,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/add_from_filep.c:76,1
    - Dst: strrchr
      Src: /src/libzip/regress/programs/add_from_filep.c:80,1
    - Dst: zip_file_add
      Src: /src/libzip/regress/programs/add_from_filep.c:84,1
    - Dst: zip_source_free
      Src: /src/libzip/regress/programs/add_from_filep.c:85,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/add_from_filep.c:86,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/add_from_filep.c:86,1
    - Dst: zip_close
      Src: /src/libzip/regress/programs/add_from_filep.c:90,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/add_from_filep.c:91,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/add_from_filep.c:91,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 96
    functionName: main
    functionSourceFile: /src/libzip/regress/programs/add_from_filep.c
    functionUses: 0
    functionsReached:
    - zip_strerror
    - zip_file_add
    - fopen
    - strerror
    - fprintf
    - zip_error_strerror
    - strrchr
    - zip_source_free
    - zip_source_filep
    - zip_error_fini
    - zip_open
    - zip_close
    - zip_error_init_with_code
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/regress/programs/files_differ.c:43,1
    - Dst: fopen
      Src: /src/libzip/regress/programs/files_differ.c:47,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/files_differ.c:49,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/files_differ.c:49,1
    - Dst: fopen
      Src: /src/libzip/regress/programs/files_differ.c:52,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/files_differ.c:54,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/files_differ.c:54,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/files_differ.c:55,1
    - Dst: fgetc
      Src: /src/libzip/regress/programs/files_differ.c:60,1
    - Dst: fgetc
      Src: /src/libzip/regress/programs/files_differ.c:61,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/files_differ.c:63,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/files_differ.c:64,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/files_differ.c:69,1
    - Dst: fclose
      Src: /src/libzip/regress/programs/files_differ.c:70,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 73
    functionName: main
    functionSourceFile: /src/libzip/regress/programs/files_differ.c
    functionUses: 0
    functionsReached:
    - fopen
    - fprintf
    - fgetc
    - fclose
    - strerror
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libzip/regress/programs/zip_nonrandom.c:8,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - buffer
    - length
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11
      start: 7
    functionDepth: 0
    functionLinenumber: 7
    functionLinenumberEnd: 11
    functionName: zip_secure_nonrandom
    functionSourceFile: /src/libzip/regress/programs/zip_nonrandom.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: bool
    signature: bool zip_secure_nonrandom(zip_uint8_t *buffer, zip_uint16_t length)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_open
      Src: /src/libzip/regress/programs/hole.c:56,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/hole.c:57,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/hole.c:57,1
    - Dst: zip_source_error
      Src: /src/libzip/regress/programs/hole.c:57,1
    - Dst: zip_source_begin_write
      Src: /src/libzip/regress/programs/hole.c:61,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/hole.c:62,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/hole.c:62,1
    - Dst: zip_source_error
      Src: /src/libzip/regress/programs/hole.c:62,1
    - Dst: zip_source_close
      Src: /src/libzip/regress/programs/hole.c:63,1
    - Dst: zip_source_read
      Src: /src/libzip/regress/programs/hole.c:67,1
    - Dst: zip_source_write
      Src: /src/libzip/regress/programs/hole.c:68,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/hole.c:69,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/hole.c:69,1
    - Dst: zip_source_error
      Src: /src/libzip/regress/programs/hole.c:69,1
    - Dst: zip_source_close
      Src: /src/libzip/regress/programs/hole.c:70,1
    - Dst: zip_source_rollback_write
      Src: /src/libzip/regress/programs/hole.c:71,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/hole.c:77,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/hole.c:77,1
    - Dst: zip_source_error
      Src: /src/libzip/regress/programs/hole.c:77,1
    - Dst: zip_source_close
      Src: /src/libzip/regress/programs/hole.c:78,1
    - Dst: zip_source_rollback_write
      Src: /src/libzip/regress/programs/hole.c:79,1
    - Dst: zip_source_close
      Src: /src/libzip/regress/programs/hole.c:83,1
    - Dst: zip_source_commit_write
      Src: /src/libzip/regress/programs/hole.c:85,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/hole.c:86,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/hole.c:86,1
    - Dst: zip_source_error
      Src: /src/libzip/regress/programs/hole.c:86,1
    - Dst: zip_source_rollback_write
      Src: /src/libzip/regress/programs/hole.c:87,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 2
    argNames:
    - from
    - to
    argTypes:
    - zip_source_t*
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 92
    functionName: copy_source
    functionSourceFile: /src/libzip/regress/programs/hole.c
    functionUses: 0
    functionsReached:
    - zip_source_error
    - zip_source_commit_write
    - zip_source_read
    - zip_source_write
    - fprintf
    - zip_error_strerror
    - zip_source_close
    - zip_source_begin_write
    - zip_source_rollback_write
    - zip_source_open
    linkageType: ''
    returnType: int
    signature: int copy_source(zip_source_t *from, zip_source_t *to)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_init
      Src: /src/libzip/regress/programs/hole.c:99,1
    - Dst: source_hole_create
      Src: /src/libzip/regress/programs/hole.c:101,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/hole.c:102,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/hole.c:102,1
    - Dst: zip_error_fini
      Src: /src/libzip/regress/programs/hole.c:103,1
    - Dst: exit
      Src: /src/libzip/regress/programs/hole.c:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - fname
    - flags
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 108
    functionName: open_compressed
    functionSourceFile: /src/libzip/regress/programs/hole.c
    functionUses: 0
    functionsReached:
    - fprintf
    - source_hole_create
    - zip_error_strerror
    - zip_error_init
    - exit
    - zip_error_fini
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *open_compressed(const char *fname, int flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_init
      Src: /src/libzip/regress/programs/hole.c:115,1
    - Dst: zip_source_file_create
      Src: /src/libzip/regress/programs/hole.c:117,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/hole.c:118,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/hole.c:118,1
    - Dst: zip_error_fini
      Src: /src/libzip/regress/programs/hole.c:119,1
    - Dst: exit
      Src: /src/libzip/regress/programs/hole.c:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - fname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 124
    functionName: open_file
    functionSourceFile: /src/libzip/regress/programs/hole.c
    functionUses: 0
    functionsReached:
    - zip_source_file_create
    - fprintf
    - zip_error_init
    - zip_error_strerror
    - exit
    - zip_error_fini
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *open_file(const char *fname)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/regress/programs/hole.c:128,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/hole.c:129,1
    - Dst: exit
      Src: /src/libzip/regress/programs/hole.c:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: usage
    functionSourceFile: /src/libzip/regress/programs/hole.c
    functionUses: 0
    functionsReached:
    - exit
    - fprintf
    linkageType: ''
    returnType: void
    signature: void usage(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: getopt
      Src: /src/libzip/regress/programs/hole.c:143,1
    - Dst: usage
      Src: /src/libzip/regress/programs/hole.c:156,1
    - Dst: usage
      Src: /src/libzip/regress/programs/hole.c:162,1
    - Dst: open_compressed
      Src: /src/libzip/regress/programs/hole.c:166,1
    - Dst: open_file
      Src: /src/libzip/regress/programs/hole.c:169,1
    - Dst: open_compressed
      Src: /src/libzip/regress/programs/hole.c:173,1
    - Dst: open_file
      Src: /src/libzip/regress/programs/hole.c:176,1
    - Dst: copy_source
      Src: /src/libzip/regress/programs/hole.c:179,1
    - Dst: zip_source_free
      Src: /src/libzip/regress/programs/hole.c:181,1
    - Dst: zip_source_free
      Src: /src/libzip/regress/programs/hole.c:182,1
    - Dst: exit
      Src: /src/libzip/regress/programs/hole.c:184,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 134
    functionDepth: 3
    functionLinenumber: 134
    functionLinenumberEnd: 185
    functionName: main
    functionSourceFile: /src/libzip/regress/programs/hole.c
    functionUses: 0
    functionsReached:
    - open_compressed
    - zip_source_free
    - getopt
    - exit
    - usage
    - copy_source
    - open_file
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: getopt
      Src: /src/libzip/regress/programs/fread.c:74,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fread.c:81,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fread.c:88,1
    - Dst: zip_open
      Src: /src/libzip/regress/programs/fread.c:94,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/regress/programs/fread.c:96,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fread.c:97,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/fread.c:97,1
    - Dst: zip_error_fini
      Src: /src/libzip/regress/programs/fread.c:98,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:102,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:103,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:104,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:105,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:106,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:108,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:110,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:111,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:112,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:113,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:114,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:116,1
    - Dst: zip_set_default_password
      Src: /src/libzip/regress/programs/fread.c:117,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:118,1
    - Dst: zip_set_default_password
      Src: /src/libzip/regress/programs/fread.c:119,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:120,1
    - Dst: zip_set_default_password
      Src: /src/libzip/regress/programs/fread.c:121,1
    - Dst: zip_source_buffer
      Src: /src/libzip/regress/programs/fread.c:123,1
    - Dst: zip_name_locate
      Src: /src/libzip/regress/programs/fread.c:124,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fread.c:125,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fread.c:125,1
    - Dst: zip_file_replace
      Src: /src/libzip/regress/programs/fread.c:129,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fread.c:130,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fread.c:130,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:134,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:135,1
    - Dst: zip_name_locate
      Src: /src/libzip/regress/programs/fread.c:138,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fread.c:139,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fread.c:139,1
    - Dst: zip_delete
      Src: /src/libzip/regress/programs/fread.c:143,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fread.c:144,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fread.c:144,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:148,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:149,1
    - Dst: zip_source_buffer
      Src: /src/libzip/regress/programs/fread.c:152,1
    - Dst: zip_file_add
      Src: /src/libzip/regress/programs/fread.c:153,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fread.c:154,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fread.c:154,1
    - Dst: do_read
      Src: /src/libzip/regress/programs/fread.c:158,1
    - Dst: zip_unchange_all
      Src: /src/libzip/regress/programs/fread.c:161,1
    - Dst: zip_close
      Src: /src/libzip/regress/programs/fread.c:162,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fread.c:163,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fread.c:163,1
    - Dst: exit
      Src: /src/libzip/regress/programs/fread.c:167,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 80
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 168
    functionName: main
    functionSourceFile: /src/libzip/regress/programs/fread.c
    functionUses: 0
    functionsReached:
    - zip_strerror
    - zip_file_replace
    - zip_file_add
    - do_read
    - fprintf
    - zip_name_locate
    - zip_error_strerror
    - getopt
    - exit
    - zip_set_default_password
    - zip_unchange_all
    - zip_error_fini
    - zip_open
    - zip_close
    - zip_source_buffer
    - zip_error_init_with_code
    - zip_delete
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_init
      Src: /src/libzip/regress/programs/fread.c:181,1
    - Dst: zip_error_init
      Src: /src/libzip/regress/programs/fread.c:182,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/fread.c:183,1
    - Dst: zip_fopen
      Src: /src/libzip/regress/programs/fread.c:185,1
    - Dst: zip_get_error
      Src: /src/libzip/regress/programs/fread.c:187,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/fread.c:188,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/regress/programs/fread.c:188,1
    - Dst: zip_error_code_system
      Src: /src/libzip/regress/programs/fread.c:188,1
    - Dst: zip_fread
      Src: /src/libzip/regress/programs/fread.c:191,1
    - Dst: zip_file_get_error
      Src: /src/libzip/regress/programs/fread.c:195,1
    - Dst: zip_error_set
      Src: /src/libzip/regress/programs/fread.c:196,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/regress/programs/fread.c:196,1
    - Dst: zip_error_code_system
      Src: /src/libzip/regress/programs/fread.c:196,1
    - Dst: zip_fclose
      Src: /src/libzip/regress/programs/fread.c:198,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/regress/programs/fread.c:201,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/regress/programs/fread.c:205,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/regress/programs/fread.c:205,1
    - Dst: zip_error_code_system
      Src: /src/libzip/regress/programs/fread.c:205,1
    - Dst: zip_error_code_system
      Src: /src/libzip/regress/programs/fread.c:205,1
    - Dst: printf
      Src: /src/libzip/regress/programs/fread.c:206,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/fread.c:206,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/fread.c:206,1
    - Dst: zip_error_fini
      Src: /src/libzip/regress/programs/fread.c:207,1
    - Dst: zip_error_fini
      Src: /src/libzip/regress/programs/fread.c:208,1
    - Dst: printf
      Src: /src/libzip/regress/programs/fread.c:212,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 6
    argNames:
    - z
    - name
    - flags
    - when_ex
    - ze_ex
    - se_ex
    argTypes:
    - zip_t*
    - char*
    - zip_flags_t
    - enum when
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 216
    functionName: do_read
    functionSourceFile: /src/libzip/regress/programs/fread.c
    functionUses: 1
    functionsReached:
    - zip_fread
    - zip_fclose
    - zip_error_set
    - zip_error_code_system
    - zip_error_init
    - zip_file_get_error
    - zip_error_strerror
    - zip_error_code_zip
    - zip_fopen
    - zip_error_fini
    - zip_error_init_with_code
    - zip_get_error
    - printf
    linkageType: ''
    returnType: int
    signature: int do_read(zip_t *z, const char *name, zip_flags_t flags, enum when
      when_ex, int ze_ex, int se_ex)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fseek.c:53,1
    - Dst: strtoull
      Src: /src/libzip/regress/programs/fseek.c:58,1
    - Dst: strtoull
      Src: /src/libzip/regress/programs/fseek.c:59,1
    - Dst: zip_open
      Src: /src/libzip/regress/programs/fseek.c:61,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/regress/programs/fseek.c:63,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fseek.c:64,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/fseek.c:64,1
    - Dst: zip_error_fini
      Src: /src/libzip/regress/programs/fseek.c:65,1
    - Dst: zip_fopen_index
      Src: /src/libzip/regress/programs/fseek.c:69,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fseek.c:70,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/fseek.c:70,1
    - Dst: zip_file_get_error
      Src: /src/libzip/regress/programs/fseek.c:70,1
    - Dst: zip_close
      Src: /src/libzip/regress/programs/fseek.c:71,1
    - Dst: zip_fseek
      Src: /src/libzip/regress/programs/fseek.c:75,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fseek.c:76,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/fseek.c:76,1
    - Dst: zip_file_get_error
      Src: /src/libzip/regress/programs/fseek.c:76,1
    - Dst: zip_fclose
      Src: /src/libzip/regress/programs/fseek.c:77,1
    - Dst: zip_close
      Src: /src/libzip/regress/programs/fseek.c:78,1
    - Dst: zip_fread
      Src: /src/libzip/regress/programs/fseek.c:82,1
    - Dst: printf
      Src: /src/libzip/regress/programs/fseek.c:83,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fseek.c:86,1
    - Dst: zip_error_strerror
      Src: /src/libzip/regress/programs/fseek.c:86,1
    - Dst: zip_file_get_error
      Src: /src/libzip/regress/programs/fseek.c:86,1
    - Dst: zip_fclose
      Src: /src/libzip/regress/programs/fseek.c:87,1
    - Dst: zip_close
      Src: /src/libzip/regress/programs/fseek.c:88,1
    - Dst: zip_fclose
      Src: /src/libzip/regress/programs/fseek.c:92,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fseek.c:93,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fseek.c:93,1
    - Dst: zip_close
      Src: /src/libzip/regress/programs/fseek.c:97,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/fseek.c:98,1
    - Dst: zip_strerror
      Src: /src/libzip/regress/programs/fseek.c:98,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 44
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 103
    functionName: main
    functionSourceFile: /src/libzip/regress/programs/fseek.c
    functionUses: 0
    functionsReached:
    - zip_fread
    - zip_fclose
    - zip_strerror
    - zip_fopen_index
    - zip_fseek
    - strtoull
    - fprintf
    - zip_file_get_error
    - zip_error_strerror
    - zip_error_fini
    - zip_open
    - zip_close
    - zip_error_init_with_code
    - printf
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: statfs
      Src: /src/libzip/regress/programs/can_clone_file.c:64,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/can_clone_file.c:65,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/can_clone_file.c:65,1
    - Dst: exit
      Src: /src/libzip/regress/programs/can_clone_file.c:66,1
    - Dst: memset
      Src: /src/libzip/regress/programs/can_clone_file.c:74,1
    - Dst: memset
      Src: /src/libzip/regress/programs/can_clone_file.c:77,1
    - Dst: getattrlist
      Src: /src/libzip/regress/programs/can_clone_file.c:79,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/can_clone_file.c:80,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/can_clone_file.c:80,1
    - Dst: exit
      Src: /src/libzip/regress/programs/can_clone_file.c:81,1
    - Dst: exit
      Src: /src/libzip/regress/programs/can_clone_file.c:85,1
    - Dst: mkstemp
      Src: /src/libzip/regress/programs/can_clone_file.c:93,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/can_clone_file.c:94,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/can_clone_file.c:94,1
    - Dst: exit
      Src: /src/libzip/regress/programs/can_clone_file.c:95,1
    - Dst: mkstemp
      Src: /src/libzip/regress/programs/can_clone_file.c:97,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/can_clone_file.c:98,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/can_clone_file.c:98,1
    - Dst: close
      Src: /src/libzip/regress/programs/can_clone_file.c:99,1
    - Dst: remove
      Src: /src/libzip/regress/programs/can_clone_file.c:100,1
    - Dst: exit
      Src: /src/libzip/regress/programs/can_clone_file.c:101,1
    - Dst: write
      Src: /src/libzip/regress/programs/can_clone_file.c:103,1
    - Dst: fprintf
      Src: /src/libzip/regress/programs/can_clone_file.c:104,1
    - Dst: strerror
      Src: /src/libzip/regress/programs/can_clone_file.c:104,1
    - Dst: close
      Src: /src/libzip/regress/programs/can_clone_file.c:105,1
    - Dst: remove
      Src: /src/libzip/regress/programs/can_clone_file.c:106,1
    - Dst: close
      Src: /src/libzip/regress/programs/can_clone_file.c:107,1
    - Dst: remove
      Src: /src/libzip/regress/programs/can_clone_file.c:108,1
    - Dst: exit
      Src: /src/libzip/regress/programs/can_clone_file.c:109,1
    - Dst: ioctl
      Src: /src/libzip/regress/programs/can_clone_file.c:115,1
    - Dst: close
      Src: /src/libzip/regress/programs/can_clone_file.c:116,1
    - Dst: close
      Src: /src/libzip/regress/programs/can_clone_file.c:117,1
    - Dst: remove
      Src: /src/libzip/regress/programs/can_clone_file.c:118,1
    - Dst: remove
      Src: /src/libzip/regress/programs/can_clone_file.c:119,1
    - Dst: exit
      Src: /src/libzip/regress/programs/can_clone_file.c:121,1
    - Dst: exit
      Src: /src/libzip/regress/programs/can_clone_file.c:125,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 47
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 126
    functionName: main
    functionSourceFile: /src/libzip/regress/programs/can_clone_file.c
    functionUses: 0
    functionsReached:
    - close
    - fprintf
    - ioctl
    - remove
    - exit
    - memset
    - statfs
    - getattrlist
    - mkstemp
    - write
    - strerror
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 186
    functionName: BOTH_ARE_ZIPS
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOTH_ARE_ZIPS(a)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: getopt
      Src: /src/libzip/src/zipcmp.c:233,1
    - Dst: fputs
      Src: /src/libzip/src/zipcmp.c:239,1
    - Dst: printf
      Src: /src/libzip/src/zipcmp.c:240,1
    - Dst: fputs
      Src: /src/libzip/src/zipcmp.c:241,1
    - Dst: exit
      Src: /src/libzip/src/zipcmp.c:242,1
    - Dst: fputs
      Src: /src/libzip/src/zipcmp.c:262,1
    - Dst: exit
      Src: /src/libzip/src/zipcmp.c:263,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:269,1
    - Dst: exit
      Src: /src/libzip/src/zipcmp.c:270,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:275,1
    - Dst: exit
      Src: /src/libzip/src/zipcmp.c:276,1
    - Dst: exit
      Src: /src/libzip/src/zipcmp.c:279,1
    - Dst: compare_zip
      Src: /src/libzip/src/zipcmp.c:279,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 54
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 280
    functionName: main
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 0
    functionsReached:
    - fprintf
    - getopt
    - exit
    - fputs
    - printf
    - compare_zip
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *const argv[])
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: archive_init
      Src: /src/libzip/src/zipcmp.c:300,1
    - Dst: archive_init
      Src: /src/libzip/src/zipcmp.c:301,1
    - Dst: is_directory
      Src: /src/libzip/src/zipcmp.c:306,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:308,1
    - Dst: archive_deinit
      Src: /src/libzip/src/zipcmp.c:309,1
    - Dst: archive_deinit
      Src: /src/libzip/src/zipcmp.c:310,1
    - Dst: list_directory
      Src: /src/libzip/src/zipcmp.c:313,1
    - Dst: archive_deinit
      Src: /src/libzip/src/zipcmp.c:314,1
    - Dst: archive_deinit
      Src: /src/libzip/src/zipcmp.c:315,1
    - Dst: list_zip
      Src: /src/libzip/src/zipcmp.c:323,1
    - Dst: archive_deinit
      Src: /src/libzip/src/zipcmp.c:324,1
    - Dst: archive_deinit
      Src: /src/libzip/src/zipcmp.c:325,1
    - Dst: qsort
      Src: /src/libzip/src/zipcmp.c:330,1
    - Dst: diff_output_init
      Src: /src/libzip/src/zipcmp.c:334,1
    - Dst: compare_list
      Src: /src/libzip/src/zipcmp.c:340,1
    - Dst: comment_compare
      Src: /src/libzip/src/zipcmp.c:343,1
    - Dst: diff_output_data
      Src: /src/libzip/src/zipcmp.c:345,1
    - Dst: diff_output_data
      Src: /src/libzip/src/zipcmp.c:349,1
    - Dst: archive_deinit
      Src: /src/libzip/src/zipcmp.c:356,1
    - Dst: archive_deinit
      Src: /src/libzip/src/zipcmp.c:357,1
    - Dst: printf
      Src: /src/libzip/src/zipcmp.c:360,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 53
    argCount: 1
    argNames:
    - zn
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 293
    functionDepth: 1
    functionLinenumber: 293
    functionLinenumberEnd: 364
    functionName: compare_zip
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached:
    - diff_output_data
    - fprintf
    - list_directory
    - list_zip
    - diff_output_init
    - is_directory
    - comment_compare
    - archive_init
    - compare_list
    - archive_deinit
    - printf
    - qsort
    linkageType: ''
    returnType: int
    signature: int compare_zip(char *const zn[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: crc32
      Src: /src/libzip/src/zipcmp.c:380,1
    - Dst: fopen
      Src: /src/libzip/src/zipcmp.c:385,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:386,1
    - Dst: strerror
      Src: /src/libzip/src/zipcmp.c:386,1
    - Dst: fread
      Src: /src/libzip/src/zipcmp.c:390,1
    - Dst: crc32
      Src: /src/libzip/src/zipcmp.c:391,1
    - Dst: ferror
      Src: /src/libzip/src/zipcmp.c:394,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:395,1
    - Dst: strerror
      Src: /src/libzip/src/zipcmp.c:395,1
    - Dst: fclose
      Src: /src/libzip/src/zipcmp.c:396,1
    - Dst: fclose
      Src: /src/libzip/src/zipcmp.c:400,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - fname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 403
    functionName: compute_crc
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 0
    functionsReached:
    - fopen
    - ferror
    - strerror
    - fprintf
    - crc32
    - fclose
    - fread
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t compute_crc(const char *fname)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/libzip/src/zipcmp.c:420,1
    - Dst: S_ISDIR
      Src: /src/libzip/src/zipcmp.c:424,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 425
    functionName: is_directory
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached:
    - stat
    - S_ISDIR
    linkageType: ''
    returnType: int
    signature: int is_directory(const char *name)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libzip/src/zipcmp.c:447,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:449,1
    - Dst: strdup
      Src: /src/libzip/src/zipcmp.c:453,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:455,1
    - Dst: fts_open
      Src: /src/libzip/src/zipcmp.c:474,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:475,1
    - Dst: strerror
      Src: /src/libzip/src/zipcmp.c:475,1
    - Dst: free
      Src: /src/libzip/src/zipcmp.c:476,1
    - Dst: fts_read
      Src: /src/libzip/src/zipcmp.c:480,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:496,1
    - Dst: strerror
      Src: /src/libzip/src/zipcmp.c:496,1
    - Dst: free
      Src: /src/libzip/src/zipcmp.c:497,1
    - Dst: fts_close
      Src: /src/libzip/src/zipcmp.c:498,1
    - Dst: archive_grow_entries
      Src: /src/libzip/src/zipcmp.c:503,1
    - Dst: strlen
      Src: /src/libzip/src/zipcmp.c:512,1
    - Dst: malloc
      Src: /src/libzip/src/zipcmp.c:513,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:515,1
    - Dst: exit
      Src: /src/libzip/src/zipcmp.c:516,1
    - Dst: snprintf
      Src: /src/libzip/src/zipcmp.c:518,1
    - Dst: strdup
      Src: /src/libzip/src/zipcmp.c:525,1
    - Dst: compute_crc
      Src: /src/libzip/src/zipcmp.c:527,1
    - Dst: fts_close
      Src: /src/libzip/src/zipcmp.c:528,1
    - Dst: free
      Src: /src/libzip/src/zipcmp.c:529,1
    - Dst: fts_close
      Src: /src/libzip/src/zipcmp.c:541,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:542,1
    - Dst: strerror
      Src: /src/libzip/src/zipcmp.c:542,1
    - Dst: free
      Src: /src/libzip/src/zipcmp.c:543,1
    - Dst: free
      Src: /src/libzip/src/zipcmp.c:547,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 82
    argCount: 2
    argNames:
    - name
    - a
    argTypes:
    - char*
    - struct archive*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 440
    functionDepth: 1
    functionLinenumber: 440
    functionLinenumberEnd: 549
    functionName: list_directory
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached:
    - fts_close
    - free
    - archive_grow_entries
    - compute_crc
    - snprintf
    - fprintf
    - fts_open
    - malloc
    - exit
    - strlen
    - strdup
    - fts_read
    - strerror
    linkageType: ''
    returnType: int
    signature: int list_directory(const char *name, struct archive *a)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: zip_open
      Src: /src/libzip/src/zipcmp.c:570,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/src/zipcmp.c:572,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:573,1
    - Dst: zip_error_strerror
      Src: /src/libzip/src/zipcmp.c:573,1
    - Dst: zip_error_fini
      Src: /src/libzip/src/zipcmp.c:574,1
    - Dst: zip_get_num_entries
      Src: /src/libzip/src/zipcmp.c:579,1
    - Dst: malloc
      Src: /src/libzip/src/zipcmp.c:585,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:586,1
    - Dst: exit
      Src: /src/libzip/src/zipcmp.c:587,1
    - Dst: zip_stat_index
      Src: /src/libzip/src/zipcmp.c:592,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:593,1
    - Dst: zip_strerror
      Src: /src/libzip/src/zipcmp.c:593,1
    - Dst: strdup
      Src: /src/libzip/src/zipcmp.c:597,1
    - Dst: test_file
      Src: /src/libzip/src/zipcmp.c:601,1
    - Dst: ef_read
      Src: /src/libzip/src/zipcmp.c:605,1
    - Dst: zip_file_get_comment
      Src: /src/libzip/src/zipcmp.c:606,1
    - Dst: zip_get_archive_comment
      Src: /src/libzip/src/zipcmp.c:619,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 2
    argNames:
    - name
    - a
    argTypes:
    - char*
    - struct archive*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 564
    functionDepth: 1
    functionLinenumber: 564
    functionLinenumberEnd: 631
    functionName: list_zip
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached:
    - zip_strerror
    - fprintf
    - zip_get_archive_comment
    - zip_error_strerror
    - malloc
    - test_file
    - exit
    - zip_get_num_entries
    - zip_stat_index
    - zip_file_get_comment
    - strdup
    - zip_error_fini
    - zip_open
    - ef_read
    - zip_error_init_with_code
    linkageType: ''
    returnType: int
    signature: int list_zip(const char *name, struct archive *a)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/libzip/src/zipcmp.c:661,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - c1
    - l1
    - c2
    - l2
    argTypes:
    - char*
    - size_t
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 648
    functionDepth: 0
    functionLinenumber: 648
    functionLinenumberEnd: 662
    functionName: comment_compare
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached:
    - memcmp
    linkageType: ''
    returnType: int
    signature: int comment_compare(const char *c1, size_t l1, const char *c2, size_t
      l2)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: cmp
      Src: /src/libzip/src/zipcmp.c:702,1
    - Dst: start_file
      Src: /src/libzip/src/zipcmp.c:707,1
    - Dst: check
      Src: /src/libzip/src/zipcmp.c:709,1
    - Dst: diff_output_end_file
      Src: /src/libzip/src/zipcmp.c:711,1
    - Dst: INC
      Src: /src/libzip/src/zipcmp.c:714,1
    - Dst: INC
      Src: /src/libzip/src/zipcmp.c:715,1
    - Dst: PRINT
      Src: /src/libzip/src/zipcmp.c:718,1
    - Dst: INC
      Src: /src/libzip/src/zipcmp.c:719,1
    - Dst: PRINT
      Src: /src/libzip/src/zipcmp.c:722,1
    - Dst: INC
      Src: /src/libzip/src/zipcmp.c:723,1
    - Dst: PRINT
      Src: /src/libzip/src/zipcmp.c:729,1
    - Dst: INC
      Src: /src/libzip/src/zipcmp.c:730,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 4
    argNames:
    - name
    - list
    - list_length
    - element_size
    argTypes:
    - char*[]
    - void*[]
    - zip_uint64_t[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 683
    functionDepth: 1
    functionLinenumber: 683
    functionLinenumberEnd: 735
    functionName: compare_list
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached:
    - PRINT
    - check
    - INC
    - cmp
    - diff_output_end_file
    - start_file
    linkageType: ''
    returnType: int
    signature: int compare_list(char *const name[2], const void *list[2], const zip_uint64_t
      list_length[2], int element_size, int (*cmp)(const void *a, const void *b),
      int (*ignore)(const void *list, int last, const void *other), int (*check)(char
      *const name[2], const void *a, const void *b), void (*print)(char side, const
      void *element), void (*start_file)(const void *element))
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - k
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 688
    functionDepth: 0
    functionLinenumber: 688
    functionLinenumberEnd: 689
    functionName: INC
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INC(k)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - k
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 689
    functionDepth: 0
    functionLinenumber: 689
    functionLinenumberEnd: 698
    functionName: PRINT
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRINT(k)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_file_extra_fields_count
      Src: /src/libzip/src/zipcmp.c:754,1
    - Dst: zip_file_extra_fields_count
      Src: /src/libzip/src/zipcmp.c:754,1
    - Dst: malloc
      Src: /src/libzip/src/zipcmp.c:760,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:761,1
    - Dst: exit
      Src: /src/libzip/src/zipcmp.c:762,1
    - Dst: zip_file_extra_field_get
      Src: /src/libzip/src/zipcmp.c:767,1
    - Dst: zip_file_extra_field_get
      Src: /src/libzip/src/zipcmp.c:772,1
    - Dst: qsort
      Src: /src/libzip/src/zipcmp.c:776,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 3
    argNames:
    - za
    - idx
    - e
    argTypes:
    - zip_t*
    - zip_uint64_t
    - struct entry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 779
    functionName: ef_read
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached:
    - fprintf
    - zip_file_extra_fields_count
    - malloc
    - exit
    - zip_file_extra_field_get
    - qsort
    linkageType: ''
    returnType: int
    signature: int ef_read(zip_t *za, zip_uint64_t idx, struct entry *e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compare_list
      Src: /src/libzip/src/zipcmp.c:803,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - name
    - e1
    - e2
    argTypes:
    - char*[]
    - struct entry*
    - struct entry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 794
    functionDepth: 2
    functionLinenumber: 794
    functionLinenumberEnd: 804
    functionName: ef_compare
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 0
    functionsReached:
    - compare_list
    linkageType: ''
    returnType: int
    signature: int ef_compare(char *const name[2], const struct entry *e1, const struct
      entry *e2)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/libzip/src/zipcmp.c:837,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - ap
    - bp
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 819
    functionDepth: 0
    functionLinenumber: 819
    functionLinenumberEnd: 838
    functionName: ef_order
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 0
    functionsReached:
    - memcmp
    linkageType: ''
    returnType: int
    signature: int ef_order(const void *ap, const void *bp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: diff_output_data
      Src: /src/libzip/src/zipcmp.c:851,1
    - Dst: map_enum
      Src: /src/libzip/src/zipcmp.c:851,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - side
    - p
    argTypes:
    - char
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 852
      start: 848
    functionDepth: 1
    functionLinenumber: 848
    functionLinenumberEnd: 852
    functionName: ef_print
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 0
    functionsReached:
    - map_enum
    - diff_output_data
    linkageType: ''
    returnType: void
    signature: void ef_print(char side, const void *p)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - p1
    - p2
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 867
    functionDepth: 0
    functionLinenumber: 867
    functionLinenumberEnd: 893
    functionName: entry_cmp
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int entry_cmp(const void *p1, const void *p2)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libzip/src/zipcmp.c:912,1
    - Dst: strlen
      Src: /src/libzip/src/zipcmp.c:919,1
    - Dst: strncmp
      Src: /src/libzip/src/zipcmp.c:919,1
    - Dst: strlen
      Src: /src/libzip/src/zipcmp.c:924,1
    - Dst: strncmp
      Src: /src/libzip/src/zipcmp.c:924,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 3
    argNames:
    - p
    - last
    - o
    argTypes:
    - void*
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 931
    functionName: entry_ignore
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 0
    functionsReached:
    - strncmp
    - strlen
    linkageType: ''
    returnType: int
    signature: int entry_ignore(const void *p, int last, const void *o)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: diff_output
      Src: /src/libzip/src/zipcmp.c:956,1
    - Dst: map_enum
      Src: /src/libzip/src/zipcmp.c:956,1
    - Dst: diff_output
      Src: /src/libzip/src/zipcmp.c:957,1
    - Dst: map_enum
      Src: /src/libzip/src/zipcmp.c:957,1
    - Dst: ef_compare
      Src: /src/libzip/src/zipcmp.c:961,1
    - Dst: comment_compare
      Src: /src/libzip/src/zipcmp.c:965,1
    - Dst: diff_output_data
      Src: /src/libzip/src/zipcmp.c:966,1
    - Dst: diff_output_data
      Src: /src/libzip/src/zipcmp.c:967,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - name
    - p1
    - p2
    argTypes:
    - char*[]
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 946
    functionDepth: 3
    functionLinenumber: 946
    functionLinenumberEnd: 972
    functionName: entry_paranoia_checks
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 0
    functionsReached:
    - diff_output_data
    - ef_compare
    - comment_compare
    - diff_output
    - map_enum
    linkageType: ''
    returnType: int
    signature: int entry_paranoia_checks(char *const name[2], const void *p1, const
      void *p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: diff_output_file
      Src: /src/libzip/src/zipcmp.c:985,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - side
    - p
    argTypes:
    - char
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 982
    functionDepth: 1
    functionLinenumber: 982
    functionLinenumberEnd: 986
    functionName: entry_print
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 0
    functionsReached:
    - diff_output_file
    linkageType: ''
    returnType: void
    signature: void entry_print(char side, const void *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: diff_output_start_file
      Src: /src/libzip/src/zipcmp.c:992,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 989
    functionDepth: 1
    functionLinenumber: 989
    functionLinenumberEnd: 993
    functionName: entry_start_file
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 0
    functionsReached:
    - diff_output_start_file
    linkageType: ''
    returnType: void
    signature: void entry_start_file(const void *p)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: zip_fopen_index
      Src: /src/libzip/src/zipcmp.c:1019,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:1020,1
    - Dst: zip_strerror
      Src: /src/libzip/src/zipcmp.c:1020,1
    - Dst: crc32
      Src: /src/libzip/src/zipcmp.c:1024,1
    - Dst: zip_fread
      Src: /src/libzip/src/zipcmp.c:1027,1
    - Dst: crc32
      Src: /src/libzip/src/zipcmp.c:1029,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:1033,1
    - Dst: zip_file_strerror
      Src: /src/libzip/src/zipcmp.c:1033,1
    - Dst: zip_fclose
      Src: /src/libzip/src/zipcmp.c:1034,1
    - Dst: zip_fclose
      Src: /src/libzip/src/zipcmp.c:1038,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:1041,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:1045,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 6
    argNames:
    - za
    - idx
    - zipname
    - filename
    - size
    - crc
    argTypes:
    - zip_t*
    - zip_uint64_t
    - char*
    - char*
    - zip_uint64_t
    - zip_uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1050
      start: 1012
    functionDepth: 1
    functionLinenumber: 1012
    functionLinenumberEnd: 1050
    functionName: test_file
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached:
    - zip_fread
    - zip_fclose
    - zip_fopen_index
    - fprintf
    - crc32
    - zip_file_strerror
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int test_file(zip_t *za, zip_uint64_t idx, const char *zipname, const
      char *filename, zip_uint64_t size, zip_uint32_t crc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/libzip/src/zipcmp.c:1074,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - map
    - value
    argTypes:
    - enum_map_t*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1078
      start: 1063
    functionDepth: 0
    functionLinenumber: 1063
    functionLinenumberEnd: 1078
    functionName: map_enum
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 2
    functionsReached:
    - snprintf
    linkageType: ''
    returnType: char
    signature: char *map_enum(const enum_map_t *map, uint32_t value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - a
    argTypes:
    - struct archive*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1095
      start: 1087
    functionDepth: 0
    functionLinenumber: 1087
    functionLinenumberEnd: 1095
    functionName: archive_init
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void archive_init(struct archive *a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_close
      Src: /src/libzip/src/zipcmp.c:1111,1
    - Dst: entry_deinit
      Src: /src/libzip/src/zipcmp.c:1114,1
    - Dst: free
      Src: /src/libzip/src/zipcmp.c:1116,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - a
    argTypes:
    - struct archive*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1118
      start: 1103
    functionDepth: 1
    functionLinenumber: 1103
    functionLinenumberEnd: 1118
    functionName: archive_deinit
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached:
    - zip_close
    - entry_deinit
    - free
    linkageType: ''
    returnType: void
    signature: void archive_deinit(struct archive *a)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:1133,1
    - Dst: exit
      Src: /src/libzip/src/zipcmp.c:1134,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:1142,1
    - Dst: exit
      Src: /src/libzip/src/zipcmp.c:1143,1
    - Dst: realloc
      Src: /src/libzip/src/zipcmp.c:1149,1
    - Dst: fprintf
      Src: /src/libzip/src/zipcmp.c:1151,1
    - Dst: exit
      Src: /src/libzip/src/zipcmp.c:1152,1
    - Dst: entry_init
      Src: /src/libzip/src/zipcmp.c:1156,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - a
    - amount
    argTypes:
    - struct archive*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1128
    functionDepth: 1
    functionLinenumber: 1128
    functionLinenumberEnd: 1159
    functionName: archive_grow_entries
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached:
    - realloc
    - entry_init
    - exit
    - fprintf
    linkageType: ''
    returnType: void
    signature: void archive_grow_entries(struct archive *a, zip_uint64_t amount)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - e
    argTypes:
    - struct entry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1177
      start: 1167
    functionDepth: 0
    functionLinenumber: 1167
    functionLinenumberEnd: 1177
    functionName: entry_init
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void entry_init(struct entry *e)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/src/zipcmp.c:1190,1
    - Dst: free
      Src: /src/libzip/src/zipcmp.c:1194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - e
    argTypes:
    - struct entry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1196
      start: 1185
    functionDepth: 0
    functionLinenumber: 1185
    functionLinenumberEnd: 1196
    functionName: entry_deinit
    functionSourceFile: /src/libzip/src/zipcmp.c
    functionUses: 1
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void entry_deinit(struct entry *e)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_init
      Src: /src/libzip/src/ziptool.c:91,1
    - Dst: zip_stat_index
      Src: /src/libzip/src/ziptool.c:97,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:98,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:98,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:103,1
    - Dst: zip_source_zip_file_create
      Src: /src/libzip/src/ziptool.c:108,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:109,1
    - Dst: zip_error_strerror
      Src: /src/libzip/src/ziptool.c:109,1
    - Dst: zip_error_fini
      Src: /src/libzip/src/ziptool.c:110,1
    - Dst: zip_error_fini
      Src: /src/libzip/src/ziptool.c:113,1
    - Dst: zip_source_open
      Src: /src/libzip/src/ziptool.c:115,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:116,1
    - Dst: zip_error_strerror
      Src: /src/libzip/src/ziptool.c:116,1
    - Dst: zip_source_error
      Src: /src/libzip/src/ziptool.c:116,1
    - Dst: zip_source_free
      Src: /src/libzip/src/ziptool.c:117,1
    - Dst: zip_source_read
      Src: /src/libzip/src/ziptool.c:120,1
    - Dst: fwrite
      Src: /src/libzip/src/ziptool.c:121,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:122,1
    - Dst: strerror
      Src: /src/libzip/src/ziptool.c:122,1
    - Dst: zip_source_free
      Src: /src/libzip/src/ziptool.c:123,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:128,1
    - Dst: zip_error_strerror
      Src: /src/libzip/src/ziptool.c:128,1
    - Dst: zip_source_error
      Src: /src/libzip/src/ziptool.c:128,1
    - Dst: zip_source_free
      Src: /src/libzip/src/ziptool.c:129,1
    - Dst: zip_source_close
      Src: /src/libzip/src/ziptool.c:132,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:133,1
    - Dst: zip_error_strerror
      Src: /src/libzip/src/ziptool.c:133,1
    - Dst: zip_source_error
      Src: /src/libzip/src/ziptool.c:133,1
    - Dst: zip_source_free
      Src: /src/libzip/src/ziptool.c:134,1
    - Dst: zip_source_free
      Src: /src/libzip/src/ziptool.c:137,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 4
    argNames:
    - idx
    - start
    - len
    - out
    argTypes:
    - zip_uint64_t
    - zip_uint64_t
    - zip_uint64_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 140
    functionName: cat_impl_backend
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 1
    functionsReached:
    - zip_source_error
    - zip_source_read
    - strerror
    - fprintf
    - zip_error_init
    - zip_error_strerror
    - zip_source_free
    - zip_source_close
    - fwrite
    - zip_stat_index
    - zip_error_fini
    - zip_source_open
    - zip_strerror
    - zip_source_zip_file_create
    linkageType: ''
    returnType: int
    signature: int cat_impl_backend(zip_uint64_t idx, zip_uint64_t start, zip_uint64_t
      len, FILE *out)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setmode
      Src: /src/libzip/src/ziptool.c:145,1
    - Dst: fileno
      Src: /src/libzip/src/ziptool.c:145,1
    - Dst: cat_impl_backend
      Src: /src/libzip/src/ziptool.c:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - idx
    - start
    - len
    argTypes:
    - zip_uint64_t
    - zip_uint64_t
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 142
    functionDepth: 2
    functionLinenumber: 142
    functionLinenumberEnd: 148
    functionName: cat_impl
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - cat_impl_backend
    - setmode
    - fileno
    linkageType: ''
    returnType: int
    signature: int cat_impl(zip_uint64_t idx, zip_uint64_t start, zip_uint64_t len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_buffer
      Src: /src/libzip/src/ziptool.c:153,1
    - Dst: strlen
      Src: /src/libzip/src/ziptool.c:153,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:154,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:154,1
    - Dst: zip_file_add
      Src: /src/libzip/src/ziptool.c:158,1
    - Dst: decode_filename
      Src: /src/libzip/src/ziptool.c:158,1
    - Dst: zip_source_free
      Src: /src/libzip/src/ziptool.c:159,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:160,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:160,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 164
    functionName: add
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 5
    functionsReached:
    - zip_file_add
    - decode_filename
    - fprintf
    - zip_source_free
    - strlen
    - zip_source_buffer
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int add(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_dir_add
      Src: /src/libzip/src/ziptool.c:168,1
    - Dst: decode_filename
      Src: /src/libzip/src/ziptool.c:168,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:169,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 173
    functionName: add_dir
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - decode_filename
    - zip_dir_add
    - zip_strerror
    - fprintf
    linkageType: ''
    returnType: int
    signature: int add_dir(char *argv[])
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:177,1
    - Dst: strtoll
      Src: /src/libzip/src/ziptool.c:178,1
    - Dst: strcmp
      Src: /src/libzip/src/ziptool.c:180,1
    - Dst: zip_source_filep
      Src: /src/libzip/src/ziptool.c:181,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:182,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:182,1
    - Dst: zip_source_file
      Src: /src/libzip/src/ziptool.c:187,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:188,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:188,1
    - Dst: zip_file_add
      Src: /src/libzip/src/ziptool.c:193,1
    - Dst: decode_filename
      Src: /src/libzip/src/ziptool.c:193,1
    - Dst: zip_source_free
      Src: /src/libzip/src/ziptool.c:194,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:195,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:195,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 199
    functionName: add_file
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - zip_file_add
    - decode_filename
    - strtoull
    - fprintf
    - zip_source_free
    - strcmp
    - zip_source_filep
    - zip_source_file
    - strtoll
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int add_file(char *argv[])
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:208,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:209,1
    - Dst: strtoll
      Src: /src/libzip/src/ziptool.c:210,1
    - Dst: zip_open
      Src: /src/libzip/src/ziptool.c:211,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/src/ziptool.c:213,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:214,1
    - Dst: zip_error_strerror
      Src: /src/libzip/src/ziptool.c:214,1
    - Dst: zip_error_fini
      Src: /src/libzip/src/ziptool.c:215,1
    - Dst: zip_source_zip_file
      Src: /src/libzip/src/ziptool.c:221,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:222,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:222,1
    - Dst: zip_close
      Src: /src/libzip/src/ziptool.c:223,1
    - Dst: zip_file_add
      Src: /src/libzip/src/ziptool.c:226,1
    - Dst: decode_filename
      Src: /src/libzip/src/ziptool.c:226,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:227,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:227,1
    - Dst: zip_source_free
      Src: /src/libzip/src/ziptool.c:228,1
    - Dst: zip_close
      Src: /src/libzip/src/ziptool.c:229,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 234
    functionName: add_from_zip
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - zip_strerror
    - zip_file_add
    - decode_filename
    - strtoull
    - fprintf
    - zip_error_strerror
    - zip_source_free
    - strtoll
    - zip_error_fini
    - zip_open
    - zip_close
    - zip_error_init_with_code
    - zip_source_zip_file
    linkageType: ''
    returnType: int
    signature: int add_from_zip(char *argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:239,1
    - Dst: cat_impl
      Src: /src/libzip/src/ziptool.c:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 236
    functionDepth: 3
    functionLinenumber: 236
    functionLinenumberEnd: 242
    functionName: cat
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - cat_impl
    - strtoull
    linkageType: ''
    returnType: int
    signature: int cat(char *argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:250,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:251,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:252,1
    - Dst: cat_impl
      Src: /src/libzip/src/ziptool.c:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 244
    functionDepth: 3
    functionLinenumber: 244
    functionLinenumberEnd: 255
    functionName: cat_partial
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - cat_impl
    - strtoull
    linkageType: ''
    returnType: int
    signature: int cat_partial(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:261,1
    - Dst: get_flags
      Src: /src/libzip/src/ziptool.c:262,1
    - Dst: zip_file_extra_fields_count
      Src: /src/libzip/src/ziptool.c:263,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:264,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:264,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 271
    functionName: count_extra
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strtoull
    - fprintf
    - zip_file_extra_fields_count
    - zip_strerror
    - get_flags
    - printf
    linkageType: ''
    returnType: int
    signature: int count_extra(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:278,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:279,1
    - Dst: get_flags
      Src: /src/libzip/src/ziptool.c:280,1
    - Dst: zip_file_extra_fields_count_by_id
      Src: /src/libzip/src/ziptool.c:281,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:282,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:282,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:286,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 289
    functionName: count_extra_by_id
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strtoull
    - fprintf
    - zip_strerror
    - get_flags
    - zip_file_extra_fields_count_by_id
    - printf
    linkageType: ''
    returnType: int
    signature: int count_extra_by_id(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:293,1
    - Dst: zip_delete
      Src: /src/libzip/src/ziptool.c:294,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:295,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:295,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 291
    functionDepth: 1
    functionLinenumber: 291
    functionLinenumberEnd: 299
    functionName: delete
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 2
    functionsReached:
    - zip_delete
    - zip_strerror
    - strtoull
    - fprintf
    linkageType: ''
    returnType: int
    signature: int delete(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:305,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:306,1
    - Dst: get_flags
      Src: /src/libzip/src/ziptool.c:307,1
    - Dst: zip_file_extra_field_delete
      Src: /src/libzip/src/ziptool.c:308,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:309,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 313
    functionName: delete_extra
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strtoull
    - fprintf
    - zip_strerror
    - get_flags
    - zip_file_extra_field_delete
    linkageType: ''
    returnType: int
    signature: int delete_extra(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:319,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:320,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:321,1
    - Dst: get_flags
      Src: /src/libzip/src/ziptool.c:322,1
    - Dst: zip_file_extra_field_delete_by_id
      Src: /src/libzip/src/ziptool.c:323,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:324,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 328
    functionName: delete_extra_by_id
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strtoull
    - fprintf
    - zip_strerror
    - get_flags
    - zip_file_extra_field_delete_by_id
    linkageType: ''
    returnType: int
    signature: int delete_extra_by_id(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_get_archive_comment
      Src: /src/libzip/src/ziptool.c:334,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:335,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:338,1
    - Dst: encode_filename
      Src: /src/libzip/src/ziptool.c:338,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 341
    functionName: get_archive_comment
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 2
    functionsReached:
    - zip_get_archive_comment
    - printf
    - encode_filename
    linkageType: ''
    returnType: int
    signature: int get_archive_comment(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: parse_archive_flag
      Src: /src/libzip/src/ziptool.c:344,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:346,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:350,1
    - Dst: zip_get_archive_flag
      Src: /src/libzip/src/ziptool.c:350,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 352
    functionName: get_archive_flag
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 1
    functionsReached:
    - printf
    - parse_archive_flag
    - zip_get_archive_flag
    - fprintf
    linkageType: ''
    returnType: int
    signature: int get_archive_flag(char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:360,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:361,1
    - Dst: get_flags
      Src: /src/libzip/src/ziptool.c:362,1
    - Dst: zip_file_extra_field_get
      Src: /src/libzip/src/ziptool.c:363,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:364,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:364,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:367,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:369,1
    - Dst: hexdump
      Src: /src/libzip/src/ziptool.c:370,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:372,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 354
    functionDepth: 1
    functionLinenumber: 354
    functionLinenumberEnd: 374
    functionName: get_extra
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strtoull
    - fprintf
    - hexdump
    - zip_file_extra_field_get
    - zip_strerror
    - get_flags
    - printf
    linkageType: ''
    returnType: int
    signature: int get_extra(char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:381,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:382,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:383,1
    - Dst: get_flags
      Src: /src/libzip/src/ziptool.c:384,1
    - Dst: zip_file_extra_field_get_by_id
      Src: /src/libzip/src/ziptool.c:385,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:386,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:386,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:389,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:391,1
    - Dst: hexdump
      Src: /src/libzip/src/ziptool.c:392,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:394,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 376
    functionDepth: 1
    functionLinenumber: 376
    functionLinenumberEnd: 396
    functionName: get_extra_by_id
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strtoull
    - fprintf
    - zip_file_extra_field_get_by_id
    - hexdump
    - zip_strerror
    - get_flags
    - printf
    linkageType: ''
    returnType: int
    signature: int get_extra_by_id(char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:403,1
    - Dst: zip_file_get_comment
      Src: /src/libzip/src/ziptool.c:404,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:405,1
    - Dst: zip_get_name
      Src: /src/libzip/src/ziptool.c:405,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:405,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:409,1
    - Dst: zip_get_name
      Src: /src/libzip/src/ziptool.c:409,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:412,1
    - Dst: zip_get_name
      Src: /src/libzip/src/ziptool.c:412,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 398
    functionDepth: 1
    functionLinenumber: 398
    functionLinenumberEnd: 415
    functionName: get_file_comment
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strtoull
    - zip_get_name
    - fprintf
    - zip_file_get_comment
    - zip_strerror
    - printf
    linkageType: ''
    returnType: int
    signature: int get_file_comment(char *argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_flags
      Src: /src/libzip/src/ziptool.c:421,1
    - Dst: zip_get_num_entries
      Src: /src/libzip/src/ziptool.c:422,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:423,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 425
    functionName: get_num_entries
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 3
    functionsReached:
    - printf
    - get_flags
    - zip_get_num_entries
    linkageType: ''
    returnType: int
    signature: int get_num_entries(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_flags
      Src: /src/libzip/src/ziptool.c:430,1
    - Dst: zip_name_locate
      Src: /src/libzip/src/ziptool.c:432,1
    - Dst: decode_filename
      Src: /src/libzip/src/ziptool.c:432,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:433,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:436,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 427
    functionDepth: 1
    functionLinenumber: 427
    functionLinenumberEnd: 440
    functionName: name_locate
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 2
    functionsReached:
    - decode_filename
    - fprintf
    - zip_name_locate
    - printf
    - get_flags
    linkageType: ''
    returnType: int
    signature: int name_locate(char *argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:450,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - archive
    - percentage
    - ud
    argTypes:
    - zip_t*
    - double
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 452
    functionName: progress_callback
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void progress_callback(zip_t *archive, double percentage, void *ud)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_register_progress_callback_with_state
      Src: /src/libzip/src/ziptool.c:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 457
    functionName: print_progress
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 1
    functionsReached:
    - zip_register_progress_callback_with_state
    linkageType: ''
    returnType: int
    signature: int print_progress(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:461,1
    - Dst: zip_file_rename
      Src: /src/libzip/src/ziptool.c:462,1
    - Dst: decode_filename
      Src: /src/libzip/src/ziptool.c:462,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:463,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:463,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 459
    functionDepth: 1
    functionLinenumber: 459
    functionLinenumberEnd: 467
    functionName: zrename
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - decode_filename
    - zip_file_rename
    - strtoull
    - fprintf
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int zrename(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:474,1
    - Dst: zip_source_buffer
      Src: /src/libzip/src/ziptool.c:476,1
    - Dst: strlen
      Src: /src/libzip/src/ziptool.c:476,1
    - Dst: zip_file_replace
      Src: /src/libzip/src/ziptool.c:476,1
    - Dst: zip_source_free
      Src: /src/libzip/src/ziptool.c:477,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:478,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:478,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 469
    functionDepth: 1
    functionLinenumber: 469
    functionLinenumberEnd: 482
    functionName: replace_file_contents
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - zip_file_replace
    - strtoull
    - fprintf
    - zip_source_free
    - strlen
    - zip_source_buffer
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int replace_file_contents(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:489,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:490,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:491,1
    - Dst: get_flags
      Src: /src/libzip/src/ziptool.c:492,1
    - Dst: zip_file_extra_field_set
      Src: /src/libzip/src/ziptool.c:494,1
    - Dst: strlen
      Src: /src/libzip/src/ziptool.c:494,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:495,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:495,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 484
    functionDepth: 1
    functionLinenumber: 484
    functionLinenumberEnd: 499
    functionName: set_extra
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strtoull
    - fprintf
    - strlen
    - zip_file_extra_field_set
    - zip_strerror
    - get_flags
    linkageType: ''
    returnType: int
    signature: int set_extra(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_set_archive_comment
      Src: /src/libzip/src/ziptool.c:502,1
    - Dst: strlen
      Src: /src/libzip/src/ziptool.c:502,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:503,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:503,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 507
    functionName: set_archive_comment
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 1
    functionsReached:
    - fprintf
    - zip_strerror
    - zip_set_archive_comment
    - strlen
    linkageType: ''
    returnType: int
    signature: int set_archive_comment(char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: parse_archive_flag
      Src: /src/libzip/src/ziptool.c:510,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:512,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:516,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:516,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:516,1
    - Dst: zip_set_archive_flag
      Src: /src/libzip/src/ziptool.c:518,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:519,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:519,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 509
    functionDepth: 1
    functionLinenumber: 509
    functionLinenumberEnd: 523
    functionName: set_archive_flag
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 1
    functionsReached:
    - fprintf
    - parse_archive_flag
    - strcasecmp
    - zip_set_archive_flag
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int set_archive_flag(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:528,1
    - Dst: zip_file_set_comment
      Src: /src/libzip/src/ziptool.c:529,1
    - Dst: strlen
      Src: /src/libzip/src/ziptool.c:529,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:530,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:530,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 526
    functionDepth: 1
    functionLinenumber: 526
    functionLinenumberEnd: 534
    functionName: set_file_comment
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strtoull
    - fprintf
    - strlen
    - zip_file_set_comment
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int set_file_comment(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:540,1
    - Dst: get_compression_method
      Src: /src/libzip/src/ziptool.c:541,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:542,1
    - Dst: zip_set_file_compression
      Src: /src/libzip/src/ziptool.c:543,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:544,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:544,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 536
    functionDepth: 1
    functionLinenumber: 536
    functionLinenumberEnd: 548
    functionName: set_file_compression
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 1
    functionsReached:
    - strtoull
    - fprintf
    - get_compression_method
    - zip_set_file_compression
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int set_file_compression(char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:554,1
    - Dst: get_encryption_method
      Src: /src/libzip/src/ziptool.c:555,1
    - Dst: strlen
      Src: /src/libzip/src/ziptool.c:557,1
    - Dst: zip_file_set_encryption
      Src: /src/libzip/src/ziptool.c:560,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:561,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:561,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 550
    functionDepth: 1
    functionLinenumber: 550
    functionLinenumberEnd: 565
    functionName: set_file_encryption
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strtoull
    - fprintf
    - strlen
    - get_encryption_method
    - zip_file_set_encryption
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int set_file_encryption(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:571,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:572,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:573,1
    - Dst: zip_file_set_dostime
      Src: /src/libzip/src/ziptool.c:574,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:575,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 567
    functionDepth: 1
    functionLinenumber: 567
    functionLinenumberEnd: 579
    functionName: set_file_dostime
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - zip_file_set_dostime
    - zip_strerror
    - strtoull
    - fprintf
    linkageType: ''
    returnType: int
    signature: int set_file_dostime(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:585,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:586,1
    - Dst: zip_file_set_mtime
      Src: /src/libzip/src/ziptool.c:587,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:588,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:588,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 581
    functionDepth: 1
    functionLinenumber: 581
    functionLinenumberEnd: 592
    functionName: set_file_mtime
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - zip_file_set_mtime
    - zip_strerror
    - strtoull
    - fprintf
    linkageType: ''
    returnType: int
    signature: int set_file_mtime(char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:599,1
    - Dst: zip_get_num_entries
      Src: /src/libzip/src/ziptool.c:601,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:602,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:602,1
    - Dst: zip_file_set_mtime
      Src: /src/libzip/src/ziptool.c:606,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:607,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:607,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 594
    functionDepth: 1
    functionLinenumber: 594
    functionLinenumberEnd: 612
    functionName: set_file_mtime_all
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strtoull
    - fprintf
    - zip_file_set_mtime
    - zip_get_num_entries
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int set_file_mtime_all(char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_set_default_password
      Src: /src/libzip/src/ziptool.c:616,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:617,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 614
    functionDepth: 1
    functionLinenumber: 614
    functionLinenumberEnd: 621
    functionName: set_password
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - zip_set_default_password
    - fprintf
    linkageType: ''
    returnType: int
    signature: int set_password(char *argv[])
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:627,1
    - Dst: zip_stat_index
      Src: /src/libzip/src/ziptool.c:629,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:630,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:630,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:635,1
    - Dst: encode_filename
      Src: /src/libzip/src/ziptool.c:635,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:638,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:641,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:644,1
    - Dst: zip_localtime
      Src: /src/libzip/src/ziptool.c:649,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:651,1
    - Dst: strftime
      Src: /src/libzip/src/ziptool.c:654,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:655,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:659,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:662,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:665,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:668,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:670,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 623
    functionDepth: 1
    functionLinenumber: 623
    functionLinenumberEnd: 673
    functionName: zstat
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - zip_strerror
    - strftime
    - strtoull
    - fprintf
    - zip_localtime
    - zip_stat_index
    - encode_filename
    - printf
    linkageType: ''
    returnType: int
    signature: int zstat(char *argv[])
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:676,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:679,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:682,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:685,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - arg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 689
    functionName: parse_archive_flag
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 2
    functionsReached:
    - strcasecmp
    linkageType: ''
    returnType: int
    signature: int parse_archive_flag(const char *arg)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/libzip/src/ziptool.c:693,1
    - Dst: strchr
      Src: /src/libzip/src/ziptool.c:696,1
    - Dst: strchr
      Src: /src/libzip/src/ziptool.c:699,1
    - Dst: strchr
      Src: /src/libzip/src/ziptool.c:702,1
    - Dst: strchr
      Src: /src/libzip/src/ziptool.c:705,1
    - Dst: strchr
      Src: /src/libzip/src/ziptool.c:708,1
    - Dst: strchr
      Src: /src/libzip/src/ziptool.c:711,1
    - Dst: strchr
      Src: /src/libzip/src/ziptool.c:714,1
    - Dst: strchr
      Src: /src/libzip/src/ziptool.c:717,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 1
    argNames:
    - arg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 721
      start: 691
    functionDepth: 0
    functionLinenumber: 691
    functionLinenumberEnd: 721
    functionName: get_flags
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 9
    functionsReached:
    - strchr
    linkageType: ''
    returnType: zip_flags_t
    signature: zip_flags_t get_flags(const char *arg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:724,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:727,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:730,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:734,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:745,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:748,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:753,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:758,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - arg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 723
    functionDepth: 0
    functionLinenumber: 723
    functionLinenumberEnd: 762
    functionName: get_compression_method
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 1
    functionsReached:
    - strcasecmp
    linkageType: ''
    returnType: zip_int32_t
    signature: zip_int32_t get_compression_method(const char *arg)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:765,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:768,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:771,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:774,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:777,1
    - Dst: strcasecmp
      Src: /src/libzip/src/ziptool.c:780,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - arg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 764
    functionDepth: 0
    functionLinenumber: 764
    functionLinenumberEnd: 784
    functionName: get_encryption_method
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 1
    functionsReached:
    - strcasecmp
    linkageType: ''
    returnType: zip_uint16_t
    signature: zip_uint16_t get_encryption_method(const char *arg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:793,1
    - Dst: printf
      Src: /src/libzip/src/ziptool.c:796,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - data
    - len
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 798
      start: 786
    functionDepth: 0
    functionLinenumber: 786
    functionLinenumberEnd: 798
    functionName: hexdump
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 2
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void hexdump(const zip_uint8_t *data, zip_uint16_t len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libzip/src/ziptool.c:807,1
    - Dst: zip_fdopen
      Src: /src/libzip/src/ziptool.c:808,1
    - Dst: zip_open
      Src: /src/libzip/src/ziptool.c:811,1
    - Dst: zip_error_set
      Src: /src/libzip/src/ziptool.c:814,1
    - Dst: zip_error_set
      Src: /src/libzip/src/ziptool.c:820,1
    - Dst: zip_source_file_create
      Src: /src/libzip/src/ziptool.c:823,1
    - Dst: zip_open_from_source
      Src: /src/libzip/src/ziptool.c:823,1
    - Dst: zip_source_free
      Src: /src/libzip/src/ziptool.c:824,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 5
    argNames:
    - archive
    - flags
    - error
    - offset
    - length
    argTypes:
    - char*
    - int
    - zip_error_t*
    - zip_uint64_t
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 801
    functionDepth: 1
    functionLinenumber: 801
    functionLinenumberEnd: 830
    functionName: read_from_file
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 1
    functionsReached:
    - zip_source_file_create
    - zip_error_set
    - zip_source_free
    - strcmp
    - zip_fdopen
    - zip_open_from_source
    - zip_open
    linkageType: ''
    returnType: zip_t
    signature: zip_t *read_from_file(const char *archive, int flags, zip_error_t *error,
      zip_uint64_t offset, zip_uint64_t length)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libzip/src/ziptool.c:873,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:878,1
    - Dst: function
      Src: /src/libzip/src/ziptool.c:881,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:888,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 870
    functionDepth: 0
    functionLinenumber: 870
    functionLinenumberEnd: 890
    functionName: dispatch
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - strcmp
    - function
    - fprintf
    linkageType: ''
    returnType: int
    signature: int dispatch(int argc, char *argv[])
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:902,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:904,1
    - Dst: exit
      Src: /src/libzip/src/ziptool.c:905,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:908,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:928,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:930,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:932,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:943,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:948,1
    - Dst: zip_compression_method_supported
      Src: /src/libzip/src/ziptool.c:950,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:951,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:953,1
    - Dst: zip_compression_method_supported
      Src: /src/libzip/src/ziptool.c:955,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:956,1
    - Dst: zip_compression_method_supported
      Src: /src/libzip/src/ziptool.c:958,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:959,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:961,1
    - Dst: zip_encryption_method_supported
      Src: /src/libzip/src/ziptool.c:963,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:964,1
    - Dst: zip_encryption_method_supported
      Src: /src/libzip/src/ziptool.c:966,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:967,1
    - Dst: zip_encryption_method_supported
      Src: /src/libzip/src/ziptool.c:969,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:970,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:972,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:973,1
    - Dst: exit
      Src: /src/libzip/src/ziptool.c:974,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 42
    argCount: 2
    argNames:
    - progname
    - reason
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 893
    functionDepth: 1
    functionLinenumber: 893
    functionLinenumberEnd: 975
    functionName: usage
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 1
    functionsReached:
    - zip_encryption_method_supported
    - zip_compression_method_supported
    - exit
    - fprintf
    linkageType: ''
    returnType: void
    signature: void usage(const char *progname, const char *reason)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - archive
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 979
    functionDepth: 0
    functionLinenumber: 979
    functionLinenumberEnd: 981
    functionName: ziptool_post_close
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int ziptool_post_close(const char *archive)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: getopt
      Src: /src/libzip/src/ziptool.c:995,1
    - Dst: usage
      Src: /src/libzip/src/ziptool.c:1007,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:1010,1
    - Dst: strtoull
      Src: /src/libzip/src/ziptool.c:1016,1
    - Dst: snprintf
      Src: /src/libzip/src/ziptool.c:1033,1
    - Dst: usage
      Src: /src/libzip/src/ziptool.c:1034,1
    - Dst: usage
      Src: /src/libzip/src/ziptool.c:1040,1
    - Dst: zip_error_init
      Src: /src/libzip/src/ziptool.c:1051,1
    - Dst: ziptool_open
      Src: /src/libzip/src/ziptool.c:1052,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:1054,1
    - Dst: zip_error_strerror
      Src: /src/libzip/src/ziptool.c:1054,1
    - Dst: zip_error_fini
      Src: /src/libzip/src/ziptool.c:1055,1
    - Dst: zip_error_fini
      Src: /src/libzip/src/ziptool.c:1058,1
    - Dst: dispatch
      Src: /src/libzip/src/ziptool.c:1067,1
    - Dst: zip_close
      Src: /src/libzip/src/ziptool.c:1081,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:1082,1
    - Dst: zip_strerror
      Src: /src/libzip/src/ziptool.c:1082,1
    - Dst: ziptool_post_close
      Src: /src/libzip/src/ziptool.c:1085,1
    - Dst: zip_close
      Src: /src/libzip/src/ziptool.c:1090,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 81
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 984
    functionDepth: 3
    functionLinenumber: 984
    functionLinenumberEnd: 1096
    functionName: main
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached:
    - snprintf
    - strtoull
    - zip_error_init
    - fprintf
    - zip_error_strerror
    - dispatch
    - getopt
    - ziptool_open
    - ziptool_post_close
    - usage
    - zip_error_fini
    - zip_close
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1099
      start: 1098
    functionDepth: 0
    functionLinenumber: 1098
    functionLinenumberEnd: 1099
    functionName: BIN2HEX
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BIN2HEX(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1100
      start: 1099
    functionDepth: 0
    functionLinenumber: 1099
    functionLinenumberEnd: 1100
    functionName: HEX2BIN
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HEX2BIN(c)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libzip/src/ziptool.c:1109,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:1110,1
    - Dst: exit
      Src: /src/libzip/src/ziptool.c:1111,1
    - Dst: strlen
      Src: /src/libzip/src/ziptool.c:1123,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:1124,1
    - Dst: exit
      Src: /src/libzip/src/ziptool.c:1125,1
    - Dst: BIN2HEX
      Src: /src/libzip/src/ziptool.c:1128,1
    - Dst: BIN2HEX
      Src: /src/libzip/src/ziptool.c:1129,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1104
    functionDepth: 1
    functionLinenumber: 1104
    functionLinenumberEnd: 1135
    functionName: encode_filename
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 2
    functionsReached:
    - BIN2HEX
    - fprintf
    - exit
    - strlen
    linkageType: ''
    returnType: char
    signature: char *encode_filename(const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libzip/src/ziptool.c:1142,1
    - Dst: fprintf
      Src: /src/libzip/src/ziptool.c:1143,1
    - Dst: exit
      Src: /src/libzip/src/ziptool.c:1144,1
    - Dst: HEX2BIN
      Src: /src/libzip/src/ziptool.c:1152,1
    - Dst: HEX2BIN
      Src: /src/libzip/src/ziptool.c:1152,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1137
    functionDepth: 1
    functionLinenumber: 1137
    functionLinenumberEnd: 1158
    functionName: decode_filename
    functionSourceFile: /src/libzip/src/ziptool.c
    functionUses: 6
    functionsReached:
    - HEX2BIN
    - fprintf
    - exit
    - strlen
    linkageType: ''
    returnType: char
    signature: char *decode_filename(const char *name)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: getopt
      Src: /src/libzip/src/zipmerge.c:103,1
    - Dst: fputs
      Src: /src/libzip/src/zipmerge.c:127,1
    - Dst: printf
      Src: /src/libzip/src/zipmerge.c:128,1
    - Dst: fputs
      Src: /src/libzip/src/zipmerge.c:129,1
    - Dst: exit
      Src: /src/libzip/src/zipmerge.c:130,1
    - Dst: fputs
      Src: /src/libzip/src/zipmerge.c:132,1
    - Dst: exit
      Src: /src/libzip/src/zipmerge.c:133,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:136,1
    - Dst: exit
      Src: /src/libzip/src/zipmerge.c:137,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:142,1
    - Dst: exit
      Src: /src/libzip/src/zipmerge.c:143,1
    - Dst: malloc
      Src: /src/libzip/src/zipmerge.c:150,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:151,1
    - Dst: exit
      Src: /src/libzip/src/zipmerge.c:152,1
    - Dst: zip_open
      Src: /src/libzip/src/zipmerge.c:155,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/src/zipmerge.c:157,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:158,1
    - Dst: zip_error_strerror
      Src: /src/libzip/src/zipmerge.c:158,1
    - Dst: zip_error_fini
      Src: /src/libzip/src/zipmerge.c:159,1
    - Dst: exit
      Src: /src/libzip/src/zipmerge.c:160,1
    - Dst: merge_zip
      Src: /src/libzip/src/zipmerge.c:164,1
    - Dst: exit
      Src: /src/libzip/src/zipmerge.c:165,1
    - Dst: zip_close
      Src: /src/libzip/src/zipmerge.c:169,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:170,1
    - Dst: zip_strerror
      Src: /src/libzip/src/zipmerge.c:170,1
    - Dst: exit
      Src: /src/libzip/src/zipmerge.c:171,1
    - Dst: zip_close
      Src: /src/libzip/src/zipmerge.c:175,1
    - Dst: exit
      Src: /src/libzip/src/zipmerge.c:178,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 70
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 179
    functionName: main
    functionSourceFile: /src/libzip/src/zipmerge.c
    functionUses: 0
    functionsReached:
    - zip_strerror
    - fprintf
    - zip_error_strerror
    - merge_zip
    - getopt
    - malloc
    - exit
    - zip_open
    - zip_error_init_with_code
    - zip_error_fini
    - fputs
    - zip_close
    - printf
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: zip_stat_index
      Src: /src/libzip/src/zipmerge.c:193,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:194,1
    - Dst: zip_strerror
      Src: /src/libzip/src/zipmerge.c:194,1
    - Dst: zip_stat_index
      Src: /src/libzip/src/zipmerge.c:197,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:198,1
    - Dst: zip_strerror
      Src: /src/libzip/src/zipmerge.c:198,1
    - Dst: printf
      Src: /src/libzip/src/zipmerge.c:211,1
    - Dst: fflush
      Src: /src/libzip/src/zipmerge.c:214,1
    - Dst: fgets
      Src: /src/libzip/src/zipmerge.c:216,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:217,1
    - Dst: strerror
      Src: /src/libzip/src/zipmerge.c:217,1
    - Dst: tolower
      Src: /src/libzip/src/zipmerge.c:221,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 6
    argNames:
    - za
    - tname
    - it
    - zs
    - sname
    - is
    argTypes:
    - zip_t*
    - char*
    - zip_uint64_t
    - zip_t*
    - char*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 226
    functionName: confirm_replace
    functionSourceFile: /src/libzip/src/zipmerge.c
    functionUses: 0
    functionsReached:
    - zip_strerror
    - fgets
    - strerror
    - fprintf
    - zip_stat_index
    - fflush
    - printf
    - tolower
    linkageType: ''
    returnType: int
    signature: int confirm_replace(zip_t *za, const char *tname, zip_uint64_t it,
      zip_t *zs, const char *sname, zip_uint64_t is)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: zip_open
      Src: /src/libzip/src/zipmerge.c:236,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/src/zipmerge.c:238,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:239,1
    - Dst: zip_error_strerror
      Src: /src/libzip/src/zipmerge.c:239,1
    - Dst: zip_error_fini
      Src: /src/libzip/src/zipmerge.c:240,1
    - Dst: zip_get_num_entries
      Src: /src/libzip/src/zipmerge.c:244,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:246,1
    - Dst: zip_strerror
      Src: /src/libzip/src/zipmerge.c:246,1
    - Dst: zip_get_name
      Src: /src/libzip/src/zipmerge.c:250,1
    - Dst: zip_name_locate
      Src: /src/libzip/src/zipmerge.c:252,1
    - Dst: confirm_replace
      Src: /src/libzip/src/zipmerge.c:253,1
    - Dst: copy_file
      Src: /src/libzip/src/zipmerge.c:258,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:259,1
    - Dst: zip_strerror
      Src: /src/libzip/src/zipmerge.c:259,1
    - Dst: zip_close
      Src: /src/libzip/src/zipmerge.c:260,1
    - Dst: zip_close
      Src: /src/libzip/src/zipmerge.c:266,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:270,1
    - Dst: zip_close
      Src: /src/libzip/src/zipmerge.c:274,1
    - Dst: copy_file
      Src: /src/libzip/src/zipmerge.c:279,1
    - Dst: fprintf
      Src: /src/libzip/src/zipmerge.c:280,1
    - Dst: zip_strerror
      Src: /src/libzip/src/zipmerge.c:280,1
    - Dst: zip_close
      Src: /src/libzip/src/zipmerge.c:281,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 42
    argCount: 3
    argNames:
    - za
    - tname
    - sname
    argTypes:
    - zip_t*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 229
    functionDepth: 2
    functionLinenumber: 229
    functionLinenumberEnd: 288
    functionName: merge_zip
    functionSourceFile: /src/libzip/src/zipmerge.c
    functionUses: 1
    functionsReached:
    - zip_strerror
    - copy_file
    - zip_get_name
    - fprintf
    - zip_name_locate
    - zip_error_strerror
    - zip_get_num_entries
    - confirm_replace
    - zip_error_fini
    - zip_open
    - zip_close
    - zip_error_init_with_code
    linkageType: ''
    returnType: zip_t
    signature: zip_t *merge_zip(zip_t *za, const char *tname, const char *sname)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_zip_file
      Src: /src/libzip/src/zipmerge.c:292,1
    - Dst: zip_file_replace
      Src: /src/libzip/src/zipmerge.c:299,1
    - Dst: zip_source_free
      Src: /src/libzip/src/zipmerge.c:300,1
    - Dst: zip_file_add
      Src: /src/libzip/src/zipmerge.c:305,1
    - Dst: zip_source_free
      Src: /src/libzip/src/zipmerge.c:307,1
    - Dst: copy_extra_fields
      Src: /src/libzip/src/zipmerge.c:312,1
    - Dst: copy_extra_fields
      Src: /src/libzip/src/zipmerge.c:313,1
    - Dst: zip_stat_index
      Src: /src/libzip/src/zipmerge.c:316,1
    - Dst: zip_set_file_compression
      Src: /src/libzip/src/zipmerge.c:317,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 5
    argNames:
    - destination_archive
    - destination_index
    - source_archive
    - source_index
    - name
    argTypes:
    - zip_t*
    - zip_int64_t
    - zip_t*
    - zip_uint64_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 291
    functionDepth: 1
    functionLinenumber: 291
    functionLinenumberEnd: 322
    functionName: copy_file
    functionSourceFile: /src/libzip/src/zipmerge.c
    functionUses: 1
    functionsReached:
    - zip_file_replace
    - zip_file_add
    - zip_source_free
    - zip_stat_index
    - copy_extra_fields
    - zip_set_file_compression
    - zip_source_zip_file
    linkageType: ''
    returnType: int
    signature: int copy_file(zip_t *destination_archive, zip_int64_t destination_index,
      zip_t *source_archive, zip_uint64_t source_index, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_file_extra_fields_count
      Src: /src/libzip/src/zipmerge.c:330,1
    - Dst: zip_file_extra_field_get
      Src: /src/libzip/src/zipmerge.c:335,1
    - Dst: zip_file_extra_field_set
      Src: /src/libzip/src/zipmerge.c:338,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 5
    argNames:
    - destination_archive
    - destination_index
    - source_archive
    - source_index
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_t*
    - zip_uint64_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 340
    functionName: copy_extra_fields
    functionSourceFile: /src/libzip/src/zipmerge.c
    functionUses: 1
    functionsReached:
    - zip_file_extra_fields_count
    - zip_file_extra_field_set
    - zip_file_extra_field_get
    linkageType: ''
    returnType: void
    signature: void copy_extra_fields(zip_t *destination_archive, zip_uint64_t destination_index,
      zip_t *source_archive, zip_uint64_t source_index, zip_flags_t flags)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/libzip/src/getopt.c:74,1
    - Dst: fprintf
      Src: /src/libzip/src/getopt.c:86,1
    - Dst: fprintf
      Src: /src/libzip/src/getopt.c:106,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 3
    argNames:
    - nargc
    - nargv
    - ostr
    argTypes:
    - int
    - char**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 117
    functionName: getopt
    functionSourceFile: /src/libzip/src/getopt.c
    functionUses: 6
    functionsReached:
    - strchr
    - fprintf
    linkageType: ''
    returnType: int
    signature: int getopt(int nargc, char *const *nargv, const char *ostr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libzip/src/diff_output.c:12,1
    - Dst: printf
      Src: /src/libzip/src/diff_output.c:13,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - output
    argTypes:
    - diff_output_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 10
    functionDepth: 0
    functionLinenumber: 10
    functionLinenumberEnd: 17
    functionName: ensure_header
    functionSourceFile: /src/libzip/src/diff_output.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void ensure_header(diff_output_t *output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - output
    - verbose
    - archive_names
    argTypes:
    - diff_output_t*
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 27
    functionName: diff_output_init
    functionSourceFile: /src/libzip/src/diff_output.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void diff_output_init(diff_output_t *output, int verbose, char *const
      archive_names[])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - output
    - name
    - size
    - crc
    - mtime
    argTypes:
    - diff_output_t*
    - char*
    - zip_uint64_t
    - zip_uint32_t
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 34
    functionName: diff_output_start_file
    functionSourceFile: /src/libzip/src/diff_output.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void diff_output_start_file(diff_output_t *output, const char *name,
      zip_uint64_t size, zip_uint32_t crc, zip_uint64_t mtime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - output
    argTypes:
    - diff_output_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: diff_output_end_file
    functionSourceFile: /src/libzip/src/diff_output.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void diff_output_end_file(diff_output_t *output)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ensure_header
      Src: /src/libzip/src/diff_output.c:47,1
    - Dst: diff_output_file
      Src: /src/libzip/src/diff_output.c:50,1
    - Dst: printf
      Src: /src/libzip/src/diff_output.c:54,1
    - Dst: va_start
      Src: /src/libzip/src/diff_output.c:55,1
    - Dst: vprintf
      Src: /src/libzip/src/diff_output.c:56,1
    - Dst: va_end
      Src: /src/libzip/src/diff_output.c:57,1
    - Dst: printf
      Src: /src/libzip/src/diff_output.c:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - output
    - side
    - fmt
    argTypes:
    - diff_output_t*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 59
    functionName: diff_output
    functionSourceFile: /src/libzip/src/diff_output.c
    functionUses: 1
    functionsReached:
    - vprintf
    - ensure_header
    - va_end
    - va_start
    - diff_output_file
    - printf
    linkageType: ''
    returnType: void
    signature: void diff_output(diff_output_t *output, int side, const char *fmt,
      ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ensure_header
      Src: /src/libzip/src/diff_output.c:66,1
    - Dst: strlen
      Src: /src/libzip/src/diff_output.c:68,1
    - Dst: printf
      Src: /src/libzip/src/diff_output.c:69,1
    - Dst: printf
      Src: /src/libzip/src/diff_output.c:72,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 6
    argNames:
    - output
    - side
    - name
    - size
    - crc
    - mtime
    argTypes:
    - diff_output_t*
    - char
    - char*
    - zip_uint64_t
    - zip_uint32_t
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionName: diff_output_file
    functionSourceFile: /src/libzip/src/diff_output.c
    functionUses: 2
    functionsReached:
    - printf
    - ensure_header
    - strlen
    linkageType: ''
    returnType: void
    signature: void diff_output_file(diff_output_t *output, char side, const char
      *name, zip_uint64_t size, zip_uint32_t crc, zip_uint64_t mtime)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/libzip/src/diff_output.c:88,1
    - Dst: snprintf
      Src: /src/libzip/src/diff_output.c:96,1
    - Dst: snprintf
      Src: /src/libzip/src/diff_output.c:99,1
    - Dst: va_start
      Src: /src/libzip/src/diff_output.c:107,1
    - Dst: vsnprintf
      Src: /src/libzip/src/diff_output.c:108,1
    - Dst: va_end
      Src: /src/libzip/src/diff_output.c:109,1
    - Dst: diff_output
      Src: /src/libzip/src/diff_output.c:112,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 5
    argNames:
    - output
    - side
    - data
    - data_length
    - fmt
    argTypes:
    - diff_output_t*
    - int
    - zip_uint8_t*
    - zip_uint64_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 113
    functionName: diff_output_data
    functionSourceFile: /src/libzip/src/diff_output.c
    functionUses: 3
    functionsReached:
    - snprintf
    - strcpy
    - va_end
    - va_start
    - diff_output
    - vsnprintf
    linkageType: ''
    returnType: void
    signature: void diff_output_data(diff_output_t *output, int side, const zip_uint8_t
      *data, zip_uint64_t data_length, const char *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - n
    - ','
    - m
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 16
    functionDepth: 0
    functionLinenumber: 16
    functionLinenumberEnd: 17
    functionName: PRINTF_LIKE
    functionSourceFile: /src/libzip/src/diff_output.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRINTF_LIKE(n, m)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: remove
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:29,1
    - Dst: zip_open
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:30,1
    - Dst: zip_source_buffer
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:34,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:36,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:36,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:37,1
    - Dst: zip_file_add
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:41,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:43,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:43,1
    - Dst: zip_source_free
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:44,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:45,1
    - Dst: zip_file_set_encryption
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:48,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:49,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:49,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:50,1
    - Dst: zip_close
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:53,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:54,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:54,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:55,1
    - Dst: remove
      Src: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c:58,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 61
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c
    functionUses: 0
    functionsReached:
    - zip_file_add
    - fprintf
    - zip_source_free
    - zip_close
    - remove
    - zip_discard
    - zip_open
    - zip_file_set_encryption
    - zip_source_buffer
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: remove
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:30,1
    - Dst: zip_open
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:31,1
    - Dst: zip_source_buffer
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:35,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:37,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:37,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:38,1
    - Dst: zip_file_add
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:42,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:44,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:44,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:45,1
    - Dst: zip_file_set_encryption
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:48,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:49,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:49,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:50,1
    - Dst: zip_close
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:53,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:54,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:54,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:55,1
    - Dst: remove
      Src: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c:58,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 23
    functionDepth: 1
    functionLinenumber: 23
    functionLinenumberEnd: 61
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c
    functionUses: 0
    functionsReached:
    - zip_file_add
    - fprintf
    - zip_close
    - remove
    - zip_discard
    - zip_open
    - zip_file_set_encryption
    - zip_source_buffer
    - zip_strerror
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - stream_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: u8
    functionSourceFile: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint8_t
    signature: uint8_t u8(stream_t *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:53,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - stream_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: u16
    functionSourceFile: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c
    functionUses: 0
    functionsReached:
    - u8
    linkageType: ''
    returnType: uint16_t
    signature: uint16_t u16(stream_t *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - s
    - max
    - out_len
    argTypes:
    - stream_t*
    - size_t
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 70
    functionName: take
    functionSourceFile: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint8_t
    signature: 'uint8_t *

      take(stream_t *s, size_t max, size_t *out_len)'
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_init
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:82,1
    - Dst: zip_source_buffer_create
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:85,1
    - Dst: zip_error_fini
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:87,1
    - Dst: zip_source_keep
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:92,1
    - Dst: zip_open_from_source
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:94,1
    - Dst: zip_source_free
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:96,1
    - Dst: zip_error_fini
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:97,1
    - Dst: zip_error_fini
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:100,1
    - Dst: zip_set_default_password
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:102,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:108,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:110,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:112,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:116,1
    - Dst: take
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:129,1
    - Dst: u16
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:129,1
    - Dst: malloc
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:130,1
    - Dst: memcpy
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:140,1
    - Dst: zip_source_buffer
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:143,1
    - Dst: free
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:145,1
    - Dst: zip_file_add
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:148,1
    - Dst: zip_source_free
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:150,1
    - Dst: zip_set_file_compression
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:156,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:156,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:156,1
    - Dst: zip_file_set_encryption
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:162,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:162,1
    - Dst: zip_dir_add
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:167,1
    - Dst: take
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:172,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:172,1
    - Dst: zip_set_archive_comment
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:173,1
    - Dst: zip_get_num_entries
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:178,1
    - Dst: u16
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:183,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:184,1
    - Dst: take
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:186,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:186,1
    - Dst: zip_file_set_comment
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:187,1
    - Dst: u16
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:190,1
    - Dst: take
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:192,1
    - Dst: u8
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:192,1
    - Dst: zip_file_extra_field_set
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:193,1
    - Dst: zip_get_num_entries
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:199,1
    - Dst: zip_file_rename
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:203,1
    - Dst: u16
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:203,1
    - Dst: zip_get_num_entries
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:208,1
    - Dst: zip_delete
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:212,1
    - Dst: u16
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:212,1
    - Dst: zip_close
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:219,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:220,1
    - Dst: zip_source_free
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:221,1
    - Dst: zip_source_keep
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:229,1
    - Dst: zip_error_init
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:230,1
    - Dst: zip_open_from_source
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:231,1
    - Dst: zip_source_free
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:233,1
    - Dst: zip_source_free
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:234,1
    - Dst: zip_error_fini
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:235,1
    - Dst: zip_error_fini
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:238,1
    - Dst: zip_set_default_password
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:240,1
    - Dst: zip_get_num_entries
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:242,1
    - Dst: zip_fopen_index
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:246,1
    - Dst: zip_fread
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:250,1
    - Dst: zip_fclose
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:253,1
    - Dst: zip_close
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:257,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:258,1
    - Dst: zip_source_free
      Src: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c:260,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 125
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 262
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c
    functionUses: 0
    functionsReached:
    - zip_file_add
    - free
    - memcpy
    - zip_error_init
    - zip_source_free
    - zip_set_default_password
    - zip_file_set_comment
    - zip_file_extra_field_set
    - zip_source_buffer
    - u16
    - zip_get_num_entries
    - zip_file_set_encryption
    - zip_close
    - take
    - zip_fread
    - zip_source_keep
    - zip_fopen_index
    - zip_source_buffer_create
    - zip_open_from_source
    - zip_set_file_compression
    - zip_error_fini
    - u8
    - zip_delete
    - zip_fclose
    - zip_file_rename
    - zip_set_archive_comment
    - malloc
    - zip_discard
    - zip_dir_add
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: remove
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:59,1
    - Dst: fopen
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:60,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:61,1
    - Dst: strerror
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:61,1
    - Dst: fwrite
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:64,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:65,1
    - Dst: strerror
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:65,1
    - Dst: fclose
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:66,1
    - Dst: remove
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:67,1
    - Dst: fclose
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:70,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:71,1
    - Dst: strerror
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:71,1
    - Dst: remove
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:72,1
    - Dst: zip_open
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:76,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:77,1
    - Dst: fuzzer_read
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:79,1
    - Dst: remove
      Src: /src/libzip/ossfuzz/zip_read_file_fuzzer.c:81,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 83
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libzip/ossfuzz/zip_read_file_fuzzer.c
    functionUses: 0
    functionsReached:
    - fopen
    - fprintf
    - fwrite
    - remove
    - zip_error_init_with_code
    - zip_open
    - fclose
    - strerror
    - fuzzer_read
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:41,1
    - Dst: zip_error_strerror
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:41,1
    - Dst: zip_error_fini
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:42,1
    - Dst: zip_set_default_password
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:46,1
    - Dst: zip_error_fini
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:48,1
    - Dst: zip_get_num_entries
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:50,1
    - Dst: zip_fopen_index
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:52,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:54,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:54,1
    - Dst: zip_fread
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:58,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:62,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:62,1
    - Dst: zip_fclose
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:64,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:65,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:65,1
    - Dst: zip_close
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:69,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:70,1
    - Dst: zip_strerror
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:70,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_read_fuzzer_common.h:71,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 3
    argNames:
    - za
    - error
    - password
    argTypes:
    - zip_t*
    - zip_error_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 73
    functionName: fuzzer_read
    functionSourceFile: /src/libzip/ossfuzz/zip_read_fuzzer_common.h
    functionUses: 1
    functionsReached:
    - zip_fread
    - zip_fclose
    - zip_fopen_index
    - fprintf
    - zip_error_strerror
    - zip_get_num_entries
    - zip_set_default_password
    - zip_discard
    - zip_error_fini
    - zip_close
    - zip_strerror
    linkageType: ''
    returnType: void
    signature: void fuzzer_read(zip_t *za, zip_error_t *error, const char *password)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/fuzz_main.c:15,1
    - Dst: fopen
      Src: /src/libzip/ossfuzz/fuzz_main.c:19,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/fuzz_main.c:21,1
    - Dst: fseek
      Src: /src/libzip/ossfuzz/fuzz_main.c:25,1
    - Dst: ftell
      Src: /src/libzip/ossfuzz/fuzz_main.c:27,1
    - Dst: rewind
      Src: /src/libzip/ossfuzz/fuzz_main.c:28,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/fuzz_main.c:31,1
    - Dst: malloc
      Src: /src/libzip/ossfuzz/fuzz_main.c:35,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/fuzz_main.c:37,1
    - Dst: fread
      Src: /src/libzip/ossfuzz/fuzz_main.c:41,1
    - Dst: fprintf
      Src: /src/libzip/ossfuzz/fuzz_main.c:42,1
    - Dst: fclose
      Src: /src/libzip/ossfuzz/fuzz_main.c:45,1
    - Dst: LLVMFuzzerTestOneInput
      Src: /src/libzip/ossfuzz/fuzz_main.c:48,1
    - Dst: fclose
      Src: /src/libzip/ossfuzz/fuzz_main.c:52,1
    - Dst: free
      Src: /src/libzip/ossfuzz/fuzz_main.c:54,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 9
    functionDepth: 0
    functionLinenumber: 9
    functionLinenumberEnd: 57
    functionName: main
    functionSourceFile: /src/libzip/ossfuzz/fuzz_main.c
    functionUses: 0
    functionsReached:
    - LLVMFuzzerTestOneInput
    - ftell
    - fopen
    - free
    - fprintf
    - malloc
    - fseek
    - fclose
    - rewind
    - fread
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_init
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:57,1
    - Dst: zip_source_buffer_create
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:59,1
    - Dst: zip_error_fini
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:61,1
    - Dst: zip_open_from_source
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:65,1
    - Dst: zip_error_fini
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:67,1
    - Dst: zip_source_free
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:68,1
    - Dst: zip_error_fini
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:71,1
    - Dst: zip_get_archive_comment
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:75,1
    - Dst: zip_get_num_entries
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:77,1
    - Dst: zip_stat_init
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:82,1
    - Dst: zip_stat_index
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:83,1
    - Dst: zip_file_get_external_attributes
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:88,1
    - Dst: zip_file_get_comment
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:92,1
    - Dst: zip_file_extra_fields_count
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:95,1
    - Dst: zip_file_extra_field_get
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:99,1
    - Dst: zip_file_extra_fields_count
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:103,1
    - Dst: zip_file_extra_field_get
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:107,1
    - Dst: zip_file_extra_field_get_by_id
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:115,1
    - Dst: zip_file_extra_field_get_by_id
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:119,1
    - Dst: zip_close
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:125,1
    - Dst: zip_discard
      Src: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c:126,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 129
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c
    functionUses: 1
    functionsReached:
    - zip_error_init
    - zip_get_archive_comment
    - zip_file_extra_fields_count
    - zip_source_free
    - zip_file_get_external_attributes
    - zip_source_buffer_create
    - zip_file_extra_field_get_by_id
    - zip_close
    - zip_get_num_entries
    - zip_stat_index
    - zip_discard
    - zip_file_get_comment
    - zip_open_from_source
    - zip_error_fini
    - zip_file_extra_field_get
    - zip_stat_init
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_init
      Src: /src/libzip/ossfuzz/zip_read_fuzzer.c:15,1
    - Dst: zip_source_buffer_create
      Src: /src/libzip/ossfuzz/zip_read_fuzzer.c:17,1
    - Dst: zip_error_fini
      Src: /src/libzip/ossfuzz/zip_read_fuzzer.c:18,1
    - Dst: zip_open_from_source
      Src: /src/libzip/ossfuzz/zip_read_fuzzer.c:22,1
    - Dst: fuzzer_read
      Src: /src/libzip/ossfuzz/zip_read_fuzzer.c:24,1
    - Dst: zip_source_free
      Src: /src/libzip/ossfuzz/zip_read_fuzzer.c:27,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 10
    functionDepth: 2
    functionLinenumber: 10
    functionLinenumberEnd: 31
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libzip/ossfuzz/zip_read_fuzzer.c
    functionUses: 1
    functionsReached:
    - zip_error_init
    - zip_source_free
    - zip_source_buffer_create
    - zip_open_from_source
    - zip_error_fini
    - fuzzer_read
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - zip_buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: _zip_buffer_data
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint8_t
    signature: zip_uint8_t *_zip_buffer_data(zip_buffer_t *buffer)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/lib/zip_buffer.c:50,1
    - Dst: free
      Src: /src/libzip/lib/zip_buffer.c:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - zip_buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 54
    functionName: _zip_buffer_free
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void _zip_buffer_free(zip_buffer_t *buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - zip_buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: _zip_buffer_eof
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool _zip_buffer_eof(zip_buffer_t *buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_peek
      Src: /src/libzip/lib/zip_buffer.c:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - buffer
    - length
    argTypes:
    - zip_buffer_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 72
    functionName: _zip_buffer_get
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_peek
    linkageType: ''
    returnType: zip_uint8_t
    signature: zip_uint8_t *_zip_buffer_get(zip_buffer_t *buffer, zip_uint64_t length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_buffer.c:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - zip_buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 83
    functionName: _zip_buffer_get_16
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_get
    linkageType: ''
    returnType: zip_uint16_t
    signature: zip_uint16_t _zip_buffer_get_16(zip_buffer_t *buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_buffer.c:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - zip_buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 94
    functionName: _zip_buffer_get_32
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_get
    linkageType: ''
    returnType: zip_uint32_t
    signature: zip_uint32_t _zip_buffer_get_32(zip_buffer_t *buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_buffer.c:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - zip_buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 97
    functionDepth: 2
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionName: _zip_buffer_get_64
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_get
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t _zip_buffer_get_64(zip_buffer_t *buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_buffer.c:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - zip_buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 116
    functionName: _zip_buffer_get_8
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_get
    linkageType: ''
    returnType: zip_uint8_t
    signature: zip_uint8_t _zip_buffer_get_8(zip_buffer_t *buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - zip_buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: _zip_buffer_left
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t _zip_buffer_left(zip_buffer_t *buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_left
      Src: /src/libzip/lib/zip_buffer.c:127,1
    - Dst: _zip_buffer_left
      Src: /src/libzip/lib/zip_buffer.c:128,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_buffer.c:133,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_buffer.c:134,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_buffer.c:134,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - buffer
    - data
    - length
    argTypes:
    - zip_buffer_t*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 139
    functionName: _zip_buffer_read
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - memcpy_s
    - ZIP_MIN
    - _zip_buffer_left
    - _zip_buffer_get
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t _zip_buffer_read(zip_buffer_t *buffer, zip_uint8_t *data,
      zip_uint64_t length)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_buffer.c:153,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_buffer.c:158,1
    - Dst: free
      Src: /src/libzip/lib/zip_buffer.c:160,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 172
    functionName: _zip_buffer_new
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - free
    - malloc
    linkageType: ''
    returnType: zip_buffer_t
    signature: zip_buffer_t *_zip_buffer_new(zip_uint8_t *data, zip_uint64_t size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_buffer.c:178,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_buffer.c:179,1
    - Dst: _zip_read
      Src: /src/libzip/lib/zip_buffer.c:183,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_buffer.c:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - src
    - size
    - buf
    - error
    argTypes:
    - zip_source_t*
    - zip_uint64_t
    - zip_uint8_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 189
    functionName: _zip_buffer_new_from_source
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_new
    - _zip_read
    - zip_error_set
    - _zip_buffer_free
    linkageType: ''
    returnType: zip_buffer_t
    signature: zip_buffer_t *_zip_buffer_new_from_source(zip_source_t *src, zip_uint64_t
      size, zip_uint8_t *buf, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - zip_buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: _zip_buffer_offset
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t _zip_buffer_offset(zip_buffer_t *buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - zip_buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: _zip_buffer_ok
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool _zip_buffer_ok(zip_buffer_t *buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - buffer
    - length
    argTypes:
    - zip_buffer_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 212
    functionName: _zip_buffer_peek
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: zip_uint8_t
    signature: zip_uint8_t *_zip_buffer_peek(zip_buffer_t *buffer, zip_uint64_t length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_buffer.c:215,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_buffer.c:221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - buffer
    - src
    - length
    argTypes:
    - zip_buffer_t*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 214
    functionDepth: 2
    functionLinenumber: 214
    functionLinenumberEnd: 223
    functionName: _zip_buffer_put
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - memcpy_s
    - _zip_buffer_get
    linkageType: ''
    returnType: int
    signature: int _zip_buffer_put(zip_buffer_t *buffer, const void *src, size_t length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_buffer.c:227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - buffer
    - i
    argTypes:
    - zip_buffer_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 237
    functionName: _zip_buffer_put_16
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_get
    linkageType: ''
    returnType: int
    signature: int _zip_buffer_put_16(zip_buffer_t *buffer, zip_uint16_t i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_buffer.c:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - buffer
    - i
    argTypes:
    - zip_buffer_t*
    - zip_uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 240
    functionDepth: 2
    functionLinenumber: 240
    functionLinenumberEnd: 253
    functionName: _zip_buffer_put_32
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_get
    linkageType: ''
    returnType: int
    signature: int _zip_buffer_put_32(zip_buffer_t *buffer, zip_uint32_t i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_buffer.c:257,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - buffer
    - i
    argTypes:
    - zip_buffer_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 273
    functionName: _zip_buffer_put_64
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_get
    linkageType: ''
    returnType: int
    signature: int _zip_buffer_put_64(zip_buffer_t *buffer, zip_uint64_t i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_buffer.c:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - buffer
    - i
    argTypes:
    - zip_buffer_t*
    - zip_uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 276
    functionDepth: 2
    functionLinenumber: 276
    functionLinenumberEnd: 286
    functionName: _zip_buffer_put_8
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_get
    linkageType: ''
    returnType: int
    signature: int _zip_buffer_put_8(zip_buffer_t *buffer, zip_uint8_t i)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - buffer
    - offset
    argTypes:
    - zip_buffer_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 299
    functionName: _zip_buffer_set_offset
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int _zip_buffer_set_offset(zip_buffer_t *buffer, zip_uint64_t offset)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_buffer.c:309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - buffer
    - length
    argTypes:
    - zip_buffer_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 310
    functionName: _zip_buffer_skip
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_set_offset
    linkageType: ''
    returnType: int
    signature: int _zip_buffer_skip(zip_buffer_t *buffer, zip_uint64_t length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - zip_buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 314
    functionName: _zip_buffer_size
    functionSourceFile: /src/libzip/lib/zip_buffer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t _zip_buffer_size(zip_buffer_t *buffer)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_open.c:72,1
    - Dst: zip_source_file_create
      Src: /src/libzip/lib/zip_open.c:73,1
    - Dst: _zip_set_open_error
      Src: /src/libzip/lib/zip_open.c:74,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_open.c:75,1
    - Dst: zip_open_from_source
      Src: /src/libzip/lib/zip_open.c:79,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_open.c:80,1
    - Dst: _zip_set_open_error
      Src: /src/libzip/lib/zip_open.c:81,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_open.c:82,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_open.c:86,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - fn
    - _flags
    - zep
    argTypes:
    - char*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 88
    functionName: zip_open
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 13
    functionsReached:
    - zip_source_file_create
    - zip_error_init
    - zip_source_free
    - _zip_set_open_error
    - zip_open_from_source
    - zip_error_fini
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_open(const char *fn, int _flags, int *zep)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:97,1
    - Dst: zip_source_supports
      Src: /src/libzip/lib/zip_open.c:102,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:104,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:112,1
    - Dst: _zip_file_exists
      Src: /src/libzip/lib/zip_open.c:116,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:123,1
    - Dst: _zip_allocate_new
      Src: /src/libzip/lib/zip_open.c:126,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:131,1
    - Dst: zip_source_open
      Src: /src/libzip/lib/zip_open.c:134,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_open.c:135,1
    - Dst: _zip_allocate_new
      Src: /src/libzip/lib/zip_open.c:140,1
    - Dst: _zip_open
      Src: /src/libzip/lib/zip_open.c:144,1
    - Dst: zip_source_close
      Src: /src/libzip/lib/zip_open.c:148,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 3
    argNames:
    - src
    - _flags
    - error
    argTypes:
    - zip_source_t*
    - int
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 154
    functionName: zip_open_from_source
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 7
    functionsReached:
    - zip_error_set_from_source
    - _zip_open
    - zip_error_set
    - _zip_allocate_new
    - zip_source_close
    - zip_source_supports
    - _zip_file_exists
    - zip_source_open
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_open_from_source(zip_source_t *src, int _flags, zip_error_t
      *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_open.c:161,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_open.c:165,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_open.c:169,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 174
    functionName: _is_truncated_zip
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 0
    functionsReached:
    - zip_source_seek
    - zip_source_read
    - memcmp
    linkageType: ''
    returnType: bool
    signature: bool _is_truncated_zip(zip_source_t *src)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: zip_stat_init
      Src: /src/libzip/lib/zip_open.c:183,1
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_open.c:184,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_open.c:185,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:189,1
    - Dst: _zip_allocate_new
      Src: /src/libzip/lib/zip_open.c:195,1
    - Dst: zip_source_accept_empty
      Src: /src/libzip/lib/zip_open.c:200,1
    - Dst: _zip_find_central_dir
      Src: /src/libzip/lib/zip_open.c:204,1
    - Dst: _zip_error_copy
      Src: /src/libzip/lib/zip_open.c:205,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_open.c:206,1
    - Dst: _is_truncated_zip
      Src: /src/libzip/lib/zip_open.c:208,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:209,1
    - Dst: zip_source_keep
      Src: /src/libzip/lib/zip_open.c:213,1
    - Dst: zip_discard
      Src: /src/libzip/lib/zip_open.c:214,1
    - Dst: zip_check_torrentzip
      Src: /src/libzip/lib/zip_open.c:222,1
    - Dst: ZIP_IS_TORRENTZIP
      Src: /src/libzip/lib/zip_open.c:224,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_open.c:226,1
    - Dst: free
      Src: /src/libzip/lib/zip_open.c:232,1
    - Dst: _zip_hash_reserve_capacity
      Src: /src/libzip/lib/zip_open.c:234,1
    - Dst: _zip_string_get
      Src: /src/libzip/lib/zip_open.c:237,1
    - Dst: zip_source_keep
      Src: /src/libzip/lib/zip_open.c:240,1
    - Dst: zip_discard
      Src: /src/libzip/lib/zip_open.c:241,1
    - Dst: _zip_hash_add
      Src: /src/libzip/lib/zip_open.c:245,1
    - Dst: _zip_error_copy
      Src: /src/libzip/lib/zip_open.c:247,1
    - Dst: zip_source_keep
      Src: /src/libzip/lib/zip_open.c:249,1
    - Dst: zip_discard
      Src: /src/libzip/lib/zip_open.c:250,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 56
    argCount: 3
    argNames:
    - src
    - flags
    - error
    argTypes:
    - zip_source_t*
    - unsigned int
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 177
    functionDepth: 2
    functionLinenumber: 177
    functionLinenumberEnd: 259
    functionName: _zip_open
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 1
    functionsReached:
    - free
    - _zip_find_central_dir
    - _zip_error_copy
    - zip_source_accept_empty
    - _zip_string_free
    - zip_check_torrentzip
    - _zip_allocate_new
    - ZIP_IS_TORRENTZIP
    - _zip_hash_reserve_capacity
    - zip_stat_init
    - zip_error_set_from_source
    - zip_source_keep
    - _is_truncated_zip
    - zip_error_set
    - _zip_hash_add
    - zip_discard
    - zip_error_code_zip
    - zip_source_stat
    - _zip_string_get
    linkageType: ''
    returnType: zip_t
    signature: zip_t *_zip_open(zip_source_t *src, unsigned int flags, zip_error_t
      *error)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_open.c:264,1
    - Dst: zip_error_system_type
      Src: /src/libzip/lib/zip_open.c:265,1
    - Dst: zip_error_code_system
      Src: /src/libzip/lib/zip_open.c:268,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - zep
    - err
    - ze
    argTypes:
    - int*
    - zip_error_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 279
    functionName: _zip_set_open_error
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 1
    functionsReached:
    - zip_error_code_zip
    - zip_error_system_type
    - zip_error_code_system
    linkageType: ''
    returnType: void
    signature: void _zip_set_open_error(int *zep, const zip_error_t *err, int ze)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_offset
      Src: /src/libzip/lib/zip_open.c:292,1
    - Dst: _zip_read_eocd
      Src: /src/libzip/lib/zip_open.c:298,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_open.c:302,1
    - Dst: _zip_buffer_data
      Src: /src/libzip/lib/zip_open.c:302,1
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_open.c:304,1
    - Dst: _zip_read_eocd64
      Src: /src/libzip/lib/zip_open.c:305,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:310,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:314,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:323,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:328,1
    - Dst: check_magic
      Src: /src/libzip/lib/zip_open.c:337,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:338,1
    - Dst: check_eocd
      Src: /src/libzip/lib/zip_open.c:345,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:346,1
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_open.c:350,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_open.c:351,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:355,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:356,1
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_open.c:363,1
    - Dst: _zip_buffer_left
      Src: /src/libzip/lib/zip_open.c:364,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:368,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:369,1
    - Dst: _zip_string_new
      Src: /src/libzip/lib/zip_open.c:378,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_open.c:378,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:379,1
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_open.c:388,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_open.c:390,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:391,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:392,1
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_open.c:395,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:396,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:397,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_open.c:404,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_open.c:405,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:406,1
    - Dst: zip_source_tell
      Src: /src/libzip/lib/zip_open.c:411,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:412,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:413,1
    - Dst: _zip_cdir_grow
      Src: /src/libzip/lib/zip_open.c:418,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:419,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:420,1
    - Dst: _zip_cdir_grow
      Src: /src/libzip/lib/zip_open.c:437,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:438,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:439,1
    - Dst: _zip_dirent_new
      Src: /src/libzip/lib/zip_open.c:445,1
    - Dst: _zip_dirent_read
      Src: /src/libzip/lib/zip_open.c:445,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_open.c:446,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:447,1
    - Dst: ADD_INDEX_TO_DETAIL
      Src: /src/libzip/lib/zip_open.c:447,1
    - Dst: zip_error_code_system
      Src: /src/libzip/lib/zip_open.c:447,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_open.c:449,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:450,1
    - Dst: MAKE_DETAIL_WITH_INDEX
      Src: /src/libzip/lib/zip_open.c:450,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:452,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:453,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:462,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:463,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:464,1
    - Dst: _zip_buffer_eof
      Src: /src/libzip/lib/zip_open.c:472,1
    - Dst: zip_source_tell
      Src: /src/libzip/lib/zip_open.c:475,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_open.c:478,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:479,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:486,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:487,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:488,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:493,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 153
    argCount: 5
    argNames:
    - za
    - buffer
    - buf_offset
    - cdirp
    - error
    argTypes:
    - zip_t*
    - zip_buffer_t*
    - zip_uint64_t
    - zip_cdir_t**
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 288
    functionDepth: 3
    functionLinenumber: 288
    functionLinenumberEnd: 496
    functionName: _zip_read_cdir
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_left
    - _zip_read_eocd
    - zip_source_tell
    - _zip_buffer_data
    - _zip_dirent_new
    - zip_source_seek
    - memcmp
    - zip_error_code_system
    - _zip_string_new
    - _zip_buffer_eof
    - MAKE_DETAIL_WITH_INDEX
    - check_eocd
    - zip_error_set_from_source
    - _zip_buffer_get_16
    - _zip_buffer_free
    - _zip_buffer_offset
    - ADD_INDEX_TO_DETAIL
    - check_magic
    - _zip_read_eocd64
    - _zip_buffer_set_offset
    - _zip_buffer_get
    - _zip_buffer_new
    - zip_error_set
    - zip_error_code_zip
    - _zip_cdir_grow
    - _zip_cdir_free
    - _zip_dirent_read
    linkageType: ''
    returnType: bool
    signature: bool _zip_read_cdir(zip_t *za, zip_buffer_t *buffer, zip_uint64_t buf_offset,
      zip_cdir_t **cdirp, zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_open.c:502,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_open.c:502,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_open.c:505,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_open.c:510,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_open.c:510,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_open.c:513,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 5
    argNames:
    - offset
    - buffer
    - buffer_offset
    - src
    - magic
    argTypes:
    - zip_uint64_t
    - zip_buffer_t*
    - zip_uint64_t
    - zip_source_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 499
    functionDepth: 2
    functionLinenumber: 499
    functionLinenumberEnd: 515
    functionName: check_magic
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 1
    functionsReached:
    - zip_source_read
    - zip_source_seek
    - _zip_buffer_set_offset
    - memcmp
    - _zip_buffer_get
    linkageType: ''
    returnType: bool
    signature: bool check_magic(zip_uint64_t offset, zip_buffer_t *buffer, zip_uint64_t
      buffer_offset, zip_source_t *src, const char *magic)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: _zip_dirent_init
      Src: /src/libzip/lib/zip_open.c:530,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:544,1
    - Dst: _zip_string_length
      Src: /src/libzip/lib/zip_open.c:548,1
    - Dst: ZIP_CHECK_ADD_OVERFLOW
      Src: /src/libzip/lib/zip_open.c:549,1
    - Dst: ZIP_CHECK_ADD_OVERFLOW
      Src: /src/libzip/lib/zip_open.c:549,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:550,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:559,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_open.c:563,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_open.c:564,1
    - Dst: _zip_dirent_read
      Src: /src/libzip/lib/zip_open.c:568,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_open.c:569,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:570,1
    - Dst: ADD_INDEX_TO_DETAIL
      Src: /src/libzip/lib/zip_open.c:570,1
    - Dst: zip_error_code_system
      Src: /src/libzip/lib/zip_open.c:570,1
    - Dst: _zip_dirent_finalize
      Src: /src/libzip/lib/zip_open.c:572,1
    - Dst: _zip_headercomp
      Src: /src/libzip/lib/zip_open.c:576,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:577,1
    - Dst: MAKE_DETAIL_WITH_INDEX
      Src: /src/libzip/lib/zip_open.c:577,1
    - Dst: _zip_dirent_finalize
      Src: /src/libzip/lib/zip_open.c:578,1
    - Dst: _zip_ef_merge
      Src: /src/libzip/lib/zip_open.c:582,1
    - Dst: _zip_dirent_finalize
      Src: /src/libzip/lib/zip_open.c:586,1
    - Dst: zip_dirent_check_consistency
      Src: /src/libzip/lib/zip_open.c:588,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:589,1
    - Dst: MAKE_DETAIL_WITH_INDEX
      Src: /src/libzip/lib/zip_open.c:589,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 55
    argCount: 3
    argNames:
    - za
    - cd
    - error
    argTypes:
    - zip_t*
    - zip_cdir_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 524
    functionDepth: 1
    functionLinenumber: 524
    functionLinenumberEnd: 595
    functionName: _zip_checkcons
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 0
    functionsReached:
    - _zip_string_length
    - zip_error_set_from_source
    - zip_error_set
    - _zip_dirent_read
    - zip_error_code_system
    - ZIP_CHECK_ADD_OVERFLOW
    - ADD_INDEX_TO_DETAIL
    - zip_error_code_zip
    - _zip_headercomp
    - _zip_dirent_finalize
    - MAKE_DETAIL_WITH_INDEX
    - _zip_ef_merge
    - zip_source_seek
    - zip_dirent_check_consistency
    - _zip_dirent_init
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_checkcons(zip_t *za, zip_cdir_t *cd, zip_error_t *error)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _zip_string_equal
      Src: /src/libzip/lib/zip_open.c:609,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 12
    argCount: 2
    argNames:
    - central
    - local
    argTypes:
    - zip_dirent_t*
    - zip_dirent_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 602
    functionDepth: 1
    functionLinenumber: 602
    functionLinenumberEnd: 629
    functionName: _zip_headercomp
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 1
    functionsReached:
    - _zip_string_equal
    linkageType: ''
    returnType: int
    signature: int _zip_headercomp(const zip_dirent_t *central, const zip_dirent_t
      *local)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _zip_new
      Src: /src/libzip/lib/zip_open.c:635,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - src
    - flags
    - error
    argTypes:
    - zip_source_t*
    - unsigned int
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 632
    functionDepth: 1
    functionLinenumber: 632
    functionLinenumberEnd: 651
    functionName: _zip_allocate_new
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 2
    functionsReached:
    - _zip_new
    linkageType: ''
    returnType: zip_t
    signature: zip_t *_zip_allocate_new(zip_source_t *src, unsigned int flags, zip_error_t
      *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_stat_init
      Src: /src/libzip/lib/zip_open.c:660,1
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_open.c:661,1
    - Dst: zip_source_error
      Src: /src/libzip/lib/zip_open.c:662,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_open.c:663,1
    - Dst: zip_error_code_system
      Src: /src/libzip/lib/zip_open.c:663,1
    - Dst: _zip_error_copy
      Src: /src/libzip/lib/zip_open.c:666,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - src
    - error
    argTypes:
    - zip_source_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 657
    functionDepth: 1
    functionLinenumber: 657
    functionLinenumberEnd: 671
    functionName: _zip_file_exists
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 1
    functionsReached:
    - zip_source_error
    - zip_error_code_system
    - _zip_error_copy
    - zip_error_code_zip
    - zip_stat_init
    - zip_source_stat
    linkageType: ''
    returnType: exists_t
    signature: exists_t _zip_file_exists(zip_source_t *src, zip_error_t *error)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:683,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_open.c:688,1
    - Dst: zip_source_error
      Src: /src/libzip/lib/zip_open.c:689,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_open.c:690,1
    - Dst: zip_error_code_system
      Src: /src/libzip/lib/zip_open.c:690,1
    - Dst: _zip_error_copy
      Src: /src/libzip/lib/zip_open.c:692,1
    - Dst: zip_source_tell
      Src: /src/libzip/lib/zip_open.c:696,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_open.c:697,1
    - Dst: _zip_buffer_new_from_source
      Src: /src/libzip/lib/zip_open.c:701,1
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_open.c:708,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:710,1
    - Dst: find_eocd
      Src: /src/libzip/lib/zip_open.c:713,1
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_open.c:714,1
    - Dst: _zip_buffer_data
      Src: /src/libzip/lib/zip_open.c:714,1
    - Dst: _zip_read_cdir
      Src: /src/libzip/lib/zip_open.c:715,1
    - Dst: _zip_checkcons
      Src: /src/libzip/lib/zip_open.c:716,1
    - Dst: _zip_cdir_free
      Src: /src/libzip/lib/zip_open.c:717,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:724,1
    - Dst: _zip_error_copy
      Src: /src/libzip/lib/zip_open.c:727,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 40
    argCount: 2
    argNames:
    - za
    - len
    argTypes:
    - zip_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 674
    functionDepth: 4
    functionLinenumber: 674
    functionLinenumberEnd: 730
    functionName: _zip_find_central_dir
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 1
    functionsReached:
    - zip_source_error
    - zip_error_set_from_source
    - _zip_buffer_new_from_source
    - _zip_checkcons
    - _zip_read_cdir
    - zip_error_set
    - zip_error_code_system
    - _zip_buffer_free
    - _zip_buffer_data
    - find_eocd
    - zip_source_tell
    - zip_error_code_zip
    - _zip_cdir_free
    - _zip_error_copy
    - zip_source_seek
    - _zip_buffer_set_offset
    linkageType: ''
    returnType: zip_cdir_t
    signature: zip_cdir_t *_zip_find_central_dir(zip_t *za, zip_uint64_t len)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_data
      Src: /src/libzip/lib/zip_open.c:734,1
    - Dst: _zip_buffer_size
      Src: /src/libzip/lib/zip_open.c:738,1
    - Dst: _zip_buffer_size
      Src: /src/libzip/lib/zip_open.c:741,1
    - Dst: _zip_buffer_data
      Src: /src/libzip/lib/zip_open.c:744,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_open.c:752,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - buffer
    - last
    argTypes:
    - zip_buffer_t*
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 733
    functionDepth: 1
    functionLinenumber: 733
    functionLinenumberEnd: 763
    functionName: find_eocd
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 1
    functionsReached:
    - _zip_buffer_data
    - _zip_buffer_size
    - memcmp
    linkageType: ''
    returnType: unsigned char
    signature: unsigned char *find_eocd(zip_buffer_t *buffer, const unsigned char
      *last)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_left
      Src: /src/libzip/lib/zip_open.c:769,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:770,1
    - Dst: _zip_cdir_new
      Src: /src/libzip/lib/zip_open.c:774,1
    - Dst: _zip_buffer_offset
      Src: /src/libzip/lib/zip_open.c:778,1
    - Dst: _zip_buffer_skip
      Src: /src/libzip/lib/zip_open.c:780,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_open.c:782,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_open.c:783,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_open.c:786,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_open.c:788,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_open.c:789,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_open.c:790,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 3
    argNames:
    - buffer
    - buf_offset
    - error
    argTypes:
    - zip_buffer_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 766
    functionDepth: 3
    functionLinenumber: 766
    functionLinenumberEnd: 793
    functionName: _zip_read_eocd
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 1
    functionsReached:
    - _zip_buffer_get_16
    - zip_error_set
    - _zip_buffer_offset
    - _zip_buffer_left
    - _zip_buffer_get_32
    - _zip_buffer_skip
    - _zip_cdir_new
    linkageType: ''
    returnType: zip_cdir_t
    signature: zip_cdir_t *_zip_read_eocd(zip_buffer_t *buffer, zip_uint64_t buf_offset,
      zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:797,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:802,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:806,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - cd
    - flags
    - error
    argTypes:
    - zip_cdir_t*
    - unsigned int
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 795
    functionDepth: 1
    functionLinenumber: 795
    functionLinenumberEnd: 811
    functionName: check_eocd
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 1
    functionsReached:
    - zip_error_set
    linkageType: ''
    returnType: bool
    signature: bool check_eocd(zip_cdir_t *cd, unsigned int flags, zip_error_t *error)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_offset
      Src: /src/libzip/lib/zip_open.c:823,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_open.c:825,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_open.c:827,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_open.c:828,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_open.c:829,1
    - Dst: check_magic
      Src: /src/libzip/lib/zip_open.c:831,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:836,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:842,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:848,1
    - Dst: _zip_buffer_size
      Src: /src/libzip/lib/zip_open.c:853,1
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_open.c:854,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_open.c:858,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_open.c:859,1
    - Dst: _zip_buffer_new_from_source
      Src: /src/libzip/lib/zip_open.c:862,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_open.c:868,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_open.c:868,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:869,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:871,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_open.c:877,1
    - Dst: ZIP_CHECK_ADD_OVERFLOW
      Src: /src/libzip/lib/zip_open.c:880,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:881,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:883,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_open.c:888,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_open.c:890,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_open.c:891,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:892,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:894,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_open.c:899,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_open.c:900,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:903,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:905,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_open.c:910,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_open.c:911,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_open.c:914,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:915,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:917,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_open.c:923,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:927,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:932,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_open.c:937,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 99
    argCount: 6
    argNames:
    - cdir
    - src
    - buffer
    - buf_offset
    - flags
    - error
    argTypes:
    - zip_cdir_t*
    - zip_source_t*
    - zip_buffer_t*
    - zip_uint64_t
    - unsigned int
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 814
    functionDepth: 3
    functionLinenumber: 814
    functionLinenumberEnd: 950
    functionName: _zip_read_eocd64
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 1
    functionsReached:
    - zip_error_set_from_source
    - _zip_buffer_new_from_source
    - _zip_buffer_size
    - _zip_buffer_free
    - zip_error_set
    - _zip_buffer_offset
    - _zip_buffer_get_64
    - _zip_buffer_ok
    - ZIP_CHECK_ADD_OVERFLOW
    - _zip_buffer_get_32
    - check_magic
    - zip_source_seek
    - _zip_buffer_set_offset
    - memcmp
    - _zip_buffer_get
    linkageType: ''
    returnType: cdir_status_t
    signature: cdir_status_t _zip_read_eocd64(zip_cdir_t *cdir, zip_source_t *src,
      zip_buffer_t *buffer, zip_uint64_t buf_offset, unsigned int flags, zip_error_t
      *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 953
    functionDepth: 0
    functionLinenumber: 953
    functionLinenumberEnd: 963
    functionName: decode_hex
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int decode_hex(char c)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: _zip_string_length
      Src: /src/libzip/lib/zip_open.c:977,1
    - Dst: strncmp
      Src: /src/libzip/lib/zip_open.c:977,1
    - Dst: memcpy
      Src: /src/libzip/lib/zip_open.c:981,1
    - Dst: decode_hex
      Src: /src/libzip/lib/zip_open.c:986,1
    - Dst: decode_hex
      Src: /src/libzip/lib/zip_open.c:987,1
    - Dst: zip_stat_init
      Src: /src/libzip/lib/zip_open.c:1001,1
    - Dst: _zip_source_window_new
      Src: /src/libzip/lib/zip_open.c:1005,1
    - Dst: zip_source_crc_create
      Src: /src/libzip/lib/zip_open.c:1008,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_open.c:1009,1
    - Dst: zip_source_open
      Src: /src/libzip/lib/zip_open.c:1012,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_open.c:1013,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_open.c:1016,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_open.c:1018,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 2
    argNames:
    - za
    - cdir
    argTypes:
    - zip_t*
    - zip_cdir_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1026
      start: 968
    functionDepth: 1
    functionLinenumber: 968
    functionLinenumberEnd: 1026
    functionName: zip_check_torrentzip
    functionSourceFile: /src/libzip/lib/zip_open.c
    functionUses: 1
    functionsReached:
    - _zip_string_length
    - memcpy
    - zip_source_read
    - zip_source_crc_create
    - zip_source_free
    - _zip_source_window_new
    - zip_source_open
    - decode_hex
    - zip_stat_init
    - strncmp
    linkageType: ''
    returnType: void
    signature: void zip_check_torrentzip(zip_t *za, const zip_cdir_t *cdir)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_fclose.c:48,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_fclose.c:56,1
    - Dst: free
      Src: /src/libzip/lib/zip_fclose.c:57,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - zf
    argTypes:
    - zip_file_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 59
    functionName: zip_fclose
    functionSourceFile: /src/libzip/lib/zip_fclose.c
    functionUses: 5
    functionsReached:
    - zip_source_free
    - free
    - zip_error_fini
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_fclose(zip_file_t *zf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_file_create
      Src: /src/libzip/lib/zip_source_file_win32_utf8.c:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionName: zip_source_t *zip_source_file(zip_t *za, const char *fname, zip_uint64_t
      start, zip_int64_t len)
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf8.c
    functionUses: 0
    functionsReached:
    - zip_source_file_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_file(zip_t *za, const char *fname,
      zip_uint64_t start, zip_int64_t len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_utf8.c:51,1
    - Dst: MultiByteToWideChar
      Src: /src/libzip/lib/zip_source_file_win32_utf8.c:56,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_utf8.c:58,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_file_win32_utf8.c:61,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_utf8.c:62,1
    - Dst: MultiByteToWideChar
      Src: /src/libzip/lib/zip_source_file_win32_utf8.c:65,1
    - Dst: zip_source_win32w_create
      Src: /src/libzip/lib/zip_source_file_win32_utf8.c:67,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_win32_utf8.c:69,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 71
    functionName: zip_source_t *zip_source_file_create(const char *fname, zip_uint64_t
      start, zip_int64_t length, zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf8.c
    functionUses: 0
    functionsReached:
    - free
    - zip_error_set
    - malloc
    - zip_source_win32w_create
    - MultiByteToWideChar
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_file_create(const char *fname,
      zip_uint64_t start, zip_int64_t length, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - error
    argTypes:
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: zip_error_code_system
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_code_system(const zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - error
    argTypes:
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: zip_error_code_zip
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_code_zip(const zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/lib/zip_error.c:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - err
    argTypes:
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: zip_error_fini
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 20
    functionsReached:
    - free
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_fini(zip_error_t *err)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - err
    argTypes:
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionName: zip_error_init
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_init(zip_error_t *err)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_error.c:62,1
    - Dst: zip_error_system_type
      Src: /src/libzip/lib/zip_error.c:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - error
    - ze
    argTypes:
    - zip_error_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionName: zip_error_init_with_code
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 11
    functionsReached:
    - zip_error_system_type
    - zip_error_init
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_init_with_code(zip_error_t *error, int ze)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - error
    argTypes:
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 83
    functionName: zip_error_system_type
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_system_type(const zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - err
    argTypes:
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 93
    functionName: _zip_error_clear
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void _zip_error_clear(zip_error_t *err)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - zip_error_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 103
    functionName: _zip_error_copy
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void _zip_error_copy(zip_error_t *dst, const zip_error_t *src)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_system_type
      Src: /src/libzip/lib/zip_error.c:111,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - err
    - zep
    - sep
    argTypes:
    - zip_error_t*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 118
    functionName: _zip_error_get
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 0
    functionsReached:
    - zip_error_system_type
    linkageType: ''
    returnType: void
    signature: void _zip_error_get(const zip_error_t *err, int *zep, int *sep)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - err
    - ze
    - se
    argTypes:
    - zip_error_t*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionName: zip_error_set
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void zip_error_set(zip_error_t *err, int ze, int se)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_error.c:131,1
    - Dst: _zip_error_copy
      Src: /src/libzip/lib/zip_error.c:135,1
    - Dst: zip_source_error
      Src: /src/libzip/lib/zip_error.c:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - err
    - src
    argTypes:
    - zip_error_t*
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 136
    functionName: zip_error_set_from_source
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 6
    functionsReached:
    - _zip_error_copy
    - zip_error_set
    - zip_source_error
    linkageType: ''
    returnType: void
    signature: void zip_error_set_from_source(zip_error_t *err, zip_source_t *src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_error.c:146,1
    - Dst: zip_error_code_system
      Src: /src/libzip/lib/zip_error.c:147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - error
    - data
    - length
    argTypes:
    - zip_error_t*
    - void*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 149
    functionName: zip_error_to_data
    functionSourceFile: /src/libzip/lib/zip_error.c
    functionUses: 2
    functionsReached:
    - zip_error_code_zip
    - zip_error_code_system
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t zip_error_to_data(const zip_error_t *error, void *data,
      zip_uint64_t length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/lib/zip_hash.c:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - entry
    argTypes:
    - zip_hash_entry_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionName: free_list
    functionSourceFile: /src/libzip/lib/zip_hash.c
    functionUses: 0
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void free_list(zip_hash_entry_t *entry)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - name
    argTypes:
    - zip_uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 90
    functionName: hash_string
    functionSourceFile: /src/libzip/lib/zip_hash.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint32_t
    signature: zip_uint32_t hash_string(const zip_uint8_t *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: calloc
      Src: /src/libzip/lib/zip_hash.c:101,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_hash.c:102,1
    - Dst: free
      Src: /src/libzip/lib/zip_hash.c:124,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 3
    argNames:
    - hash
    - new_size
    - error
    argTypes:
    - zip_hash_t*
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 129
    functionName: hash_resize
    functionSourceFile: /src/libzip/lib/zip_hash.c
    functionUses: 0
    functionsReached:
    - calloc
    - free
    - zip_error_set
    linkageType: ''
    returnType: bool
    signature: bool hash_resize(zip_hash_t *hash, zip_uint32_t new_size, zip_error_t
      *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - capacity
    argTypes:
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 159
    functionName: size_for_capacity
    functionSourceFile: /src/libzip/lib/zip_hash.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint32_t
    signature: zip_uint32_t size_for_capacity(zip_uint64_t capacity)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_hash.c:165,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_hash.c:166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - error
    argTypes:
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 175
    functionName: _zip_hash_new
    functionSourceFile: /src/libzip/lib/zip_hash.c
    functionUses: 0
    functionsReached:
    - malloc
    - zip_error_set
    linkageType: ''
    returnType: zip_hash_t
    signature: zip_hash_t *_zip_hash_new(zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: free_list
      Src: /src/libzip/lib/zip_hash.c:188,1
    - Dst: free
      Src: /src/libzip/lib/zip_hash.c:191,1
    - Dst: free
      Src: /src/libzip/lib/zip_hash.c:193,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - hash
    argTypes:
    - zip_hash_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 194
    functionName: _zip_hash_free
    functionSourceFile: /src/libzip/lib/zip_hash.c
    functionUses: 0
    functionsReached:
    - free_list
    - free
    linkageType: ''
    returnType: void
    signature: void _zip_hash_free(zip_hash_t *hash)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_hash.c:203,1
    - Dst: hash_resize
      Src: /src/libzip/lib/zip_hash.c:208,1
    - Dst: hash_string
      Src: /src/libzip/lib/zip_hash.c:213,1
    - Dst: strcmp
      Src: /src/libzip/lib/zip_hash.c:217,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_hash.c:219,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_hash.c:229,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_hash.c:230,1
    - Dst: hash_resize
      Src: /src/libzip/lib/zip_hash.c:240,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 44
    argCount: 5
    argNames:
    - hash
    - name
    - index
    - flags
    - error
    argTypes:
    - zip_hash_t*
    - zip_uint8_t*
    - zip_uint64_t
    - zip_flags_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 198
    functionDepth: 2
    functionLinenumber: 198
    functionLinenumberEnd: 252
    functionName: _zip_hash_add
    functionSourceFile: /src/libzip/lib/zip_hash.c
    functionUses: 1
    functionsReached:
    - hash_string
    - zip_error_set
    - malloc
    - strcmp
    - hash_resize
    linkageType: ''
    returnType: bool
    signature: bool _zip_hash_add(zip_hash_t *hash, const zip_uint8_t *name, zip_uint64_t
      index, zip_flags_t flags, zip_error_t *error)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_hash.c:261,1
    - Dst: hash_string
      Src: /src/libzip/lib/zip_hash.c:266,1
    - Dst: strcmp
      Src: /src/libzip/lib/zip_hash.c:271,1
    - Dst: free
      Src: /src/libzip/lib/zip_hash.c:279,1
    - Dst: hash_resize
      Src: /src/libzip/lib/zip_hash.c:282,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_hash.c:297,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 3
    argNames:
    - hash
    - name
    - error
    argTypes:
    - zip_hash_t*
    - zip_uint8_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 299
    functionName: _zip_hash_delete
    functionSourceFile: /src/libzip/lib/zip_hash.c
    functionUses: 0
    functionsReached:
    - free
    - hash_string
    - zip_error_set
    - strcmp
    - hash_resize
    linkageType: ''
    returnType: bool
    signature: bool _zip_hash_delete(zip_hash_t *hash, const zip_uint8_t *name, zip_error_t
      *error)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_hash.c:308,1
    - Dst: hash_string
      Src: /src/libzip/lib/zip_hash.c:313,1
    - Dst: strcmp
      Src: /src/libzip/lib/zip_hash.c:316,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_hash.c:332,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 4
    argNames:
    - hash
    - name
    - flags
    - error
    argTypes:
    - zip_hash_t*
    - zip_uint8_t*
    - zip_flags_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 303
    functionDepth: 1
    functionLinenumber: 303
    functionLinenumberEnd: 334
    functionName: _zip_hash_lookup
    functionSourceFile: /src/libzip/lib/zip_hash.c
    functionUses: 0
    functionsReached:
    - strcmp
    - hash_string
    - zip_error_set
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_hash_lookup(zip_hash_t *hash, const zip_uint8_t *name,
      zip_flags_t flags, zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size_for_capacity
      Src: /src/libzip/lib/zip_hash.c:344,1
    - Dst: hash_resize
      Src: /src/libzip/lib/zip_hash.c:350,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - hash
    - capacity
    - error
    argTypes:
    - zip_hash_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 337
    functionDepth: 2
    functionLinenumber: 337
    functionLinenumberEnd: 355
    functionName: _zip_hash_reserve_capacity
    functionSourceFile: /src/libzip/lib/zip_hash.c
    functionUses: 1
    functionsReached:
    - size_for_capacity
    - hash_resize
    linkageType: ''
    returnType: bool
    signature: bool _zip_hash_reserve_capacity(zip_hash_t *hash, zip_uint64_t capacity,
      zip_error_t *error)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/lib/zip_hash.c:377,1
    - Dst: hash_resize
      Src: /src/libzip/lib/zip_hash.c:393,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - hash
    - error
    argTypes:
    - zip_hash_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 358
    functionDepth: 2
    functionLinenumber: 358
    functionLinenumberEnd: 399
    functionName: _zip_hash_revert
    functionSourceFile: /src/libzip/lib/zip_hash.c
    functionUses: 0
    functionsReached:
    - free
    - hash_resize
    linkageType: ''
    returnType: bool
    signature: bool _zip_hash_revert(zip_hash_t *hash, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_unchange
      Src: /src/libzip/lib/zip_unchange.c:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - za
    - idx
    argTypes:
    - zip_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: zip_unchange
    functionSourceFile: /src/libzip/lib/zip_unchange.c
    functionUses: 2
    functionsReached:
    - _zip_unchange
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_unchange(zip_t *za, zip_uint64_t idx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_unchange.c:50,1
    - Dst: _zip_get_name
      Src: /src/libzip/lib/zip_unchange.c:60,1
    - Dst: _zip_name_locate
      Src: /src/libzip/lib/zip_unchange.c:64,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_unchange.c:66,1
    - Dst: _zip_get_name
      Src: /src/libzip/lib/zip_unchange.c:72,1
    - Dst: _zip_hash_add
      Src: /src/libzip/lib/zip_unchange.c:78,1
    - Dst: _zip_hash_delete
      Src: /src/libzip/lib/zip_unchange.c:83,1
    - Dst: _zip_hash_delete
      Src: /src/libzip/lib/zip_unchange.c:84,1
    - Dst: _zip_dirent_free
      Src: /src/libzip/lib/zip_unchange.c:90,1
    - Dst: _zip_unchange_data
      Src: /src/libzip/lib/zip_unchange.c:93,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 38
    argCount: 3
    argNames:
    - za
    - idx
    - allow_duplicates
    argTypes:
    - zip_t*
    - zip_uint64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 45
    functionDepth: 3
    functionLinenumber: 45
    functionLinenumberEnd: 96
    functionName: _zip_unchange
    functionSourceFile: /src/libzip/lib/zip_unchange.c
    functionUses: 1
    functionsReached:
    - zip_error_set
    - _zip_dirent_free
    - _zip_hash_delete
    - _zip_get_name
    - _zip_hash_add
    - _zip_unchange_data
    - _zip_name_locate
    linkageType: ''
    returnType: int
    signature: int _zip_unchange(zip_t *za, zip_uint64_t idx, int allow_duplicates)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_set_default_password.c:47,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_set_default_password.c:47,1
    - Dst: free
      Src: /src/libzip/lib/zip_set_default_password.c:49,1
    - Dst: strdup
      Src: /src/libzip/lib/zip_set_default_password.c:52,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_default_password.c:53,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - za
    - passwd
    argTypes:
    - zip_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 62
    functionName: zip_set_default_password
    functionSourceFile: /src/libzip/lib/zip_set_default_password.c
    functionUses: 4
    functionsReached:
    - free
    - zip_error_set
    - strlen
    - strdup
    - _zip_crypto_clear
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_set_default_password(zip_t *za, const char *passwd)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_archive_flag.c:42,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_archive_flag.c:61,1
    - Dst: _zip_changed
      Src: /src/libzip/lib/zip_set_archive_flag.c:66,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_archive_flag.c:67,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 3
    argNames:
    - za
    - flag
    - value
    argTypes:
    - zip_t*
    - zip_flags_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 75
    functionName: zip_set_archive_flag
    functionSourceFile: /src/libzip/lib/zip_set_archive_flag.c
    functionUses: 1
    functionsReached:
    - _zip_changed
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_set_archive_flag(zip_t *za, zip_flags_t flag, int value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - st
    argTypes:
    - zip_stat_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: zip_stat_init
    functionSourceFile: /src/libzip/lib/zip_stat_init.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_stat_init(zip_stat_t *st)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 3
    argNames:
    - dst
    - src
    - error
    argTypes:
    - zip_stat_t*
    - zip_stat_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 81
    functionName: _zip_stat_merge
    functionSourceFile: /src/libzip/lib/zip_stat_init.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int _zip_stat_merge(zip_stat_t *dst, const zip_stat_t *src, zip_error_t
      *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_int64_t::zip_file_add
      Src: /src/libzip/lib/zip_add.c:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - za
    - name
    - source
    argTypes:
    - zip_t*
    - char*
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: zip_int64_t::zip_add
    functionSourceFile: /src/libzip/lib/zip_add.c
    functionUses: 0
    functionsReached:
    - zip_int64_t::zip_file_add
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_add(zip_t *za, const char *name, zip_source_t
      *source)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_file_set_external_attributes.c:42,1
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_file_set_external_attributes.c:46,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_external_attributes.c:47,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_file_set_external_attributes.c:50,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_external_attributes.c:51,1
    - Dst: _zip_dirent_clone
      Src: /src/libzip/lib/zip_file_set_external_attributes.c:64,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_external_attributes.c:65,1
    - Dst: _zip_dirent_free
      Src: /src/libzip/lib/zip_file_set_external_attributes.c:76,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 5
    argNames:
    - za
    - idx
    - flags
    - opsys
    - attributes
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_flags_t
    - zip_uint8_t
    - zip_uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 86
    functionName: zip_file_set_external_attributes
    functionSourceFile: /src/libzip/lib/zip_file_set_external_attributes.c
    functionUses: 0
    functionsReached:
    - _zip_dirent_clone
    - zip_error_set
    - _zip_dirent_free
    - _zip_get_dirent
    - ZIP_WANT_TORRENTZIP
    - ZIP_IS_RDONLY
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_set_external_attributes(zip_t *za, zip_uint64_t
      idx, zip_flags_t flags, zip_uint8_t opsys, zip_uint32_t attributes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_file_create
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 99
    functionName: zip_source_t *zip_source_file(zip_t *za, const char *fname, zip_uint64_t
      start, zip_int64_t len)
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 0
    functionsReached:
    - zip_source_file_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_file(zip_t *za, const char *fname,
      zip_uint64_t start, zip_int64_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:104,1
    - Dst: zip_source_file_common_new
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:108,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 109
    functionName: zip_source_t *zip_source_file_create(const char *fname, zip_uint64_t
      start, zip_int64_t length, zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 0
    functionsReached:
    - zip_source_file_common_new
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_file_create(const char *fname,
      zip_uint64_t start, zip_int64_t length, zip_error_t *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fclose
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:113,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:114,1
    - Dst: rename
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:117,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 123
    functionName: _zip_stdio_op_commit_write
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 0
    functionsReached:
    - fclose
    - rename
    - zip_error_set
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_stdio_op_commit_write(zip_source_file_context_t *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: create_temp_file
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:127,1
    - Dst: fdopen
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:133,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:134,1
    - Dst: close
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:135,1
    - Dst: remove
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:136,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 143
    functionName: _zip_stdio_op_create_temp_output
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 0
    functionsReached:
    - close
    - free
    - zip_error_set
    - remove
    - fdopen
    - create_temp_file
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_stdio_op_create_temp_output(zip_source_file_context_t
      *ctx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:150,1
    - Dst: create_temp_file
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:156,1
    - Dst: clonefile
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:160,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:161,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:162,1
    - Dst: _zip_fopen_close_on_exec
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:166,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:167,1
    - Dst: remove
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:168,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:169,1
    - Dst: zip_os_fstat
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:179,1
    - Dst: fileno
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:179,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:180,1
    - Dst: create_temp_file
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:184,1
    - Dst: fileno
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:188,1
    - Dst: ioctl
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:195,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:196,1
    - Dst: close
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:197,1
    - Dst: remove
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:198,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:199,1
    - Dst: fdopen
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:204,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:205,1
    - Dst: close
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:206,1
    - Dst: remove
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:207,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:208,1
    - Dst: ftruncate
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:215,1
    - Dst: fileno
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:215,1
    - Dst: fclose
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:216,1
    - Dst: remove
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:217,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:218,1
    - Dst: zip_os_fseek
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:222,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:223,1
    - Dst: fclose
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:224,1
    - Dst: remove
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:225,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:226,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 69
    argCount: 2
    argNames:
    - ctx
    - offset
    argTypes:
    - zip_source_file_context_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 234
    functionName: _zip_stdio_op_create_temp_output_cloning
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 0
    functionsReached:
    - close
    - free
    - zip_error_set
    - ftruncate
    - ioctl
    - clonefile
    - fileno
    - remove
    - fdopen
    - _zip_fopen_close_on_exec
    - zip_os_fseek
    - zip_os_fstat
    - fclose
    - create_temp_file
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_stdio_op_create_temp_output_cloning(zip_source_file_context_t
      *ctx, zip_uint64_t offset)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_fopen_close_on_exec
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:238,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 243
    functionName: _zip_stdio_op_open
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 0
    functionsReached:
    - _zip_fopen_close_on_exec
    - zip_error_set
    linkageType: ''
    returnType: bool
    signature: bool _zip_stdio_op_open(zip_source_file_context_t *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: remove
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:247,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:248,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 252
    functionName: _zip_stdio_op_remove
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 0
    functionsReached:
    - zip_error_set
    - remove
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_stdio_op_remove(zip_source_file_context_t *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fclose
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:257,1
    - Dst: remove
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:259,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 260
    functionName: _zip_stdio_op_rollback_write
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 0
    functionsReached:
    - fclose
    - remove
    linkageType: ''
    returnType: void
    signature: void _zip_stdio_op_rollback_write(zip_source_file_context_t *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strdup
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - string
    argTypes:
    - zip_source_file_context_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 264
    functionName: _zip_stdio_op_strdup
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 0
    functionsReached:
    - strdup
    linkageType: ''
    returnType: char
    signature: char *_zip_stdio_op_strdup(zip_source_file_context_t *ctx, const char
      *string)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clearerr
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:270,1
    - Dst: fwrite
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:271,1
    - Dst: ferror
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:272,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:273,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - data
    - len
    argTypes:
    - zip_source_file_context_t*
    - void*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 278
    functionName: _zip_stdio_op_write
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 0
    functionsReached:
    - clearerr
    - zip_error_set
    - fwrite
    - ferror
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_stdio_op_write(zip_source_file_context_t *ctx, const
      void *data, zip_uint64_t len)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: zip_os_stat
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:288,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:295,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:296,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:297,1
    - Dst: snprintf_s
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:300,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:301,1
    - Dst: zip_random_uint32
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:305,1
    - Dst: open
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:320,1
    - Dst: fchmod
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:324,1
    - Dst: chmod
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:326,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:332,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:333,1
    - Dst: zip_os_stat
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:338,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:343,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:344,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 49
    argCount: 2
    argNames:
    - ctx
    - create_file
    argTypes:
    - zip_source_file_context_t*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 354
    functionName: create_temp_file
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 2
    functionsReached:
    - open
    - free
    - zip_error_set
    - zip_os_stat
    - malloc
    - snprintf_s
    - strlen
    - fchmod
    - zip_random_uint32
    - chmod
    linkageType: ''
    returnType: int
    signature: int create_temp_file(zip_source_file_context_t *ctx, bool create_file)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: open
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:376,1
    - Dst: fdopen
      Src: /src/libzip/lib/zip_source_file_stdio_named.c:379,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - name
    - writeable
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 383
    functionName: _zip_fopen_close_on_exec
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio_named.c
    functionUses: 2
    functionsReached:
    - fdopen
    - open
    linkageType: ''
    returnType: FILE
    signature: FILE *_zip_fopen_close_on_exec(const char *name, bool writeable)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: CryptAcquireContext
      Src: /src/libzip/lib/zip_random_win32.c:48,1
    - Dst: CryptGenRandom
      Src: /src/libzip/lib/zip_random_win32.c:51,1
    - Dst: CryptReleaseContext
      Src: /src/libzip/lib/zip_random_win32.c:54,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - buffer
    - length
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 58
    functionName: zip_secure_random
    functionSourceFile: /src/libzip/lib/zip_random_win32.c
    functionUses: 0
    functionsReached:
    - CryptGenRandom
    - CryptReleaseContext
    - CryptAcquireContext
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_secure_random(zip_uint8_t *buffer, zip_uint16_t length)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_secure_random
      Src: /src/libzip/lib/zip_random_win32.c:69,1
    - Dst: srand
      Src: /src/libzip/lib/zip_random_win32.c:74,1
    - Dst: time
      Src: /src/libzip/lib/zip_random_win32.c:74,1
    - Dst: rand
      Src: /src/libzip/lib/zip_random_win32.c:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 79
    functionName: zip_random_uint32
    functionSourceFile: /src/libzip/lib/zip_random_win32.c
    functionUses: 1
    functionsReached:
    - rand
    - time
    - zip_secure_random
    - srand
    linkageType: ''
    returnType: zip_uint32_t
    signature: zip_uint32_t zip_random_uint32(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - za
    - flag
    - flags
    argTypes:
    - zip_t*
    - zip_flags_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionName: zip_get_archive_flag
    functionSourceFile: /src/libzip/lib/zip_get_archive_flag.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_get_archive_flag(zip_t *za, zip_flags_t flag, zip_flags_t
      flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/libzip/lib/zip_source_file_common.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - st
    argTypes:
    - zip_source_file_stat_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: zip_source_file_stat_init
    functionSourceFile: /src/libzip/lib/zip_source_file_common.c
    functionUses: 0
    functionsReached:
    - time
    linkageType: ''
    returnType: void
    signature: void zip_source_file_stat_init(zip_source_file_stat_t *st)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:58,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:63,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:68,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:74,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:79,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:95,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_file_common.c:99,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:100,1
    - Dst: zip_source_file_operations_t*::string_duplicate
      Src: /src/libzip/lib/zip_source_file_common.c:108,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:109,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:110,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_file_common.c:118,1
    - Dst: zip_stat_init
      Src: /src/libzip/lib/zip_source_file_common.c:123,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_source_file_common.c:131,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_source_file_common.c:136,1
    - Dst: zip_file_attributes_init
      Src: /src/libzip/lib/zip_source_file_common.c:137,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/lib/zip_source_file_common.c:139,1
    - Dst: zip_source_file_stat_init
      Src: /src/libzip/lib/zip_source_file_common.c:141,1
    - Dst: zip_source_file_operations_t*::stat
      Src: /src/libzip/lib/zip_source_file_common.c:142,1
    - Dst: _zip_error_copy
      Src: /src/libzip/lib/zip_source_file_common.c:143,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:144,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:145,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:153,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:156,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:157,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:158,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:171,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:172,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:173,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_file_common.c:191,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_file_common.c:194,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_file_common.c:196,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_file_common.c:197,1
    - Dst: zip_source_function_create
      Src: /src/libzip/lib/zip_source_file_common.c:201,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:202,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:203,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 124
    argCount: 8
    argNames:
    - fname
    - file
    - start
    - len
    - st
    - ops
    - ops_userdata
    - error
    argTypes:
    - char*
    - void*
    - zip_uint64_t
    - zip_int64_t
    - zip_stat_t*
    - zip_source_file_operations_t*
    - void*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 208
    functionName: zip_source_file_common_new
    functionSourceFile: /src/libzip/lib/zip_source_file_common.c
    functionUses: 1
    functionsReached:
    - free
    - zip_error_set
    - zip_error_init
    - zip_source_make_command_bitmap
    - malloc
    - _zip_error_copy
    - zip_stat_init
    - ZIP_SOURCE_MAKE_COMMAND_BITMASK
    - zip_source_file_stat_init
    - zip_source_file_operations_t*::string_duplicate
    - memcpy_s
    - zip_source_function_create
    - zip_file_attributes_init
    - zip_source_file_operations_t*::stat
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_file_common_new(const char *fname, void *file,
      zip_uint64_t start, zip_int64_t len, const zip_stat_t *st, zip_source_file_operations_t
      *ops, void *ops_userdata, zip_error_t *error)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:225,1
    - Dst: zip_source_file_context_t*::ops::create_temp_output
      Src: /src/libzip/lib/zip_source_file_common.c:228,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:233,1
    - Dst: zip_source_file_context_t*::ops::create_temp_output_cloning
      Src: /src/libzip/lib/zip_source_file_common.c:236,1
    - Dst: zip_source_file_context_t*::ops::close
      Src: /src/libzip/lib/zip_source_file_common.c:240,1
    - Dst: zip_source_file_context_t*::ops::commit_write
      Src: /src/libzip/lib/zip_source_file_common.c:246,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:249,1
    - Dst: zip_error_to_data
      Src: /src/libzip/lib/zip_source_file_common.c:256,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:259,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:260,1
    - Dst: zip_source_file_context_t*::ops::close
      Src: /src/libzip/lib/zip_source_file_common.c:262,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:264,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:269,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_file_common.c:272,1
    - Dst: zip_source_file_context_t*::ops::open
      Src: /src/libzip/lib/zip_source_file_common.c:277,1
    - Dst: zip_source_file_context_t*::ops::seek
      Src: /src/libzip/lib/zip_source_file_common.c:283,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_source_file_common.c:296,1
    - Dst: zip_source_file_context_t*::ops::read
      Src: /src/libzip/lib/zip_source_file_common.c:302,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:303,1
    - Dst: zip_source_file_context_t*::ops::remove
      Src: /src/libzip/lib/zip_source_file_common.c:312,1
    - Dst: zip_source_file_context_t*::ops::rollback_write
      Src: /src/libzip/lib/zip_source_file_common.c:315,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_common.c:317,1
    - Dst: zip_source_seek_compute_offset
      Src: /src/libzip/lib/zip_source_file_common.c:322,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:330,1
    - Dst: zip_source_file_context_t*::ops::seek
      Src: /src/libzip/lib/zip_source_file_common.c:336,1
    - Dst: ZIP_SOURCE_GET_ARGS
      Src: /src/libzip/lib/zip_source_file_common.c:345,1
    - Dst: zip_source_file_context_t*::ops::seek
      Src: /src/libzip/lib/zip_source_file_common.c:350,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_source_file_common.c:361,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:362,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_source_file_common.c:362,1
    - Dst: zip_error_code_system
      Src: /src/libzip/lib/zip_source_file_common.c:362,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_file_common.c:366,1
    - Dst: zip_source_file_context_t*::ops::tell
      Src: /src/libzip/lib/zip_source_file_common.c:377,1
    - Dst: zip_source_file_context_t*::ops::write
      Src: /src/libzip/lib/zip_source_file_common.c:380,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_common.c:383,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 130
    argCount: 4
    argNames:
    - state
    - data
    - len
    - cmd
    argTypes:
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 211
    functionDepth: 2
    functionLinenumber: 211
    functionLinenumberEnd: 386
    functionName: read_file
    functionSourceFile: /src/libzip/lib/zip_source_file_common.c
    functionUses: 1
    functionsReached:
    - zip_source_file_context_t*::ops::commit_write
    - free
    - zip_source_file_context_t*::ops::rollback_write
    - zip_source_file_context_t*::ops::remove
    - zip_source_file_context_t*::ops::create_temp_output
    - zip_source_file_context_t*::ops::close
    - zip_source_file_context_t*::ops::write
    - zip_error_code_system
    - zip_error_to_data
    - memcpy_s
    - zip_source_file_context_t*::ops::read
    - zip_source_file_context_t*::ops::seek
    - zip_source_file_context_t*::ops::tell
    - zip_source_seek_compute_offset
    - ZIP_MIN
    - zip_error_set
    - zip_error_code_zip
    - ZIP_SOURCE_GET_ARGS
    - zip_source_file_context_t*::ops::create_temp_output_cloning
    - zip_source_file_context_t*::ops::open
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t read_file(void *state, void *data, zip_uint64_t len, zip_source_cmd_t
      cmd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: arc4random_buf
      Src: /src/libzip/lib/zip_random_unix.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - buffer
    - length
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: zip_secure_random
    functionSourceFile: /src/libzip/lib/zip_random_unix.c
    functionUses: 1
    functionsReached:
    - arc4random_buf
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_secure_random(zip_uint8_t *buffer, zip_uint16_t length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: arc4random
      Src: /src/libzip/lib/zip_random_unix.c:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: zip_random_uint32
    functionSourceFile: /src/libzip/lib/zip_random_unix.c
    functionUses: 1
    functionsReached:
    - arc4random
    linkageType: ''
    returnType: zip_uint32_t
    signature: zip_uint32_t zip_random_uint32(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: open
      Src: /src/libzip/lib/zip_random_unix.c:66,1
    - Dst: read
      Src: /src/libzip/lib/zip_random_unix.c:70,1
    - Dst: close
      Src: /src/libzip/lib/zip_random_unix.c:71,1
    - Dst: close
      Src: /src/libzip/lib/zip_random_unix.c:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - buffer
    - length
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 77
    functionName: zip_secure_random
    functionSourceFile: /src/libzip/lib/zip_random_unix.c
    functionUses: 1
    functionsReached:
    - close
    - read
    - open
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_secure_random(zip_uint8_t *buffer, zip_uint16_t length)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_secure_random
      Src: /src/libzip/lib/zip_random_unix.c:93,1
    - Dst: srandom
      Src: /src/libzip/lib/zip_random_unix.c:98,1
    - Dst: time
      Src: /src/libzip/lib/zip_random_unix.c:98,1
    - Dst: random
      Src: /src/libzip/lib/zip_random_unix.c:102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 103
    functionName: zip_random_uint32
    functionSourceFile: /src/libzip/lib/zip_random_unix.c
    functionUses: 1
    functionsReached:
    - srandom
    - random
    - zip_secure_random
    - time
    linkageType: ''
    returnType: zip_uint32_t
    signature: zip_uint32_t zip_random_uint32(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_hash_revert
      Src: /src/libzip/lib/zip_unchange_all.c:42,1
    - Dst: _zip_unchange
      Src: /src/libzip/lib/zip_unchange_all.c:48,1
    - Dst: zip_unchange_archive
      Src: /src/libzip/lib/zip_unchange_all.c:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - za
    argTypes:
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 38
    functionDepth: 4
    functionLinenumber: 38
    functionLinenumberEnd: 54
    functionName: zip_unchange_all
    functionSourceFile: /src/libzip/lib/zip_unchange_all.c
    functionUses: 2
    functionsReached:
    - zip_unchange_archive
    - _zip_unchange
    - _zip_hash_revert
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_unchange_all(zip_t *za)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_file_compression.c:42,1
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_set_file_compression.c:46,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_file_compression.c:47,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_set_file_compression.c:50,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_file_compression.c:51,1
    - Dst: zip_compression_method_supported
      Src: /src/libzip/lib/zip_set_file_compression.c:55,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_file_compression.c:56,1
    - Dst: _zip_dirent_clone
      Src: /src/libzip/lib/zip_set_file_compression.c:68,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_file_compression.c:69,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 4
    argNames:
    - za
    - idx
    - method
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_int32_t
    - zip_uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 79
    functionName: zip_set_file_compression
    functionSourceFile: /src/libzip/lib/zip_set_file_compression.c
    functionUses: 3
    functionsReached:
    - _zip_dirent_clone
    - zip_error_set
    - zip_compression_method_supported
    - ZIP_WANT_TORRENTZIP
    - ZIP_IS_RDONLY
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_set_file_compression(zip_t *za, zip_uint64_t idx, zip_int32_t
      method, zip_uint32_t flags)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_dir_add.c:48,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dir_add.c:49,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dir_add.c:54,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_dir_add.c:59,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_dir_add.c:62,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dir_add.c:63,1
    - Dst: strncpy_s
      Src: /src/libzip/lib/zip_dir_add.c:66,1
    - Dst: zip_source_buffer
      Src: /src/libzip/lib/zip_dir_add.c:71,1
    - Dst: free
      Src: /src/libzip/lib/zip_dir_add.c:72,1
    - Dst: _zip_file_replace
      Src: /src/libzip/lib/zip_dir_add.c:76,1
    - Dst: free
      Src: /src/libzip/lib/zip_dir_add.c:78,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_dir_add.c:81,1
    - Dst: zip_file_set_external_attributes
      Src: /src/libzip/lib/zip_dir_add.c:84,1
    - Dst: zip_delete
      Src: /src/libzip/lib/zip_dir_add.c:85,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 3
    argNames:
    - za
    - name
    - flags
    argTypes:
    - zip_t*
    - char*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 91
    functionName: zip_int64_t::zip_dir_add
    functionSourceFile: /src/libzip/lib/zip_dir_add.c
    functionUses: 0
    functionsReached:
    - free
    - strncpy_s
    - zip_error_set
    - _zip_file_replace
    - zip_source_free
    - malloc
    - strlen
    - zip_source_buffer
    - zip_file_set_external_attributes
    - ZIP_IS_RDONLY
    - zip_delete
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_dir_add(zip_t *za, const char *name, zip_flags_t
      flags)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_zip_file_create
      Src: /src/libzip/lib/zip_fopen_index_encrypted.c:51,1
    - Dst: zip_source_open
      Src: /src/libzip/lib/zip_fopen_index_encrypted.c:55,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_fopen_index_encrypted.c:56,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_fopen_index_encrypted.c:57,1
    - Dst: _zip_file_new
      Src: /src/libzip/lib/zip_fopen_index_encrypted.c:61,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_fopen_index_encrypted.c:62,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - za
    - index
    - flags
    - password
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_flags_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 69
    functionName: zip_fopen_index_encrypted
    functionSourceFile: /src/libzip/lib/zip_fopen_index_encrypted.c
    functionUses: 0
    functionsReached:
    - _zip_file_new
    - zip_error_set_from_source
    - zip_source_free
    - zip_source_open
    - zip_source_zip_file_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_fopen_index_encrypted(zip_t *za, zip_uint64_t index,
      zip_flags_t flags, const char *password)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_fopen_index_encrypted.c:75,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_fopen_index_encrypted.c:76,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_fopen_index_encrypted.c:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - za
    argTypes:
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 84
    functionName: _zip_file_new
    functionSourceFile: /src/libzip/lib/zip_fopen_index_encrypted.c
    functionUses: 1
    functionsReached:
    - malloc
    - zip_error_set
    - zip_error_init
    linkageType: ''
    returnType: zip_file_t
    signature: zip_file_t *_zip_file_new(zip_t *za)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_win32a_create
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 67
    functionName: zip_source_t *zip_source_win32a(zip_t *za, const char *fname, zip_uint64_t
      start, zip_int64_t len)
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_ansi.c
    functionUses: 0
    functionsReached:
    - zip_source_win32a_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_win32a(zip_t *za, const char *fname,
      zip_uint64_t start, zip_int64_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:72,1
    - Dst: zip_source_file_common_new
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:76,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 77
    functionName: zip_source_t *zip_source_win32a_create(const char *fname, zip_uint64_t
      start, zip_int64_t length, zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_ansi.c
    functionUses: 0
    functionsReached:
    - zip_source_file_common_new
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_win32a_create(const char *fname,
      zip_uint64_t start, zip_int64_t length, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:81,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - name
    - extra_chars
    - lengthp
    argTypes:
    - char*
    - size_t
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: ansi_allocate_tempname
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_ansi.c
    functionUses: 0
    functionsReached:
    - malloc
    - strlen
    linkageType: ''
    returnType: char
    signature: char *ansi_allocate_tempname(const char *name, size_t extra_chars,
      size_t *lengthp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateFileA
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - name
    - access
    - share_mode
    - security_attributes
    - creation_disposition
    - file_attributes
    - template_file
    argTypes:
    - void*
    - DWORD
    - DWORD
    - PSECURITY_ATTRIBUTES
    - DWORD
    - DWORD
    - HANDLE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: ansi_create_file
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_ansi.c
    functionUses: 0
    functionsReached:
    - CreateFileA
    linkageType: ''
    returnType: HANDLE
    signature: HANDLE ansi_create_file(const void *name, DWORD access, DWORD share_mode,
      PSECURITY_ATTRIBUTES security_attributes, DWORD creation_disposition, DWORD
      file_attributes, HANDLE template_file)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DeleteFileA
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: ansi_delete_file
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_ansi.c
    functionUses: 0
    functionsReached:
    - DeleteFileA
    linkageType: ''
    returnType: BOOL
    signature: BOOL ansi_delete_file(const void *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetFileAttributesA
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: ansi_get_file_attributes
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_ansi.c
    functionUses: 0
    functionsReached:
    - GetFileAttributesA
    linkageType: ''
    returnType: DWORD
    signature: DWORD ansi_get_file_attributes(const void *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetFileAttributesExA
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - name
    - info_level
    - information
    argTypes:
    - void*
    - GET_FILEEX_INFO_LEVELS
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: ansi_get_file_attributes_ex
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_ansi.c
    functionUses: 0
    functionsReached:
    - GetFileAttributesExA
    linkageType: ''
    returnType: BOOL
    signature: BOOL ansi_get_file_attributes_ex(const void *name, GET_FILEEX_INFO_LEVELS
      info_level, void *information)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: snprintf_s
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - buf
    - len
    - name
    - i
    argTypes:
    - char*
    - size_t
    - char*
    - zip_uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: ansi_make_tempname
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_ansi.c
    functionUses: 0
    functionsReached:
    - snprintf_s
    linkageType: ''
    returnType: void
    signature: void ansi_make_tempname(char *buf, size_t len, const char *name, zip_uint32_t
      i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MoveFileExA
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - from
    - to
    - flags
    argTypes:
    - void*
    - void*
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: ansi_move_file
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_ansi.c
    functionUses: 0
    functionsReached:
    - MoveFileExA
    linkageType: ''
    returnType: BOOL
    signature: BOOL ansi_move_file(const void *from, const void *to, DWORD flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetFileAttributesA
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - attributes
    argTypes:
    - void*
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: ansi_set_file_attributes
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_ansi.c
    functionUses: 0
    functionsReached:
    - SetFileAttributesA
    linkageType: ''
    returnType: BOOL
    signature: BOOL ansi_set_file_attributes(const void *name, DWORD attributes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FindFirstFileA
      Src: /src/libzip/lib/zip_source_file_win32_ansi.c:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - data
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: ansi_find_first_file
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_ansi.c
    functionUses: 0
    functionsReached:
    - FindFirstFileA
    linkageType: ''
    returnType: HANDLE
    signature: HANDLE ansi_find_first_file(const void *name, void *data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/libzip/lib/zip_random_uwp.c:48,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_random_uwp.c:49,1
    - Dst: BCryptGenRandom
      Src: /src/libzip/lib/zip_random_uwp.c:52,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/libzip/lib/zip_random_uwp.c:53,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_random_uwp.c:54,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - buffer
    - length
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 58
    functionName: zip_secure_random
    functionSourceFile: /src/libzip/lib/zip_random_uwp.c
    functionUses: 2
    functionsReached:
    - BCryptOpenAlgorithmProvider
    - BCryptCloseAlgorithmProvider
    - BCRYPT_SUCCESS
    - BCryptGenRandom
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_secure_random(zip_uint8_t *buffer, zip_uint16_t length)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_secure_random
      Src: /src/libzip/lib/zip_random_uwp.c:70,1
    - Dst: srand
      Src: /src/libzip/lib/zip_random_uwp.c:75,1
    - Dst: time
      Src: /src/libzip/lib/zip_random_uwp.c:75,1
    - Dst: rand
      Src: /src/libzip/lib/zip_random_uwp.c:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 80
    functionName: zip_random_uint32
    functionSourceFile: /src/libzip/lib/zip_random_uwp.c
    functionUses: 1
    functionsReached:
    - rand
    - time
    - zip_secure_random
    - srand
    linkageType: ''
    returnType: zip_uint32_t
    signature: zip_uint32_t zip_random_uint32(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_filep_create
      Src: /src/libzip/lib/zip_source_file_stdio.c:73,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionName: zip_source_t *zip_source_filep(zip_t *za, FILE *file, zip_uint64_t
      start, zip_int64_t len)
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio.c
    functionUses: 0
    functionsReached:
    - zip_source_filep_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_filep(zip_t *za, FILE *file, zip_uint64_t
      start, zip_int64_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio.c:79,1
    - Dst: zip_source_file_common_new
      Src: /src/libzip/lib/zip_source_file_stdio.c:83,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 84
    functionName: zip_source_t *zip_source_filep_create(FILE *file, zip_uint64_t start,
      zip_int64_t length, zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio.c
    functionUses: 0
    functionsReached:
    - zip_source_file_common_new
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_filep_create(FILE *file, zip_uint64_t
      start, zip_int64_t length, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fclose
      Src: /src/libzip/lib/zip_source_file_stdio.c:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: _zip_stdio_op_close
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio.c
    functionUses: 0
    functionsReached:
    - fclose
    linkageType: ''
    returnType: void
    signature: void _zip_stdio_op_close(zip_source_file_context_t *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fread
      Src: /src/libzip/lib/zip_source_file_stdio.c:100,1
    - Dst: ferror
      Src: /src/libzip/lib/zip_source_file_stdio.c:101,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio.c:102,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - buf
    - len
    argTypes:
    - zip_source_file_context_t*
    - void*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 108
    functionName: _zip_stdio_op_read
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio.c
    functionUses: 0
    functionsReached:
    - fread
    - zip_error_set
    - ferror
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_stdio_op_read(zip_source_file_context_t *ctx, void
      *buf, zip_uint64_t len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio.c:114,1
    - Dst: zip_os_fseek
      Src: /src/libzip/lib/zip_source_file_stdio.c:119,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio.c:120,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - f
    - offset
    - whence
    argTypes:
    - zip_source_file_context_t*
    - void*
    - zip_int64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 124
    functionName: _zip_stdio_op_seek
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio.c
    functionUses: 0
    functionsReached:
    - zip_error_set
    - zip_os_fseek
    linkageType: ''
    returnType: bool
    signature: bool _zip_stdio_op_seek(zip_source_file_context_t *ctx, void *f, zip_int64_t
      offset, int whence)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_os_stat
      Src: /src/libzip/lib/zip_source_file_stdio.c:133,1
    - Dst: zip_os_fstat
      Src: /src/libzip/lib/zip_source_file_stdio.c:136,1
    - Dst: fileno
      Src: /src/libzip/lib/zip_source_file_stdio.c:136,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio.c:144,1
    - Dst: S_ISREG
      Src: /src/libzip/lib/zip_source_file_stdio.c:151,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - ctx
    - st
    argTypes:
    - zip_source_file_context_t*
    - zip_source_file_stat_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 161
    functionName: _zip_stdio_op_stat
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio.c
    functionUses: 0
    functionsReached:
    - zip_error_set
    - zip_os_stat
    - S_ISREG
    - fileno
    - zip_os_fstat
    linkageType: ''
    returnType: bool
    signature: bool _zip_stdio_op_stat(zip_source_file_context_t *ctx, zip_source_file_stat_t
      *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_os_ftell
      Src: /src/libzip/lib/zip_source_file_stdio.c:165,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_stdio.c:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - f
    argTypes:
    - zip_source_file_context_t*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 172
    functionName: _zip_stdio_op_tell
    functionSourceFile: /src/libzip/lib/zip_source_file_stdio.c
    functionUses: 0
    functionsReached:
    - zip_error_set
    - zip_os_ftell
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_stdio_op_tell(zip_source_file_context_t *ctx, void
      *f)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_encode.c:61,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_encode.c:65,1
    - Dst: trad_pkware_new
      Src: /src/libzip/lib/zip_source_pkware_encode.c:69,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_encode.c:70,1
    - Dst: zip_source_get_dos_time
      Src: /src/libzip/lib/zip_source_pkware_encode.c:74,1
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_source_pkware_encode.c:77,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_pkware_encode.c:78,1
    - Dst: trad_pkware_free
      Src: /src/libzip/lib/zip_source_pkware_encode.c:79,1
    - Dst: _zip_u2d_time
      Src: /src/libzip/lib/zip_source_pkware_encode.c:82,1
    - Dst: time
      Src: /src/libzip/lib/zip_source_pkware_encode.c:82,1
    - Dst: trad_pkware_free
      Src: /src/libzip/lib/zip_source_pkware_encode.c:83,1
    - Dst: zip_source_layered
      Src: /src/libzip/lib/zip_source_pkware_encode.c:88,1
    - Dst: trad_pkware_free
      Src: /src/libzip/lib/zip_source_pkware_encode.c:89,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 5
    argNames:
    - za
    - src
    - em
    - flags
    - password
    argTypes:
    - zip_t*
    - zip_source_t*
    - zip_uint16_t
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 94
    functionName: zip_source_pkware_encode
    functionSourceFile: /src/libzip/lib/zip_source_pkware_encode.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - zip_error_set
    - time
    - zip_source_stat
    - _zip_u2d_time
    - zip_source_layered
    - trad_pkware_free
    - trad_pkware_new
    - zip_source_get_dos_time
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_pkware_encode(zip_t *za, zip_source_t *src,
      zip_uint16_t em, int flags, const char *password)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_source_pkware_encode.c:100,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_encode.c:101,1
    - Dst: _zip_buffer_data
      Src: /src/libzip/lib/zip_source_pkware_encode.c:105,1
    - Dst: zip_secure_random
      Src: /src/libzip/lib/zip_source_pkware_encode.c:109,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_encode.c:110,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_source_pkware_encode.c:111,1
    - Dst: _zip_pkware_encrypt
      Src: /src/libzip/lib/zip_source_pkware_encode.c:117,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - src
    - ctx
    argTypes:
    - zip_source_t*
    - struct trad_pkware*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 120
    functionName: encrypt_header
    functionSourceFile: /src/libzip/lib/zip_source_pkware_encode.c
    functionUses: 0
    functionsReached:
    - _zip_buffer_new
    - zip_secure_random
    - zip_error_set
    - _zip_buffer_free
    - _zip_buffer_data
    - _zip_pkware_encrypt
    linkageType: ''
    returnType: int
    signature: int encrypt_header(zip_source_t *src, struct trad_pkware *ctx)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: _zip_pkware_keys_reset
      Src: /src/libzip/lib/zip_source_pkware_encode.c:135,1
    - Dst: _zip_pkware_encrypt
      Src: /src/libzip/lib/zip_source_pkware_encode.c:136,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_source_pkware_encode.c:136,1
    - Dst: encrypt_header
      Src: /src/libzip/lib/zip_source_pkware_encode.c:138,1
    - Dst: _zip_buffer_read
      Src: /src/libzip/lib/zip_source_pkware_encode.c:148,1
    - Dst: _zip_buffer_eof
      Src: /src/libzip/lib/zip_source_pkware_encode.c:152,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_source_pkware_encode.c:153,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_pkware_encode.c:162,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_pkware_encode.c:163,1
    - Dst: _zip_pkware_encrypt
      Src: /src/libzip/lib/zip_source_pkware_encode.c:167,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_source_pkware_encode.c:176,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_encode.c:196,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_encode.c:209,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_pkware_encode.c:212,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/lib/zip_source_pkware_encode.c:216,1
    - Dst: zip_error_to_data
      Src: /src/libzip/lib/zip_source_pkware_encode.c:219,1
    - Dst: trad_pkware_free
      Src: /src/libzip/lib/zip_source_pkware_encode.c:222,1
    - Dst: zip_source_pass_to_lower_layer
      Src: /src/libzip/lib/zip_source_pkware_encode.c:226,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 75
    argCount: 5
    argNames:
    - src
    - ud
    - data
    - length
    - cmd
    argTypes:
    - zip_source_t*
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 228
    functionName: pkware_encrypt
    functionSourceFile: /src/libzip/lib/zip_source_pkware_encode.c
    functionUses: 2
    functionsReached:
    - zip_error_set_from_source
    - _zip_buffer_free
    - encrypt_header
    - zip_source_read
    - zip_error_set
    - _zip_buffer_read
    - trad_pkware_free
    - zip_source_make_command_bitmap
    - zip_error_to_data
    - zip_source_pass_to_lower_layer
    - strlen
    - _zip_pkware_keys_reset
    - memcpy_s
    - _zip_pkware_encrypt
    - _zip_buffer_eof
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t pkware_encrypt(zip_source_t *src, void *ud, void *data,
      zip_uint64_t length, zip_source_cmd_t cmd)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_pkware_encode.c:234,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_encode.c:235,1
    - Dst: strdup
      Src: /src/libzip/lib/zip_source_pkware_encode.c:239,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_encode.c:240,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_pkware_encode.c:241,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_source_pkware_encode.c:245,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - password
    - error
    argTypes:
    - char*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 248
    functionName: trad_pkware_new
    functionSourceFile: /src/libzip/lib/zip_source_pkware_encode.c
    functionUses: 1
    functionsReached:
    - free
    - zip_error_set
    - zip_error_init
    - malloc
    - strdup
    linkageType: ''
    returnType: struct trad_pkware
    signature: struct trad_pkware *trad_pkware_new(const char *password, zip_error_t
      *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_source_pkware_encode.c:256,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_source_pkware_encode.c:256,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_pkware_encode.c:257,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_source_pkware_encode.c:258,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_source_pkware_encode.c:259,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_pkware_encode.c:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - struct trad_pkware*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 261
    functionName: trad_pkware_free
    functionSourceFile: /src/libzip/lib/zip_source_pkware_encode.c
    functionUses: 2
    functionsReached:
    - free
    - _zip_buffer_free
    - strlen
    - _zip_crypto_clear
    - zip_error_fini
    linkageType: ''
    returnType: void
    signature: void trad_pkware_free(struct trad_pkware *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_unchange_archive.c:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - za
    argTypes:
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 50
    functionName: zip_unchange_archive
    functionSourceFile: /src/libzip/lib/zip_unchange_archive.c
    functionUses: 1
    functionsReached:
    - _zip_string_free
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_unchange_archive(zip_t *za)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_get_num_files.c:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - za
    argTypes:
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 52
    functionName: zip_get_num_files
    functionSourceFile: /src/libzip/lib/zip_get_num_files.c
    functionUses: 0
    functionsReached:
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_get_num_files(zip_t *za)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_close
      Src: /src/libzip/lib/zip_discard.c:53,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_discard.c:54,1
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_discard.c:58,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_discard.c:58,1
    - Dst: free
      Src: /src/libzip/lib/zip_discard.c:60,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_discard.c:61,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_discard.c:62,1
    - Dst: _zip_hash_free
      Src: /src/libzip/lib/zip_discard.c:64,1
    - Dst: _zip_entry_finalize
      Src: /src/libzip/lib/zip_discard.c:68,1
    - Dst: free
      Src: /src/libzip/lib/zip_discard.c:70,1
    - Dst: _zip_source_invalidate
      Src: /src/libzip/lib/zip_discard.c:74,1
    - Dst: free
      Src: /src/libzip/lib/zip_discard.c:76,1
    - Dst: _zip_progress_free
      Src: /src/libzip/lib/zip_discard.c:78,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_discard.c:80,1
    - Dst: free
      Src: /src/libzip/lib/zip_discard.c:82,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 1
    argNames:
    - za
    argTypes:
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 85
    functionName: zip_discard
    functionSourceFile: /src/libzip/lib/zip_discard.c
    functionUses: 7
    functionsReached:
    - free
    - _zip_string_free
    - _zip_source_invalidate
    - _zip_progress_free
    - zip_source_close
    - zip_source_free
    - _zip_hash_free
    - strlen
    - _zip_crypto_clear
    - zip_error_fini
    - _zip_entry_finalize
    linkageType: ''
    returnType: void
    signature: void zip_discard(zip_t *za)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_openssl.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: hmac_new
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.c
    functionUses: 0
    functionsReached:
    - malloc
    linkageType: ''
    returnType: _zip_crypto_hmac_t
    signature: _zip_crypto_hmac_t *hmac_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: EVP_MAC_CTX_free
      Src: /src/libzip/lib/zip_crypto_openssl.c:55,1
    - Dst: EVP_MAC_free
      Src: /src/libzip/lib/zip_crypto_openssl.c:58,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_openssl.c:60,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - hmac
    argTypes:
    - _zip_crypto_hmac_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 62
    functionName: hmac_free
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.c
    functionUses: 0
    functionsReached:
    - free
    - EVP_MAC_free
    - EVP_MAC_CTX_free
    linkageType: ''
    returnType: void
    signature: void hmac_free(_zip_crypto_hmac_t *hmac)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: EVP_aes_128_ecb
      Src: /src/libzip/lib/zip_crypto_openssl.c:71,1
    - Dst: EVP_aes_192_ecb
      Src: /src/libzip/lib/zip_crypto_openssl.c:74,1
    - Dst: EVP_aes_256_ecb
      Src: /src/libzip/lib/zip_crypto_openssl.c:77,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_openssl.c:80,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_openssl.c:85,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_openssl.c:86,1
    - Dst: memset
      Src: /src/libzip/lib/zip_crypto_openssl.c:89,1
    - Dst: EVP_CIPHER_CTX_new
      Src: /src/libzip/lib/zip_crypto_openssl.c:91,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_openssl.c:92,1
    - Dst: EVP_EncryptInit_ex
      Src: /src/libzip/lib/zip_crypto_openssl.c:97,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_openssl.c:99,1
    - Dst: EVP_CIPHER_CTX_free
      Src: /src/libzip/lib/zip_crypto_openssl.c:101,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_openssl.c:103,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 3
    argNames:
    - key
    - key_size
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 108
    functionName: _zip_crypto_aes_new
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_aes_192_ecb
    - EVP_aes_256_ecb
    - free
    - zip_error_set
    - malloc
    - memset
    - EVP_EncryptInit_ex
    - EVP_CIPHER_CTX_free
    - EVP_aes_128_ecb
    - EVP_CIPHER_CTX_new
    linkageType: ''
    returnType: _zip_crypto_aes_t
    signature: _zip_crypto_aes_t *_zip_crypto_aes_new(const zip_uint8_t *key, zip_uint16_t
      key_size, zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: EVP_CIPHER_CTX_cleanup
      Src: /src/libzip/lib/zip_crypto_openssl.c:116,1
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_crypto_openssl.c:117,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_openssl.c:118,1
    - Dst: EVP_CIPHER_CTX_free
      Src: /src/libzip/lib/zip_crypto_openssl.c:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - aes
    argTypes:
    - _zip_crypto_aes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 122
    functionName: _zip_crypto_aes_free
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.c
    functionUses: 0
    functionsReached:
    - free
    - EVP_CIPHER_CTX_cleanup
    - _zip_crypto_clear
    - EVP_CIPHER_CTX_free
    linkageType: ''
    returnType: void
    signature: void _zip_crypto_aes_free(_zip_crypto_aes_t *aes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: EVP_EncryptUpdate
      Src: /src/libzip/lib/zip_crypto_openssl.c:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - aes
    - in
    - out
    argTypes:
    - _zip_crypto_aes_t*
    - zip_uint8_t*
    - zip_uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 131
    functionName: _zip_crypto_aes_encrypt_block
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_EncryptUpdate
    linkageType: ''
    returnType: bool
    signature: bool _zip_crypto_aes_encrypt_block(_zip_crypto_aes_t *aes, const zip_uint8_t
      *in, zip_uint8_t *out)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_openssl.c:138,1
    - Dst: hmac_new
      Src: /src/libzip/lib/zip_crypto_openssl.c:143,1
    - Dst: EVP_MAC_fetch
      Src: /src/libzip/lib/zip_crypto_openssl.c:143,1
    - Dst: EVP_MAC_CTX_new
      Src: /src/libzip/lib/zip_crypto_openssl.c:143,1
    - Dst: hmac_free
      Src: /src/libzip/lib/zip_crypto_openssl.c:144,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_openssl.c:145,1
    - Dst: OSSL_PARAM_construct_utf8_string
      Src: /src/libzip/lib/zip_crypto_openssl.c:151,1
    - Dst: OSSL_PARAM_construct_end
      Src: /src/libzip/lib/zip_crypto_openssl.c:152,1
    - Dst: EVP_MAC_init
      Src: /src/libzip/lib/zip_crypto_openssl.c:154,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_openssl.c:155,1
    - Dst: hmac_free
      Src: /src/libzip/lib/zip_crypto_openssl.c:156,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_openssl.c:162,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_openssl.c:163,1
    - Dst: HMAC_CTX_init
      Src: /src/libzip/lib/zip_crypto_openssl.c:167,1
    - Dst: HMAC_CTX_new
      Src: /src/libzip/lib/zip_crypto_openssl.c:169,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_openssl.c:170,1
    - Dst: HMAC_Init_ex
      Src: /src/libzip/lib/zip_crypto_openssl.c:175,1
    - Dst: EVP_sha1
      Src: /src/libzip/lib/zip_crypto_openssl.c:175,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_openssl.c:176,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_openssl.c:178,1
    - Dst: HMAC_CTX_free
      Src: /src/libzip/lib/zip_crypto_openssl.c:180,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 3
    argNames:
    - secret
    - secret_length
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 187
    functionName: _zip_crypto_hmac_new
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.c
    functionUses: 0
    functionsReached:
    - OSSL_PARAM_construct_end
    - EVP_sha1
    - free
    - zip_error_set
    - OSSL_PARAM_construct_utf8_string
    - EVP_MAC_init
    - HMAC_CTX_new
    - HMAC_CTX_init
    - malloc
    - hmac_free
    - EVP_MAC_CTX_new
    - hmac_new
    - EVP_MAC_fetch
    - HMAC_Init_ex
    - HMAC_CTX_free
    linkageType: ''
    returnType: _zip_crypto_hmac_t
    signature: _zip_crypto_hmac_t *_zip_crypto_hmac_new(const zip_uint8_t *secret,
      zip_uint64_t secret_length, zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: hmac_free
      Src: /src/libzip/lib/zip_crypto_openssl.c:196,1
    - Dst: HMAC_CTX_cleanup
      Src: /src/libzip/lib/zip_crypto_openssl.c:198,1
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_crypto_openssl.c:199,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_openssl.c:200,1
    - Dst: HMAC_CTX_free
      Src: /src/libzip/lib/zip_crypto_openssl.c:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - hmac
    argTypes:
    - _zip_crypto_hmac_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 204
    functionName: _zip_crypto_hmac_free
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.c
    functionUses: 0
    functionsReached:
    - free
    - hmac_free
    - HMAC_CTX_cleanup
    - _zip_crypto_clear
    - HMAC_CTX_free
    linkageType: ''
    returnType: void
    signature: void _zip_crypto_hmac_free(_zip_crypto_hmac_t *hmac)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EVP_MAC_final
      Src: /src/libzip/lib/zip_crypto_openssl.c:210,1
    - Dst: HMAC_Final
      Src: /src/libzip/lib/zip_crypto_openssl.c:213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - hmac
    - data
    argTypes:
    - _zip_crypto_hmac_t*
    - zip_uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 215
    functionName: _zip_crypto_hmac_output
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_MAC_final
    - HMAC_Final
    linkageType: ''
    returnType: bool
    signature: bool _zip_crypto_hmac_output(_zip_crypto_hmac_t *hmac, zip_uint8_t
      *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RAND_bytes
      Src: /src/libzip/lib/zip_crypto_openssl.c:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buffer
    - length
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionName: zip_secure_random
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.c
    functionUses: 4
    functionsReached:
    - RAND_bytes
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_secure_random(zip_uint8_t *buffer, zip_uint16_t length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:91,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/libzip/lib/zip_crypto_win.c:91,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:95,1
    - Dst: BCryptDeriveKeyPBKDF2
      Src: /src/libzip/lib/zip_crypto_win.c:95,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/libzip/lib/zip_crypto_win.c:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 7
    argNames:
    - key
    - key_length
    - salt
    - salt_length
    - iterations
    - output
    - output_length
    argTypes:
    - zip_uint8_t*
    - zip_uint64_t
    - zip_uint8_t*
    - zip_uint16_t
    - zip_uint16_t
    - zip_uint8_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 100
    functionName: _zip_crypto_pbkdf2
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - BCryptOpenAlgorithmProvider
    - BCRYPT_SUCCESS
    - BCryptCloseAlgorithmProvider
    - BCryptDeriveKeyPBKDF2
    linkageType: ''
    returnType: bool
    signature: bool _zip_crypto_pbkdf2(const zip_uint8_t *key, zip_uint64_t key_length,
      const zip_uint8_t *salt, zip_uint16_t salt_length, zip_uint16_t iterations,
      zip_uint8_t *output, zip_uint16_t output_length)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BCryptDestroyHash
      Src: /src/libzip/lib/zip_crypto_win.c:120,1
    - Dst: BCryptDestroyHash
      Src: /src/libzip/lib/zip_crypto_win.c:123,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_win.c:125,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_win.c:126,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/libzip/lib/zip_crypto_win.c:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - pContext
    argTypes:
    - PRF_CTX*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 130
    functionName: hmacFree
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - BCryptDestroyHash
    - free
    - BCryptCloseAlgorithmProvider
    linkageType: ''
    returnType: void
    signature: void hmacFree(PRF_CTX *pContext)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libzip/lib/zip_crypto_win.c:140,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:146,1
    - Dst: BCryptHashData
      Src: /src/libzip/lib/zip_crypto_win.c:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - hHash
    - pbPassword
    - cbPassword
    - mask
    argTypes:
    - BCRYPT_HASH_HANDLE
    - PUCHAR
    - DWORD
    - BYTE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 147
    functionName: hmacPrecomputeDigest
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - BCRYPT_SUCCESS
    - BCryptHashData
    - memset
    linkageType: ''
    returnType: BOOL
    signature: BOOL hmacPrecomputeDigest(BCRYPT_HASH_HANDLE hHash, PUCHAR pbPassword,
      DWORD cbPassword, BYTE mask)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:154,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/libzip/lib/zip_crypto_win.c:154,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:154,1
    - Dst: BCryptGetProperty
      Src: /src/libzip/lib/zip_crypto_win.c:154,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_win.c:154,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_win.c:154,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:154,1
    - Dst: BCryptCreateHash
      Src: /src/libzip/lib/zip_crypto_win.c:154,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:154,1
    - Dst: BCryptCreateHash
      Src: /src/libzip/lib/zip_crypto_win.c:154,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_win.c:160,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:165,1
    - Dst: BCryptCreateHash
      Src: /src/libzip/lib/zip_crypto_win.c:165,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:165,1
    - Dst: BCryptHashData
      Src: /src/libzip/lib/zip_crypto_win.c:165,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:165,1
    - Dst: BCryptGetProperty
      Src: /src/libzip/lib/zip_crypto_win.c:165,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:165,1
    - Dst: BCryptFinishHash
      Src: /src/libzip/lib/zip_crypto_win.c:165,1
    - Dst: BCryptDestroyHash
      Src: /src/libzip/lib/zip_crypto_win.c:168,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_win.c:170,1
    - Dst: hmacPrecomputeDigest
      Src: /src/libzip/lib/zip_crypto_win.c:179,1
    - Dst: hmacPrecomputeDigest
      Src: /src/libzip/lib/zip_crypto_win.c:179,1
    - Dst: hmacFree
      Src: /src/libzip/lib/zip_crypto_win.c:184,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 28
    argCount: 3
    argNames:
    - pContext
    - pbPassword
    - cbPassword
    argTypes:
    - PRF_CTX*
    - PUCHAR
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 188
    functionName: hmacInit
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - hmacPrecomputeDigest
    - BCryptDestroyHash
    - free
    - BCryptHashData
    - malloc
    - BCryptGetProperty
    - BCryptOpenAlgorithmProvider
    - BCryptFinishHash
    - hmacFree
    - BCryptCreateHash
    - BCRYPT_SUCCESS
    linkageType: ''
    returnType: BOOL
    signature: BOOL hmacInit(PRF_CTX *pContext, PUCHAR pbPassword, DWORD cbPassword)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_win.c:193,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:199,1
    - Dst: BCryptDuplicateHash
      Src: /src/libzip/lib/zip_crypto_win.c:199,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:200,1
    - Dst: BCryptHashData
      Src: /src/libzip/lib/zip_crypto_win.c:200,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:200,1
    - Dst: BCryptFinishHash
      Src: /src/libzip/lib/zip_crypto_win.c:200,1
    - Dst: BCryptDestroyHash
      Src: /src/libzip/lib/zip_crypto_win.c:202,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_win.c:205,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 6
    argNames:
    - hHashTemplate
    - pbData
    - cbData
    - pbOutput
    - cbOutput
    - cbHashObject
    argTypes:
    - BCRYPT_HASH_HANDLE
    - PUCHAR
    - DWORD
    - PUCHAR
    - DWORD
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 208
    functionName: hmacCalculateInternal
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - BCryptDestroyHash
    - free
    - BCryptHashData
    - malloc
    - BCryptDuplicateHash
    - BCryptFinishHash
    - BCRYPT_SUCCESS
    linkageType: ''
    returnType: BOOL
    signature: BOOL hmacCalculateInternal(BCRYPT_HASH_HANDLE hHashTemplate, PUCHAR
      pbData, DWORD cbData, PUCHAR pbOutput, DWORD cbOutput, DWORD cbHashObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:214,1
    - Dst: BCryptGetProperty
      Src: /src/libzip/lib/zip_crypto_win.c:214,1
    - Dst: hmacCalculateInternal
      Src: /src/libzip/lib/zip_crypto_win.c:214,1
    - Dst: hmacCalculateInternal
      Src: /src/libzip/lib/zip_crypto_win.c:214,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 4
    argNames:
    - pContext
    - pbData
    - cbData
    - pbDigest
    argTypes:
    - PRF_CTX*
    - PUCHAR
    - DWORD
    - PUCHAR
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionName: hmacCalculate
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - BCRYPT_SUCCESS
    - hmacCalculateInternal
    - BCryptGetProperty
    linkageType: ''
    returnType: BOOL
    signature: BOOL hmacCalculate(PRF_CTX *pContext, PUCHAR pbData, DWORD cbData,
      PUCHAR pbDigest)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ptr1
    - ptr2
    - dwLen
    argTypes:
    - LPBYTE
    - LPBYTE
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 221
    functionName: myxor
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void myxor(LPBYTE ptr1, LPBYTE ptr2, DWORD dwLen)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_win.c:228,1
    - Dst: max
      Src: /src/libzip/lib/zip_crypto_win.c:228,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_win.c:236,1
    - Dst: hmacInit
      Src: /src/libzip/lib/zip_crypto_win.c:240,1
    - Dst: ceil
      Src: /src/libzip/lib/zip_crypto_win.c:244,1
    - Dst: ZeroMemory
      Src: /src/libzip/lib/zip_crypto_win.c:248,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_crypto_win.c:252,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_crypto_win.c:260,1
    - Dst: hmacCalculate
      Src: /src/libzip/lib/zip_crypto_win.c:264,1
    - Dst: myxor
      Src: /src/libzip/lib/zip_crypto_win.c:268,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_crypto_win.c:272,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_crypto_win.c:276,1
    - Dst: hmacFree
      Src: /src/libzip/lib/zip_crypto_win.c:284,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_win.c:285,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 46
    argCount: 7
    argNames:
    - pbPassword
    - cbPassword
    - pbSalt
    - cbSalt
    - cIterations
    - pbDerivedKey
    - cbDerivedKey
    argTypes:
    - PUCHAR
    - ULONG
    - PUCHAR
    - ULONG
    - DWORD
    - PUCHAR
    - ULONG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 223
    functionDepth: 2
    functionLinenumber: 223
    functionLinenumberEnd: 287
    functionName: pbkdf2
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - ceil
    - hmacInit
    - free
    - malloc
    - myxor
    - ZeroMemory
    - hmacFree
    - hmacCalculate
    - memcpy_s
    - max
    linkageType: ''
    returnType: BOOL
    signature: BOOL pbkdf2(PUCHAR pbPassword, ULONG cbPassword, PUCHAR pbSalt, ULONG
      cbSalt, DWORD cIterations, PUCHAR pbDerivedKey, ULONG cbDerivedKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pbkdf2
      Src: /src/libzip/lib/zip_crypto_win.c:290,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 7
    argNames:
    - key
    - key_length
    - salt
    - salt_length
    - iterations
    - output
    - output_length
    argTypes:
    - zip_uint8_t*
    - zip_uint64_t
    - zip_uint8_t*
    - zip_uint16_t
    - zip_uint16_t
    - zip_uint8_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 289
    functionDepth: 3
    functionLinenumber: 289
    functionLinenumberEnd: 291
    functionName: _zip_crypto_pbkdf2
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - pbkdf2
    linkageType: ''
    returnType: bool
    signature: bool _zip_crypto_pbkdf2(const zip_uint8_t *key, zip_uint64_t key_length,
      const zip_uint8_t *salt, zip_uint16_t salt_length, zip_uint16_t iterations,
      zip_uint8_t *output, zip_uint16_t output_length)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: calloc
      Src: /src/libzip/lib/zip_crypto_win.c:304,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_win.c:310,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:314,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/libzip/lib/zip_crypto_win.c:314,1
    - Dst: _zip_crypto_aes_free
      Src: /src/libzip/lib/zip_crypto_win.c:315,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:319,1
    - Dst: BCryptSetProperty
      Src: /src/libzip/lib/zip_crypto_win.c:319,1
    - Dst: _zip_crypto_aes_free
      Src: /src/libzip/lib/zip_crypto_win.c:320,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:324,1
    - Dst: BCryptGetProperty
      Src: /src/libzip/lib/zip_crypto_win.c:324,1
    - Dst: _zip_crypto_aes_free
      Src: /src/libzip/lib/zip_crypto_win.c:325,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_win.c:329,1
    - Dst: _zip_crypto_aes_free
      Src: /src/libzip/lib/zip_crypto_win.c:331,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_win.c:332,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:336,1
    - Dst: BCryptGenerateSymmetricKey
      Src: /src/libzip/lib/zip_crypto_win.c:336,1
    - Dst: _zip_crypto_aes_free
      Src: /src/libzip/lib/zip_crypto_win.c:337,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 3
    argNames:
    - key
    - key_size
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 303
    functionDepth: 1
    functionLinenumber: 303
    functionLinenumberEnd: 342
    functionName: _zip_crypto_aes_new
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - calloc
    - zip_error_set
    - BCryptSetProperty
    - malloc
    - BCryptGetProperty
    - BCryptOpenAlgorithmProvider
    - _zip_crypto_aes_free
    - BCryptGenerateSymmetricKey
    - BCRYPT_SUCCESS
    linkageType: ''
    returnType: _zip_crypto_aes_t
    signature: _zip_crypto_aes_t *_zip_crypto_aes_new(const zip_uint8_t *key, zip_uint16_t
      key_size, zip_error_t *error)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BCryptDestroyKey
      Src: /src/libzip/lib/zip_crypto_win.c:350,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_win.c:354,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/libzip/lib/zip_crypto_win.c:358,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_win.c:361,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - aes
    argTypes:
    - _zip_crypto_aes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 362
    functionName: _zip_crypto_aes_free
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 1
    functionsReached:
    - free
    - BCryptDestroyKey
    - BCryptCloseAlgorithmProvider
    linkageType: ''
    returnType: void
    signature: void _zip_crypto_aes_free(_zip_crypto_aes_t *aes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BCryptEncrypt
      Src: /src/libzip/lib/zip_crypto_win.c:366,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:367,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - aes
    - in
    - out
    argTypes:
    - _zip_crypto_aes_t*
    - zip_uint8_t*
    - zip_uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 368
    functionName: _zip_crypto_aes_encrypt_block
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - BCRYPT_SUCCESS
    - BCryptEncrypt
    linkageType: ''
    returnType: bool
    signature: bool _zip_crypto_aes_encrypt_block(_zip_crypto_aes_t *aes, const zip_uint8_t
      *in, zip_uint8_t *out)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_win.c:387,1
    - Dst: calloc
      Src: /src/libzip/lib/zip_crypto_win.c:391,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_win.c:394,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/libzip/lib/zip_crypto_win.c:398,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:399,1
    - Dst: _zip_crypto_hmac_free
      Src: /src/libzip/lib/zip_crypto_win.c:400,1
    - Dst: BCryptGetProperty
      Src: /src/libzip/lib/zip_crypto_win.c:404,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:405,1
    - Dst: _zip_crypto_hmac_free
      Src: /src/libzip/lib/zip_crypto_win.c:406,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_win.c:410,1
    - Dst: _zip_crypto_hmac_free
      Src: /src/libzip/lib/zip_crypto_win.c:412,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_win.c:413,1
    - Dst: BCryptGetProperty
      Src: /src/libzip/lib/zip_crypto_win.c:417,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:418,1
    - Dst: _zip_crypto_hmac_free
      Src: /src/libzip/lib/zip_crypto_win.c:419,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_win.c:423,1
    - Dst: _zip_crypto_hmac_free
      Src: /src/libzip/lib/zip_crypto_win.c:425,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_win.c:426,1
    - Dst: BCryptCreateHash
      Src: /src/libzip/lib/zip_crypto_win.c:430,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:431,1
    - Dst: _zip_crypto_hmac_free
      Src: /src/libzip/lib/zip_crypto_win.c:432,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 43
    argCount: 3
    argNames:
    - secret
    - secret_length
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 437
    functionName: _zip_crypto_hmac_new
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - calloc
    - zip_error_set
    - malloc
    - BCryptGetProperty
    - BCryptOpenAlgorithmProvider
    - BCryptCreateHash
    - BCRYPT_SUCCESS
    - _zip_crypto_hmac_free
    linkageType: ''
    returnType: _zip_crypto_hmac_t
    signature: _zip_crypto_hmac_t *_zip_crypto_hmac_new(const zip_uint8_t *secret,
      zip_uint64_t secret_length, zip_error_t *error)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: BCryptDestroyHash
      Src: /src/libzip/lib/zip_crypto_win.c:445,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_win.c:449,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_win.c:453,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/libzip/lib/zip_crypto_win.c:457,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_win.c:460,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - hmac
    argTypes:
    - _zip_crypto_hmac_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 439
    functionDepth: 0
    functionLinenumber: 439
    functionLinenumberEnd: 461
    functionName: _zip_crypto_hmac_free
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 1
    functionsReached:
    - BCryptDestroyHash
    - free
    - BCryptCloseAlgorithmProvider
    linkageType: ''
    returnType: void
    signature: void _zip_crypto_hmac_free(_zip_crypto_hmac_t *hmac)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:468,1
    - Dst: BCryptHashData
      Src: /src/libzip/lib/zip_crypto_win.c:468,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - hmac
    - data
    - length
    argTypes:
    - _zip_crypto_hmac_t*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 469
    functionName: _zip_crypto_hmac
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - BCRYPT_SUCCESS
    - BCryptHashData
    linkageType: ''
    returnType: bool
    signature: bool _zip_crypto_hmac(_zip_crypto_hmac_t *hmac, zip_uint8_t *data,
      zip_uint64_t length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:476,1
    - Dst: BCryptFinishHash
      Src: /src/libzip/lib/zip_crypto_win.c:476,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - hmac
    - data
    argTypes:
    - _zip_crypto_hmac_t*
    - zip_uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 471
    functionDepth: 0
    functionLinenumber: 471
    functionLinenumberEnd: 477
    functionName: _zip_crypto_hmac_output
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 0
    functionsReached:
    - BCRYPT_SUCCESS
    - BCryptFinishHash
    linkageType: ''
    returnType: bool
    signature: bool _zip_crypto_hmac_output(_zip_crypto_hmac_t *hmac, zip_uint8_t
      *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BCRYPT_SUCCESS
      Src: /src/libzip/lib/zip_crypto_win.c:480,1
    - Dst: BCryptGenRandom
      Src: /src/libzip/lib/zip_crypto_win.c:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buffer
    - length
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 481
    functionName: zip_secure_random
    functionSourceFile: /src/libzip/lib/zip_crypto_win.c
    functionUses: 4
    functionsReached:
    - BCRYPT_SUCCESS
    - BCryptGenRandom
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_secure_random(zip_uint8_t *buffer, zip_uint16_t length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_file_replace
      Src: /src/libzip/lib/zip_replace.c:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - za
    - idx
    - source
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: zip_replace
    functionSourceFile: /src/libzip/lib/zip_replace.c
    functionUses: 0
    functionsReached:
    - zip_file_replace
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_replace(zip_t *za, zip_uint64_t idx, zip_source_t *source)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_get_offset.c:52,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_file_get_offset.c:58,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_file_get_offset.c:59,1
    - Dst: _zip_dirent_size
      Src: /src/libzip/lib/zip_file_get_offset.c:64,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_get_offset.c:69,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - za
    - idx
    - error
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 74
    functionName: _zip_file_get_offset
    functionSourceFile: /src/libzip/lib/zip_file_get_offset.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - zip_source_seek
    - zip_error_set
    - _zip_dirent_size
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t _zip_file_get_offset(const zip_t *za, zip_uint64_t idx,
      zip_error_t *error)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: _zip_file_get_offset
      Src: /src/libzip/lib/zip_file_get_offset.c:80,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_get_offset.c:87,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_file_get_offset.c:94,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_file_get_offset.c:95,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_file_get_offset.c:98,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_file_get_offset.c:99,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_file_get_offset.c:102,1
    - Dst: _zip_dirent_needs_zip64
      Src: /src/libzip/lib/zip_file_get_offset.c:106,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_get_offset.c:110,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 3
    argNames:
    - za
    - index
    - error
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 76
    functionDepth: 3
    functionLinenumber: 76
    functionLinenumberEnd: 116
    functionName: _zip_file_get_end
    functionSourceFile: /src/libzip/lib/zip_file_get_offset.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - zip_source_read
    - zip_error_set
    - _zip_dirent_needs_zip64
    - _zip_file_get_offset
    - zip_source_seek
    - memcmp
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t _zip_file_get_end(const zip_t *za, zip_uint64_t index,
      zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_strerror
      Src: /src/libzip/lib/zip_file_strerror.c:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - zf
    argTypes:
    - zip_file_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: zip_file_strerror
    functionSourceFile: /src/libzip/lib/zip_file_strerror.c
    functionUses: 2
    functionsReached:
    - zip_error_strerror
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_file_strerror(zip_file_t *zf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_progress_update
      Src: /src/libzip/lib/zip_progress.c:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - progress
    argTypes:
    - zip_progress_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: _zip_progress_end
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 0
    functionsReached:
    - _zip_progress_update
    linkageType: ''
    returnType: void
    signature: void _zip_progress_end(zip_progress_t *progress)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_progress_free_progress_callback
      Src: /src/libzip/lib/zip_progress.c:77,1
    - Dst: _zip_progress_free_cancel_callback
      Src: /src/libzip/lib/zip_progress.c:78,1
    - Dst: free
      Src: /src/libzip/lib/zip_progress.c:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - progress
    argTypes:
    - zip_progress_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 81
    functionName: _zip_progress_free
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 1
    functionsReached:
    - _zip_progress_free_progress_callback
    - free
    - _zip_progress_free_cancel_callback
    linkageType: ''
    returnType: void
    signature: void _zip_progress_free(zip_progress_t *progress)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_progress.c:85,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_progress.c:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - za
    argTypes:
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 104
    functionName: _zip_progress_new
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 0
    functionsReached:
    - malloc
    - zip_error_set
    linkageType: ''
    returnType: zip_progress_t
    signature: zip_progress_t *_zip_progress_new(zip_t *za)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_progress_t*::ud_progress_free
      Src: /src/libzip/lib/zip_progress.c:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - progress
    argTypes:
    - zip_progress_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 114
    functionName: _zip_progress_free_progress_callback
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 1
    functionsReached:
    - zip_progress_t*::ud_progress_free
    linkageType: ''
    returnType: void
    signature: void _zip_progress_free_progress_callback(zip_progress_t *progress)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_progress_t*::ud_cancel_free
      Src: /src/libzip/lib/zip_progress.c:118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - progress
    argTypes:
    - zip_progress_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 124
    functionName: _zip_progress_free_cancel_callback
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 1
    functionsReached:
    - zip_progress_t*::ud_cancel_free
    linkageType: ''
    returnType: void
    signature: void _zip_progress_free_cancel_callback(zip_progress_t *progress)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_progress_free_progress_callback
      Src: /src/libzip/lib/zip_progress.c:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - progress
    - precision
    - callback
    - ud
    argTypes:
    - zip_progress_t*
    - double
    - zip_progress_callback
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 133
    functionName: _zip_progress_set_progress_callback
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 0
    functionsReached:
    - _zip_progress_free_progress_callback
    linkageType: ''
    returnType: void
    signature: void _zip_progress_set_progress_callback(zip_progress_t *progress,
      double precision, zip_progress_callback callback, void (*ud_free)(void *), void
      *ud)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_progress_free_cancel_callback
      Src: /src/libzip/lib/zip_progress.c:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - progress
    - callback
    - ud
    argTypes:
    - zip_progress_t*
    - zip_cancel_callback
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 141
    functionName: _zip_progress_set_cancel_callback
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 0
    functionsReached:
    - _zip_progress_free_cancel_callback
    linkageType: ''
    returnType: void
    signature: void _zip_progress_set_cancel_callback(zip_progress_t *progress, zip_cancel_callback
      callback, void (*ud_free)(void *), void *ud)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: zip_progress_t*::callback_progress
      Src: /src/libzip/lib/zip_progress.c:150,1
    - Dst: zip_progress_t*::callback_cancel
      Src: /src/libzip/lib/zip_progress.c:154,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - progress
    argTypes:
    - zip_progress_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 160
    functionName: _zip_progress_start
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 0
    functionsReached:
    - zip_progress_t*::callback_cancel
    - zip_progress_t*::callback_progress
    linkageType: ''
    returnType: int
    signature: int _zip_progress_start(zip_progress_t *progress)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_progress_update
      Src: /src/libzip/lib/zip_progress.c:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - progress
    - start
    - end
    argTypes:
    - zip_progress_t*
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 172
    functionName: _zip_progress_subrange
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 0
    functionsReached:
    - _zip_progress_update
    linkageType: ''
    returnType: int
    signature: int _zip_progress_subrange(zip_progress_t *progress, double start,
      double end)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_progress.c:182,1
    - Dst: ZIP_MAX
      Src: /src/libzip/lib/zip_progress.c:182,1
    - Dst: zip_progress_t*::callback_progress
      Src: /src/libzip/lib/zip_progress.c:185,1
    - Dst: zip_progress_t*::callback_cancel
      Src: /src/libzip/lib/zip_progress.c:191,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - progress
    - sub_current
    argTypes:
    - zip_progress_t*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 197
    functionName: _zip_progress_update
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 2
    functionsReached:
    - ZIP_MIN
    - ZIP_MAX
    - zip_progress_t*::callback_cancel
    - zip_progress_t*::callback_progress
    linkageType: ''
    returnType: int
    signature: int _zip_progress_update(zip_progress_t *progress, double sub_current)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _zip_progress_new
      Src: /src/libzip/lib/zip_progress.c:203,1
    - Dst: _zip_progress_set_progress_callback
      Src: /src/libzip/lib/zip_progress.c:208,1
    - Dst: _zip_progress_free
      Src: /src/libzip/lib/zip_progress.c:213,1
    - Dst: _zip_progress_free_progress_callback
      Src: /src/libzip/lib/zip_progress.c:217,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 4
    argNames:
    - za
    - precision
    - callback
    - ud
    argTypes:
    - zip_t*
    - double
    - zip_progress_callback
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 200
    functionDepth: 2
    functionLinenumber: 200
    functionLinenumberEnd: 223
    functionName: zip_register_progress_callback_with_state
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 1
    functionsReached:
    - _zip_progress_free_progress_callback
    - _zip_progress_set_progress_callback
    - _zip_progress_free
    - _zip_progress_new
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_register_progress_callback_with_state(zip_t *za, double
      precision, zip_progress_callback callback, void (*ud_free)(void *), void *ud)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _zip_progress_new
      Src: /src/libzip/lib/zip_progress.c:229,1
    - Dst: _zip_progress_set_cancel_callback
      Src: /src/libzip/lib/zip_progress.c:234,1
    - Dst: _zip_progress_free
      Src: /src/libzip/lib/zip_progress.c:239,1
    - Dst: _zip_progress_free_cancel_callback
      Src: /src/libzip/lib/zip_progress.c:243,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - za
    - callback
    - ud
    argTypes:
    - zip_t*
    - zip_cancel_callback
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 249
    functionName: zip_register_cancel_callback_with_state
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 1
    functionsReached:
    - _zip_progress_set_cancel_callback
    - _zip_progress_free
    - _zip_progress_new
    - _zip_progress_free_cancel_callback
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_register_cancel_callback_with_state(zip_t *za, zip_cancel_callback
      callback, void (*ud_free)(void *), void *ud)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: struct legacy_ud*::callback
      Src: /src/libzip/lib/zip_progress.c:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - za
    - progress
    - vud
    argTypes:
    - zip_t*
    - double
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 261
    functionName: _zip_legacy_progress_callback
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 0
    functionsReached:
    - struct legacy_ud*::callback
    linkageType: ''
    returnType: void
    signature: void _zip_legacy_progress_callback(zip_t *za, double progress, void
      *vud)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_register_progress_callback_with_state
      Src: /src/libzip/lib/zip_progress.c:267,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_progress.c:270,1
    - Dst: zip_register_progress_callback_with_state
      Src: /src/libzip/lib/zip_progress.c:276,1
    - Dst: free
      Src: /src/libzip/lib/zip_progress.c:277,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - za
    - progress_callback
    argTypes:
    - zip_t*
    - zip_progress_callback_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 263
    functionDepth: 3
    functionLinenumber: 263
    functionLinenumberEnd: 279
    functionName: zip_register_progress_callback
    functionSourceFile: /src/libzip/lib/zip_progress.c
    functionUses: 0
    functionsReached:
    - free
    - malloc
    - zip_register_progress_callback_with_state
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_register_progress_callback(zip_t *za, zip_progress_callback_t
      progress_callback)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_source_window_new
      Src: /src/libzip/lib/zip_source_window.c:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: zip_source_t *zip_source_window_create(zip_source_t *src, zip_uint64_t
      start, zip_int64_t len, zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_window.c
    functionUses: 0
    functionsReached:
    - _zip_source_window_new
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_window_create(zip_source_t *src,
      zip_uint64_t start, zip_int64_t len, zip_error_t *error)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:73,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:79,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_window.c:84,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:85,1
    - Dst: zip_stat_init
      Src: /src/libzip/lib/zip_source_window.c:97,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_window.c:100,1
    - Dst: zip_file_attributes_init
      Src: /src/libzip/lib/zip_source_window.c:103,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_source_window.c:114,1
    - Dst: zip_source_supports
      Src: /src/libzip/lib/zip_source_window.c:115,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/lib/zip_source_window.c:115,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_window.c:116,1
    - Dst: _zip_stat_merge
      Src: /src/libzip/lib/zip_source_window.c:119,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_window.c:120,1
    - Dst: zip_source_layered_create
      Src: /src/libzip/lib/zip_source_window.c:125,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_window.c:127,1
    - Dst: zip_source_keep
      Src: /src/libzip/lib/zip_source_window.c:131,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 55
    argCount: 11
    argNames:
    - src
    - start
    - length
    - st
    - st_invalid
    - attributes
    - dostime
    - source_archive
    - source_index
    - take_ownership
    - error
    argTypes:
    - zip_source_t*
    - zip_uint64_t
    - zip_int64_t
    - zip_stat_t*
    - zip_uint64_t
    - zip_file_attributes_t*
    - zip_dostime_t*
    - zip_t*
    - zip_uint64_t
    - bool
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 134
    functionName: _zip_source_window_new
    functionSourceFile: /src/libzip/lib/zip_source_window.c
    functionUses: 2
    functionsReached:
    - free
    - zip_source_keep
    - zip_error_set
    - zip_error_init
    - _zip_stat_merge
    - zip_source_make_command_bitmap
    - malloc
    - zip_source_supports
    - ZIP_SOURCE_MAKE_COMMAND_BITMASK
    - zip_stat_init
    - zip_source_layered_create
    - memcpy_s
    - zip_file_attributes_init
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *_zip_source_window_new(zip_source_t *src, zip_uint64_t
      start, zip_int64_t length, zip_stat_t *st, zip_uint64_t st_invalid, zip_file_attributes_t
      *attributes, zip_dostime_t *dostime, zip_t *source_archive, zip_uint64_t source_index,
      bool take_ownership, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_register_source
      Src: /src/libzip/lib/zip_source_window.c:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - src
    - za
    argTypes:
    - zip_source_t*
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: _zip_source_set_source_archive
    functionSourceFile: /src/libzip/lib/zip_source_window.c
    functionUses: 0
    functionsReached:
    - _zip_register_source
    linkageType: ''
    returnType: int
    signature: int _zip_source_set_source_archive(zip_source_t *src, zip_t *za)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_source_window.c:147,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 150
    functionName: _zip_source_invalidate
    functionSourceFile: /src/libzip/lib/zip_source_window.c
    functionUses: 1
    functionsReached:
    - zip_error_code_zip
    - zip_error_set
    linkageType: ''
    returnType: void
    signature: void _zip_source_invalidate(zip_source_t *src)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_to_data
      Src: /src/libzip/lib/zip_source_window.c:165,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_window.c:168,1
    - Dst: _zip_file_get_offset
      Src: /src/libzip/lib/zip_source_window.c:175,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:181,1
    - Dst: MAKE_DETAIL_WITH_INDEX
      Src: /src/libzip/lib/zip_source_window.c:181,1
    - Dst: DEFINE_BYTE_ARRAY
      Src: /src/libzip/lib/zip_source_window.c:191,1
    - Dst: byte_array_init
      Src: /src/libzip/lib/zip_source_window.c:193,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:194,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_window.c:200,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_window.c:201,1
    - Dst: byte_array_fini
      Src: /src/libzip/lib/zip_source_window.c:202,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:206,1
    - Dst: byte_array_fini
      Src: /src/libzip/lib/zip_source_window.c:207,1
    - Dst: byte_array_fini
      Src: /src/libzip/lib/zip_source_window.c:212,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_source_window.c:228,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_window.c:229,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_window.c:234,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:235,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:243,1
    - Dst: ZIP_SOURCE_GET_ARGS
      Src: /src/libzip/lib/zip_source_window.c:253,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_source_window.c:259,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_window.c:260,1
    - Dst: zip_source_tell
      Src: /src/libzip/lib/zip_source_window.c:263,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_window.c:265,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:269,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_source_window.c:270,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:279,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:285,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_source_window.c:288,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_window.c:289,1
    - Dst: zip_source_seek_compute_offset
      Src: /src/libzip/lib/zip_source_window.c:297,1
    - Dst: _zip_stat_merge
      Src: /src/libzip/lib/zip_source_window.c:313,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:334,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_window.c:338,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_window.c:343,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_window.c:347,1
    - Dst: zip_source_pass_to_lower_layer
      Src: /src/libzip/lib/zip_source_window.c:361,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 165
    argCount: 5
    argNames:
    - src
    - _ctx
    - data
    - len
    - cmd
    argTypes:
    - zip_source_t*
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 153
    functionDepth: 3
    functionLinenumber: 153
    functionLinenumberEnd: 363
    functionName: window_read
    functionSourceFile: /src/libzip/lib/zip_source_window.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - free
    - zip_source_read
    - zip_error_set
    - _zip_stat_merge
    - DEFINE_BYTE_ARRAY
    - byte_array_fini
    - zip_error_to_data
    - zip_source_pass_to_lower_layer
    - zip_source_tell
    - MAKE_DETAIL_WITH_INDEX
    - ZIP_SOURCE_GET_ARGS
    - byte_array_init
    - zip_source_seek_compute_offset
    - _zip_file_get_offset
    - memcpy_s
    - zip_source_seek
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t window_read(zip_source_t *src, void *_ctx, void *data,
      zip_uint64_t len, zip_source_cmd_t cmd)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - za
    - src
    argTypes:
    - zip_t*
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 376
    functionName: _zip_deregister_source
    functionSourceFile: /src/libzip/lib/zip_source_window.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void _zip_deregister_source(zip_t *za, zip_source_t *src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_REALLOC
      Src: /src/libzip/lib/zip_source_window.c:381,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - za
    - src
    argTypes:
    - zip_t*
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 389
    functionName: _zip_register_source
    functionSourceFile: /src/libzip/lib/zip_source_window.c
    functionUses: 1
    functionsReached:
    - ZIP_REALLOC
    linkageType: ''
    returnType: int
    signature: int _zip_register_source(zip_t *za, zip_source_t *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: zip_source_is_deleted
    functionSourceFile: /src/libzip/lib/zip_source_is_deleted.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_is_deleted(zip_source_t *src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_tell_write.c:39,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_tell_write.c:40,1
    - Dst: ZIP_SOURCE_IS_OPEN_WRITING
      Src: /src/libzip/lib/zip_source_tell_write.c:44,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_tell_write.c:45,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_tell_write.c:49,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 50
    functionName: zip_int64_t::zip_source_tell_write
    functionSourceFile: /src/libzip/lib/zip_source_tell_write.c
    functionUses: 0
    functionsReached:
    - _zip_source_call
    - ZIP_SOURCE_IS_OPEN_WRITING
    - ZIP_SOURCE_IS_LAYERED
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_source_tell_write(zip_source_t *src)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 82
    argCount: 2
    argNames:
    - str
    - expected_encoding
    argTypes:
    - zip_string_t*
    - zip_encoding_type_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 207
    functionName: _zip_guess_encoding
    functionSourceFile: /src/libzip/lib/zip_utf-8.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_encoding_type_t
    signature: zip_encoding_type_t _zip_guess_encoding(zip_string_t *str, zip_encoding_type_t
      expected_encoding)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - codepoint
    argTypes:
    - zip_uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 221
    functionName: _zip_unicode_to_utf8_len
    functionSourceFile: /src/libzip/lib/zip_utf-8.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint32_t
    signature: zip_uint32_t _zip_unicode_to_utf8_len(zip_uint32_t codepoint)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - codepoint
    - buf
    argTypes:
    - zip_uint32_t
    - zip_uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 245
    functionName: _zip_unicode_to_utf8
    functionSourceFile: /src/libzip/lib/zip_utf-8.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint32_t
    signature: zip_uint32_t _zip_unicode_to_utf8(zip_uint32_t codepoint, zip_uint8_t
      *buf)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _zip_unicode_to_utf8_len
      Src: /src/libzip/lib/zip_utf-8.c:262,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_utf-8.c:265,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_utf-8.c:266,1
    - Dst: _zip_unicode_to_utf8
      Src: /src/libzip/lib/zip_utf-8.c:272,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 4
    argNames:
    - _cp437buf
    - len
    - utf8_lenp
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint32_t
    - zip_uint32_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 248
    functionDepth: 1
    functionLinenumber: 248
    functionLinenumberEnd: 280
    functionName: _zip_cp437_to_utf8
    functionSourceFile: /src/libzip/lib/zip_utf-8.c
    functionUses: 0
    functionsReached:
    - _zip_unicode_to_utf8_len
    - malloc
    - zip_error_set
    - _zip_unicode_to_utf8
    linkageType: ''
    returnType: zip_uint8_t
    signature: zip_uint8_t *_zip_cp437_to_utf8(const zip_uint8_t *const _cp437buf,
      zip_uint32_t len, zip_uint32_t *utf8_lenp, zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _zip_crypto_aes_encrypt_block
      Src: /src/libzip/lib/zip_winzip_aes.c:64,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - data
    - length
    argTypes:
    - zip_winzip_aes_t*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 73
    functionName: aes_crypt
    functionSourceFile: /src/libzip/lib/zip_winzip_aes.c
    functionUses: 0
    functionsReached:
    - _zip_crypto_aes_encrypt_block
    linkageType: ''
    returnType: bool
    signature: bool aes_crypt(zip_winzip_aes_t *ctx, zip_uint8_t *data, zip_uint64_t
      length)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_winzip_aes.c:95,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_winzip_aes.c:101,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_winzip_aes.c:102,1
    - Dst: memset
      Src: /src/libzip/lib/zip_winzip_aes.c:106,1
    - Dst: _zip_crypto_pbkdf2
      Src: /src/libzip/lib/zip_winzip_aes.c:109,1
    - Dst: free
      Src: /src/libzip/lib/zip_winzip_aes.c:110,1
    - Dst: _zip_crypto_aes_new
      Src: /src/libzip/lib/zip_winzip_aes.c:114,1
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_winzip_aes.c:115,1
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_winzip_aes.c:116,1
    - Dst: free
      Src: /src/libzip/lib/zip_winzip_aes.c:117,1
    - Dst: _zip_crypto_hmac_new
      Src: /src/libzip/lib/zip_winzip_aes.c:120,1
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_winzip_aes.c:121,1
    - Dst: _zip_crypto_aes_free
      Src: /src/libzip/lib/zip_winzip_aes.c:122,1
    - Dst: free
      Src: /src/libzip/lib/zip_winzip_aes.c:123,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_winzip_aes.c:128,1
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_winzip_aes.c:131,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 6
    argNames:
    - password
    - password_length
    - salt
    - encryption_method
    - password_verify
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint64_t
    - zip_uint8_t*
    - zip_uint16_t
    - zip_uint8_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 134
    functionName: _zip_winzip_aes_new
    functionSourceFile: /src/libzip/lib/zip_winzip_aes.c
    functionUses: 0
    functionsReached:
    - free
    - zip_error_set
    - _zip_crypto_aes_new
    - _zip_crypto_hmac_new
    - malloc
    - memset
    - _zip_crypto_aes_free
    - _zip_crypto_pbkdf2
    - _zip_crypto_clear
    - memcpy_s
    linkageType: ''
    returnType: zip_winzip_aes_t
    signature: zip_winzip_aes_t *_zip_winzip_aes_new(const zip_uint8_t *password,
      zip_uint64_t password_length, const zip_uint8_t *salt, zip_uint16_t encryption_method,
      zip_uint8_t *password_verify, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: aes_crypt
      Src: /src/libzip/lib/zip_winzip_aes.c:138,1
    - Dst: _zip_crypto_hmac
      Src: /src/libzip/lib/zip_winzip_aes.c:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - data
    - length
    argTypes:
    - zip_winzip_aes_t*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: _zip_winzip_aes_encrypt
    functionSourceFile: /src/libzip/lib/zip_winzip_aes.c
    functionUses: 0
    functionsReached:
    - aes_crypt
    - _zip_crypto_hmac
    linkageType: ''
    returnType: bool
    signature: bool _zip_winzip_aes_encrypt(zip_winzip_aes_t *ctx, zip_uint8_t *data,
      zip_uint64_t length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_crypto_hmac
      Src: /src/libzip/lib/zip_winzip_aes.c:143,1
    - Dst: aes_crypt
      Src: /src/libzip/lib/zip_winzip_aes.c:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - data
    - length
    argTypes:
    - zip_winzip_aes_t*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: _zip_winzip_aes_decrypt
    functionSourceFile: /src/libzip/lib/zip_winzip_aes.c
    functionUses: 0
    functionsReached:
    - aes_crypt
    - _zip_crypto_hmac
    linkageType: ''
    returnType: bool
    signature: bool _zip_winzip_aes_decrypt(zip_winzip_aes_t *ctx, zip_uint8_t *data,
      zip_uint64_t length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_crypto_hmac_output
      Src: /src/libzip/lib/zip_winzip_aes.c:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - hmac
    argTypes:
    - zip_winzip_aes_t*
    - zip_uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: _zip_winzip_aes_finish
    functionSourceFile: /src/libzip/lib/zip_winzip_aes.c
    functionUses: 0
    functionsReached:
    - _zip_crypto_hmac_output
    linkageType: ''
    returnType: bool
    signature: bool _zip_winzip_aes_finish(zip_winzip_aes_t *ctx, zip_uint8_t *hmac)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_crypto_aes_free
      Src: /src/libzip/lib/zip_winzip_aes.c:157,1
    - Dst: _zip_crypto_hmac_free
      Src: /src/libzip/lib/zip_winzip_aes.c:158,1
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_winzip_aes.c:159,1
    - Dst: free
      Src: /src/libzip/lib/zip_winzip_aes.c:160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_winzip_aes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 161
    functionName: _zip_winzip_aes_free
    functionSourceFile: /src/libzip/lib/zip_winzip_aes.c
    functionUses: 0
    functionsReached:
    - _zip_crypto_aes_free
    - free
    - _zip_crypto_clear
    - _zip_crypto_hmac_free
    linkageType: ''
    returnType: void
    signature: void _zip_winzip_aes_free(zip_winzip_aes_t *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - uncompressed_size
    argTypes:
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 106
    functionName: maximum_compressed_size
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t maximum_compressed_size(zip_uint64_t uncompressed_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_algorithm_xz.c:112,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_xz.c:113,1
    - Dst: memset
      Src: /src/libzip/lib/zip_algorithm_xz.c:127,1
    - Dst: memset
      Src: /src/libzip/lib/zip_algorithm_xz.c:135,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 4
    argNames:
    - compress
    - compression_flags
    - error
    - method
    argTypes:
    - bool
    - zip_uint32_t
    - zip_error_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 138
    functionName: allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 0
    functionsReached:
    - malloc
    - zip_error_set
    - memset
    linkageType: ''
    returnType: void
    signature: void *allocate(bool compress, zip_uint32_t compression_flags, zip_error_t
      *error, zip_uint16_t method)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: allocate
      Src: /src/libzip/lib/zip_algorithm_xz.c:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - method
    - compression_flags
    - error
    argTypes:
    - zip_uint16_t
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionName: compress_allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 0
    functionsReached:
    - allocate
    linkageType: ''
    returnType: void
    signature: void *compress_allocate(zip_uint16_t method, zip_uint32_t compression_flags,
      zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: allocate
      Src: /src/libzip/lib/zip_algorithm_xz.c:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - method
    - compression_flags
    - error
    argTypes:
    - zip_uint16_t
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: decompress_allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 0
    functionsReached:
    - allocate
    linkageType: ''
    returnType: void
    signature: void *decompress_allocate(zip_uint16_t method, zip_uint32_t compression_flags,
      zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/lib/zip_algorithm_xz.c:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: deallocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 0
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void deallocate(void *ud)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 170
    functionName: general_purpose_bit_flags
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint16_t
    signature: zip_uint16_t general_purpose_bit_flags(void *ud)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - ret
    argTypes:
    - lzma_ret
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 187
    functionName: map_error
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int map_error(lzma_ret ret)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: lzma_lzma_preset
      Src: /src/libzip/lib/zip_algorithm_xz.c:195,1
    - Dst: lzma_alone_encoder
      Src: /src/libzip/lib/zip_algorithm_xz.c:208,1
    - Dst: lzma_stream_encoder
      Src: /src/libzip/lib/zip_algorithm_xz.c:211,1
    - Dst: lzma_alone_decoder
      Src: /src/libzip/lib/zip_algorithm_xz.c:216,1
    - Dst: lzma_stream_decoder
      Src: /src/libzip/lib/zip_algorithm_xz.c:219,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_xz.c:224,1
    - Dst: map_error
      Src: /src/libzip/lib/zip_algorithm_xz.c:224,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - ud
    - st
    - attributes
    argTypes:
    - void*
    - zip_stat_t*
    - zip_file_attributes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 237
    functionName: start
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 2
    functionsReached:
    - zip_error_set
    - lzma_lzma_preset
    - lzma_stream_encoder
    - lzma_alone_decoder
    - map_error
    - lzma_alone_encoder
    - lzma_stream_decoder
    linkageType: ''
    returnType: bool
    signature: bool start(void *ud, zip_stat_t *st, zip_file_attributes_t *attributes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lzma_end
      Src: /src/libzip/lib/zip_algorithm_xz.c:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 245
    functionName: end
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 6
    functionsReached:
    - lzma_end
    linkageType: ''
    returnType: bool
    signature: bool end(void *ud)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_xz.c:252,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_algorithm_xz.c:259,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_algorithm_xz.c:260,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_xz.c:271,1
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_algorithm_xz.c:275,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_xz.c:276,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_algorithm_xz.c:279,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_algorithm_xz.c:280,1
    - Dst: lzma_code
      Src: /src/libzip/lib/zip_algorithm_xz.c:290,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_xz.c:291,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 3
    argNames:
    - ud
    - data
    - length
    argTypes:
    - void*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 248
    functionDepth: 3
    functionLinenumber: 248
    functionLinenumberEnd: 301
    functionName: input
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 0
    functionsReached:
    - ZIP_MIN
    - _zip_buffer_new
    - _zip_buffer_free
    - zip_error_set
    - lzma_code
    - memcpy_s
    - _zip_buffer_put_64
    linkageType: ''
    returnType: bool
    signature: bool input(void *ud, zip_uint8_t *data, zip_uint64_t length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 309
    functionName: end_of_input
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool end_of_input(void *ud)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: lzma_code
      Src: /src/libzip/lib/zip_algorithm_xz.c:327,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_algorithm_xz.c:336,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_algorithm_xz.c:337,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_algorithm_xz.c:347,1
    - Dst: lzma_code
      Src: /src/libzip/lib/zip_algorithm_xz.c:351,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_xz.c:368,1
    - Dst: map_error
      Src: /src/libzip/lib/zip_algorithm_xz.c:368,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 3
    argNames:
    - ud
    - data
    - length
    argTypes:
    - void*
    - zip_uint8_t*
    - zip_uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 371
    functionName: process
    functionSourceFile: /src/libzip/lib/zip_algorithm_xz.c
    functionUses: 0
    functionsReached:
    - ZIP_MIN
    - zip_error_set
    - lzma_code
    - map_error
    - memcpy_s
    linkageType: ''
    returnType: zip_compression_status_t
    signature: zip_compression_status_t process(void *ud, zip_uint8_t *data, zip_uint64_t
      *length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: zip_libzip_version
    functionSourceFile: /src/libzip/lib/zip_libzip_version.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_libzip_version(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libzip/lib/zip_file_rename.c:43,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_rename.c:46,1
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_file_rename.c:50,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_rename.c:51,1
    - Dst: zip_get_name
      Src: /src/libzip/lib/zip_file_rename.c:55,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_file_rename.c:60,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_rename.c:63,1
    - Dst: _zip_set_name
      Src: /src/libzip/lib/zip_file_rename.c:67,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 4
    argNames:
    - za
    - idx
    - name
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - char*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 68
    functionName: zip_file_rename
    functionSourceFile: /src/libzip/lib/zip_file_rename.c
    functionUses: 2
    functionsReached:
    - zip_error_set
    - zip_get_name
    - _zip_set_name
    - strlen
    - ZIP_IS_RDONLY
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_rename(zip_t *za, zip_uint64_t idx, const char
      *name, zip_flags_t flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_strerror
      Src: /src/libzip/lib/zip_strerror.c:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - za
    argTypes:
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: zip_strerror
    functionSourceFile: /src/libzip/lib/zip_strerror.c
    functionUses: 45
    functionsReached:
    - zip_error_strerror
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_strerror(zip_t *za)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_add.c:46,1
    - Dst: _zip_file_replace
      Src: /src/libzip/lib/zip_file_add.c:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - za
    - name
    - source
    - flags
    argTypes:
    - zip_t*
    - char*
    - zip_source_t*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: zip_int64_t::zip_file_add
    functionSourceFile: /src/libzip/lib/zip_file_add.c
    functionUses: 1
    functionsReached:
    - _zip_file_replace
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_file_add(zip_t *za, const char *name, zip_source_t
      *source, zip_flags_t flags)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_remove.c:39,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_remove.c:40,1
    - Dst: ZIP_SOURCE_IS_OPEN_READING
      Src: /src/libzip/lib/zip_source_remove.c:48,1
    - Dst: zip_source_close
      Src: /src/libzip/lib/zip_source_remove.c:49,1
    - Dst: zip_source_rollback_write
      Src: /src/libzip/lib/zip_source_remove.c:54,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_remove.c:57,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 64
    functionName: zip_source_remove
    functionSourceFile: /src/libzip/lib/zip_source_remove.c
    functionUses: 0
    functionsReached:
    - ZIP_SOURCE_IS_LAYERED
    - zip_error_set
    - _zip_source_call
    - zip_source_close
    - zip_source_rollback_write
    - ZIP_SOURCE_IS_OPEN_READING
    linkageType: ''
    returnType: int
    signature: int zip_source_remove(zip_source_t *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - buf
    - ','
    - bufsz
    - ','
    - len
    - ','
    - fmt
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: _snwprintf_s
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _snwprintf_s(buf, bufsz, len, fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 183
    functionName: ftello
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ftello(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - t
    - ','
    - tm
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 190
    functionName: zip_localtime
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: zip_localtime(t, tm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - t
    - ','
    - tm
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 198
    functionName: zip_localtime
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: zip_localtime(t, tm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - dest
    - ','
    - destsz
    - ','
    - src
    - ','
    - count
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 203
    functionName: memcpy_s
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: memcpy_s(dest, destsz, src, count)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - buf
    - ','
    - bufsz
    - ','
    - fmt
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 208
    functionName: snprintf_s
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: snprintf_s(buf, bufsz, fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - dest
    - ','
    - destsz
    - ','
    - src
    - ','
    - count
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 223
    functionName: strncpy_s
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: strncpy_s(dest, destsz, src, count)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - errnum
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 227
    functionName: strerrorlen_s
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: strerrorlen_s(errnum)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - buf
    - ','
    - bufsz
    - ','
    - errnum
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 228
    functionName: strerror_s
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: strerror_s(buf, bufsz, errnum)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - errnum
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 231
    functionName: strerrorlen_s
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: strerrorlen_s(errnum)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - mode
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 265
    functionName: S_ISDIR
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_ISDIR(mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - mode
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 269
    functionName: S_ISREG
    functionSourceFile: /src/libzip/lib/compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_ISREG(mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_get_name
      Src: /src/libzip/lib/zip_get_name.c:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - za
    - idx
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: zip_get_name
    functionSourceFile: /src/libzip/lib/zip_get_name.c
    functionUses: 5
    functionsReached:
    - _zip_get_name
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_get_name(zip_t *za, zip_uint64_t idx, zip_flags_t flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_get_name.c:49,1
    - Dst: _zip_string_get
      Src: /src/libzip/lib/zip_get_name.c:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - za
    - idx
    - flags
    - error
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_flags_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 58
    functionName: _zip_get_name
    functionSourceFile: /src/libzip/lib/zip_get_name.c
    functionUses: 2
    functionsReached:
    - _zip_string_get
    - _zip_get_dirent
    linkageType: ''
    returnType: char
    signature: char *_zip_get_name(zip_t *za, zip_uint64_t idx, zip_flags_t flags,
      zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_error_clear
      Src: /src/libzip/lib/zip_error_clear.c:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - za
    argTypes:
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionName: zip_error_clear
    functionSourceFile: /src/libzip/lib/zip_error_clear.c
    functionUses: 1
    functionsReached:
    - _zip_error_clear
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_clear(zip_t *za)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_OPEN_READING
      Src: /src/libzip/lib/zip_source_close.c:39,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_close.c:40,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_close.c:46,1
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_close.c:48,1
    - Dst: zip_source_close
      Src: /src/libzip/lib/zip_source_close.c:49,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_close.c:50,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 56
    functionName: zip_source_close
    functionSourceFile: /src/libzip/lib/zip_source_close.c
    functionUses: 7
    functionsReached:
    - ZIP_SOURCE_IS_LAYERED
    - zip_error_set
    - _zip_source_call
    - zip_source_close
    - ZIP_SOURCE_IS_OPEN_READING
    linkageType: ''
    returnType: int
    signature: int zip_source_close(zip_source_t *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: crc32
      Src: /src/libzip/lib/zip_pkware.c:46,1
    - Dst: crc32
      Src: /src/libzip/lib/zip_pkware.c:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - keys
    - b
    argTypes:
    - zip_pkware_keys_t*
    - zip_uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: update_keys
    functionSourceFile: /src/libzip/lib/zip_pkware.c
    functionUses: 0
    functionsReached:
    - crc32
    linkageType: ''
    returnType: void
    signature: void update_keys(zip_pkware_keys_t *keys, zip_uint8_t b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - keys
    argTypes:
    - zip_pkware_keys_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 58
    functionName: crypt_byte
    functionSourceFile: /src/libzip/lib/zip_pkware.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint8_t
    signature: zip_uint8_t crypt_byte(zip_pkware_keys_t *keys)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - keys
    argTypes:
    - zip_pkware_keys_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: _zip_pkware_keys_reset
    functionSourceFile: /src/libzip/lib/zip_pkware.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void _zip_pkware_keys_reset(zip_pkware_keys_t *keys)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: crypt_byte
      Src: /src/libzip/lib/zip_pkware.c:77,1
    - Dst: update_keys
      Src: /src/libzip/lib/zip_pkware.c:78,1
    - Dst: update_keys
      Src: /src/libzip/lib/zip_pkware.c:84,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - keys
    - out
    - in
    - len
    argTypes:
    - zip_pkware_keys_t*
    - zip_uint8_t*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 87
    functionName: _zip_pkware_encrypt
    functionSourceFile: /src/libzip/lib/zip_pkware.c
    functionUses: 2
    functionsReached:
    - update_keys
    - crypt_byte
    linkageType: ''
    returnType: void
    signature: void _zip_pkware_encrypt(zip_pkware_keys_t *keys, zip_uint8_t *out,
      const zip_uint8_t *in, zip_uint64_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: crypt_byte
      Src: /src/libzip/lib/zip_pkware.c:100,1
    - Dst: update_keys
      Src: /src/libzip/lib/zip_pkware.c:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - keys
    - out
    - in
    - len
    argTypes:
    - zip_pkware_keys_t*
    - zip_uint8_t*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 107
    functionName: _zip_pkware_decrypt
    functionSourceFile: /src/libzip/lib/zip_pkware.c
    functionUses: 0
    functionsReached:
    - update_keys
    - crypt_byte
    linkageType: ''
    returnType: void
    signature: void _zip_pkware_decrypt(zip_pkware_keys_t *keys, zip_uint8_t *out,
      const zip_uint8_t *in, zip_uint64_t len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 73
    functionName: ZIP_DEPRECATED
    functionSourceFile: /src/libzip/lib/zip.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_DEPRECATED(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 75
    functionName: ZIP_DEPRECATED
    functionSourceFile: /src/libzip/lib/zip.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_DEPRECATED(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - cmd
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 276
    functionName: ZIP_SOURCE_MAKE_COMMAND_BITMASK
    functionSourceFile: /src/libzip/lib/zip.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_SOURCE_MAKE_COMMAND_BITMASK(cmd)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - supported
    - ','
    - cmd
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 278
    functionName: ZIP_SOURCE_CHECK_SUPPORTED
    functionSourceFile: /src/libzip/lib/zip.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_SOURCE_CHECK_SUPPORTED(supported, cmd)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - type
    - ','
    - data
    - ','
    - len
    - ','
    - error
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 312
    functionName: ZIP_SOURCE_GET_ARGS
    functionSourceFile: /src/libzip/lib/zip.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_SOURCE_GET_ARGS(type, data, len, error)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _zip_set_open_error
      Src: /src/libzip/lib/zip_fdopen.c:49,1
    - Dst: _zip_set_open_error
      Src: /src/libzip/lib/zip_fdopen.c:54,1
    - Dst: dup
      Src: /src/libzip/lib/zip_fdopen.c:60,1
    - Dst: _zip_set_open_error
      Src: /src/libzip/lib/zip_fdopen.c:61,1
    - Dst: fdopen
      Src: /src/libzip/lib/zip_fdopen.c:65,1
    - Dst: close
      Src: /src/libzip/lib/zip_fdopen.c:66,1
    - Dst: _zip_set_open_error
      Src: /src/libzip/lib/zip_fdopen.c:67,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_fdopen.c:71,1
    - Dst: zip_source_filep_create
      Src: /src/libzip/lib/zip_fdopen.c:72,1
    - Dst: fclose
      Src: /src/libzip/lib/zip_fdopen.c:73,1
    - Dst: _zip_set_open_error
      Src: /src/libzip/lib/zip_fdopen.c:74,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_fdopen.c:75,1
    - Dst: zip_open_from_source
      Src: /src/libzip/lib/zip_fdopen.c:79,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_fdopen.c:80,1
    - Dst: _zip_set_open_error
      Src: /src/libzip/lib/zip_fdopen.c:81,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_fdopen.c:82,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_fdopen.c:86,1
    - Dst: close
      Src: /src/libzip/lib/zip_fdopen.c:87,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 3
    argNames:
    - fd_orig
    - _flags
    - zep
    argTypes:
    - int
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 90
    functionName: zip_fdopen
    functionSourceFile: /src/libzip/lib/zip_fdopen.c
    functionUses: 1
    functionsReached:
    - close
    - zip_error_init
    - dup
    - zip_source_free
    - fdopen
    - _zip_set_open_error
    - zip_source_filep_create
    - zip_open_from_source
    - zip_error_fini
    - fclose
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_fdopen(int fd_orig, int _flags, int *zep)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - za
    - flags
    argTypes:
    - zip_t*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 53
    functionName: zip_int64_t::zip_get_num_entries
    functionSourceFile: /src/libzip/lib/zip_get_num_entries.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_get_num_entries(zip_t *za, zip_flags_t flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_name_locate
      Src: /src/libzip/lib/zip_fopen.c:41,1
    - Dst: zip_fopen_index_encrypted
      Src: /src/libzip/lib/zip_fopen.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - za
    - fname
    - flags
    argTypes:
    - zip_t*
    - char*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 38
    functionDepth: 3
    functionLinenumber: 38
    functionLinenumberEnd: 46
    functionName: zip_fopen
    functionSourceFile: /src/libzip/lib/zip_fopen.c
    functionUses: 3
    functionsReached:
    - zip_name_locate
    - zip_fopen_index_encrypted
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_fopen(zip_t *za, const char *fname, zip_flags_t flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_entry_finalize
      Src: /src/libzip/lib/zip_dirent.c:57,1
    - Dst: free
      Src: /src/libzip/lib/zip_dirent.c:59,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_dirent.c:60,1
    - Dst: free
      Src: /src/libzip/lib/zip_dirent.c:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - cd
    argTypes:
    - zip_cdir_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 62
    functionName: _zip_cdir_free
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 2
    functionsReached:
    - _zip_entry_finalize
    - free
    - _zip_string_free
    linkageType: ''
    returnType: void
    signature: void _zip_cdir_free(zip_cdir_t *cd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_dirent.c:68,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - error
    argTypes:
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 80
    functionName: _zip_cdir_new
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached:
    - malloc
    - zip_error_set
    linkageType: ''
    returnType: zip_cdir_t
    signature: zip_cdir_t *_zip_cdir_new(zip_error_t *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_REALLOC
      Src: /src/libzip/lib/zip_dirent.c:90,1
    - Dst: _zip_entry_init
      Src: /src/libzip/lib/zip_dirent.c:95,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - cd
    - additional_entries
    - error
    argTypes:
    - zip_cdir_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 101
    functionName: _zip_cdir_grow
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached:
    - ZIP_REALLOC
    - _zip_entry_init
    linkageType: ''
    returnType: bool
    signature: bool _zip_cdir_grow(zip_cdir_t *cd, zip_uint64_t additional_entries,
      zip_error_t *error)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_tell_write
      Src: /src/libzip/lib/zip_dirent.c:113,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_dirent.c:114,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_dirent.c:119,1
    - Dst: crc32
      Src: /src/libzip/lib/zip_dirent.c:120,1
    - Dst: _zip_dirent_write
      Src: /src/libzip/lib/zip_dirent.c:127,1
    - Dst: zip_source_tell_write
      Src: /src/libzip/lib/zip_dirent.c:135,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_dirent.c:136,1
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_dirent.c:141,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:142,1
    - Dst: _zip_buffer_put
      Src: /src/libzip/lib/zip_dirent.c:147,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_dirent.c:148,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:149,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:150,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:151,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:152,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_dirent.c:153,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_dirent.c:154,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_dirent.c:155,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_dirent.c:156,1
    - Dst: _zip_buffer_put
      Src: /src/libzip/lib/zip_dirent.c:157,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:158,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_dirent.c:159,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:160,1
    - Dst: _zip_buffer_put
      Src: /src/libzip/lib/zip_dirent.c:163,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:164,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:165,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:166,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:167,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:168,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_dirent.c:172,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:173,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:176,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_dirent.c:180,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:181,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:182,1
    - Dst: _zip_write
      Src: /src/libzip/lib/zip_dirent.c:186,1
    - Dst: _zip_buffer_data
      Src: /src/libzip/lib/zip_dirent.c:186,1
    - Dst: _zip_buffer_offset
      Src: /src/libzip/lib/zip_dirent.c:186,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:187,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:191,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_dirent.c:193,1
    - Dst: snprintf
      Src: /src/libzip/lib/zip_dirent.c:195,1
    - Dst: _zip_write
      Src: /src/libzip/lib/zip_dirent.c:197,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_dirent.c:197,1
    - Dst: _zip_write
      Src: /src/libzip/lib/zip_dirent.c:202,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 76
    argCount: 3
    argNames:
    - za
    - filelist
    - survivors
    argTypes:
    - zip_t*
    - zip_filelist_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 104
    functionDepth: 3
    functionLinenumber: 104
    functionLinenumberEnd: 208
    functionName: _zip_cdir_write
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - _zip_buffer_new
    - _zip_buffer_ok
    - _zip_buffer_free
    - zip_error_set
    - zip_source_tell_write
    - _zip_buffer_offset
    - snprintf
    - crc32
    - strlen
    - _zip_buffer_put_32
    - _zip_write
    - _zip_buffer_put_16
    - _zip_buffer_data
    - _zip_dirent_write
    - _zip_buffer_put
    - ZIP_WANT_TORRENTZIP
    - _zip_buffer_put_64
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_cdir_write(zip_t *za, const zip_filelist_t *filelist,
      zip_uint64_t survivors)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_dirent.c:214,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_dirent.c:219,1
    - Dst: _zip_dirent_init
      Src: /src/libzip/lib/zip_dirent.c:222,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - sde
    argTypes:
    - zip_dirent_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 229
    functionName: _zip_dirent_clone
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 2
    functionsReached:
    - memcpy_s
    - malloc
    - _zip_dirent_init
    linkageType: ''
    returnType: zip_dirent_t
    signature: zip_dirent_t *_zip_dirent_clone(const zip_dirent_t *sde)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_dirent.c:234,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:238,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_dirent.c:242,1
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_dirent.c:247,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_dirent.c:247,1
    - Dst: free
      Src: /src/libzip/lib/zip_dirent.c:249,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - zde
    argTypes:
    - zip_dirent_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 252
    functionName: _zip_dirent_finalize
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached:
    - _zip_ef_free
    - free
    - _zip_string_free
    - strlen
    - _zip_crypto_clear
    linkageType: ''
    returnType: void
    signature: void _zip_dirent_finalize(zip_dirent_t *zde)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_dirent_finalize
      Src: /src/libzip/lib/zip_dirent.c:260,1
    - Dst: free
      Src: /src/libzip/lib/zip_dirent.c:261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - zde
    argTypes:
    - zip_dirent_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 255
    functionDepth: 2
    functionLinenumber: 255
    functionLinenumberEnd: 262
    functionName: _zip_dirent_free
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 2
    functionsReached:
    - free
    - _zip_dirent_finalize
    linkageType: ''
    returnType: void
    signature: void _zip_dirent_free(zip_dirent_t *zde)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:267,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 4
    argNames:
    - de
    - de_orig
    - replacing_data
    - error
    argTypes:
    - zip_dirent_t*
    - zip_dirent_t*
    - bool
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 310
    functionName: _zip_dirent_merge
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 0
    functionsReached:
    - zip_error_set
    linkageType: ''
    returnType: bool
    signature: bool _zip_dirent_merge(zip_dirent_t *de, zip_dirent_t *de_orig, bool
      replacing_data, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 1
    argNames:
    - de
    argTypes:
    - zip_dirent_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 339
    functionName: _zip_dirent_init
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void _zip_dirent_init(zip_dirent_t *de)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 2
    argNames:
    - de
    - flags
    argTypes:
    - zip_dirent_t*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 342
    functionDepth: 0
    functionLinenumber: 342
    functionLinenumberEnd: 348
    functionName: _zip_dirent_needs_zip64
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool _zip_dirent_needs_zip64(const zip_dirent_t *de, zip_flags_t flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_dirent.c:354,1
    - Dst: _zip_dirent_init
      Src: /src/libzip/lib/zip_dirent.c:358,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 351
    functionDepth: 1
    functionLinenumber: 351
    functionLinenumberEnd: 360
    functionName: _zip_dirent_new
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached:
    - malloc
    - _zip_dirent_init
    linkageType: ''
    returnType: zip_dirent_t
    signature: zip_dirent_t *_zip_dirent_new(void)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_left
      Src: /src/libzip/lib/zip_dirent.c:385,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:386,1
    - Dst: _zip_buffer_new_from_source
      Src: /src/libzip/lib/zip_dirent.c:391,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_dirent.c:396,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_dirent.c:396,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:397,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:399,1
    - Dst: _zip_dirent_init
      Src: /src/libzip/lib/zip_dirent.c:406,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:408,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:413,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:414,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:415,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:418,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:419,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_dirent.c:421,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_dirent.c:422,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_dirent.c:423,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:425,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:426,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:436,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:437,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:438,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_dirent.c:439,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_dirent.c:440,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_dirent.c:443,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:444,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:446,1
    - Dst: _zip_buffer_left
      Src: /src/libzip/lib/zip_dirent.c:471,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:472,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:477,1
    - Dst: _zip_buffer_new_from_source
      Src: /src/libzip/lib/zip_dirent.c:479,1
    - Dst: _zip_read_string
      Src: /src/libzip/lib/zip_dirent.c:485,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_dirent.c:487,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:488,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:491,1
    - Dst: _zip_guess_encoding
      Src: /src/libzip/lib/zip_dirent.c:497,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:498,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:500,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:511,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:513,1
    - Dst: _zip_read_data
      Src: /src/libzip/lib/zip_dirent.c:522,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:526,1
    - Dst: _zip_ef_parse
      Src: /src/libzip/lib/zip_dirent.c:530,1
    - Dst: free
      Src: /src/libzip/lib/zip_dirent.c:531,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:533,1
    - Dst: free
      Src: /src/libzip/lib/zip_dirent.c:537,1
    - Dst: _zip_read_string
      Src: /src/libzip/lib/zip_dirent.c:544,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:547,1
    - Dst: _zip_guess_encoding
      Src: /src/libzip/lib/zip_dirent.c:552,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:553,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:555,1
    - Dst: _zip_dirent_process_ef_utf_8
      Src: /src/libzip/lib/zip_dirent.c:562,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:563,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:565,1
    - Dst: _zip_dirent_process_ef_utf_8
      Src: /src/libzip/lib/zip_dirent.c:571,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:572,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:574,1
    - Dst: _zip_ef_get_by_id
      Src: /src/libzip/lib/zip_dirent.c:585,1
    - Dst: zip_dirent_process_ef_zip64
      Src: /src/libzip/lib/zip_dirent.c:587,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:589,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_dirent.c:598,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:599,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:601,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:607,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_dirent.c:613,1
    - Dst: _zip_buffer_new_from_source
      Src: /src/libzip/lib/zip_dirent.c:613,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_dirent.c:616,1
    - Dst: _zip_buffer_peek
      Src: /src/libzip/lib/zip_dirent.c:616,1
    - Dst: _zip_buffer_skip
      Src: /src/libzip/lib/zip_dirent.c:617,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_dirent.c:619,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_dirent.c:620,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_dirent.c:620,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_dirent.c:621,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_dirent.c:621,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_dirent.c:623,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:624,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:625,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:628,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:631,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:641,1
    - Dst: _zip_dirent_process_winzip_aes
      Src: /src/libzip/lib/zip_dirent.c:645,1
    - Dst: _zip_ef_remove_internal
      Src: /src/libzip/lib/zip_dirent.c:649,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 220
    argCount: 7
    argNames:
    - zde
    - src
    - buffer
    - local
    - central_compressed_size
    - check_consistency
    - error
    argTypes:
    - zip_dirent_t*
    - zip_source_t*
    - zip_buffer_t*
    - bool
    - zip_uint64_t
    - bool
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 373
    functionDepth: 3
    functionLinenumber: 373
    functionLinenumberEnd: 652
    functionName: _zip_dirent_read
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 2
    functionsReached:
    - _zip_guess_encoding
    - free
    - _zip_buffer_ok
    - _zip_buffer_left
    - _zip_ef_remove_internal
    - zip_source_seek
    - memcmp
    - _zip_buffer_peek
    - _zip_read_data
    - _zip_dirent_process_winzip_aes
    - _zip_buffer_new_from_source
    - _zip_buffer_get_16
    - _zip_buffer_free
    - _zip_ef_get_by_id
    - _zip_buffer_get_32
    - _zip_buffer_skip
    - _zip_dirent_process_ef_utf_8
    - _zip_dirent_init
    - _zip_buffer_get
    - _zip_ef_parse
    - zip_dirent_process_ef_zip64
    - zip_error_set
    - _zip_buffer_get_64
    - _zip_read_string
    - zip_error_code_zip
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_dirent_read(zip_dirent_t *zde, zip_source_t *src,
      zip_buffer_t *buffer, bool local, zip_uint64_t central_compressed_size, bool
      check_consistency, zip_error_t *error)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_dirent.c:657,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:658,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_dirent.c:663,1
    - Dst: _zip_buffer_skip
      Src: /src/libzip/lib/zip_dirent.c:668,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_dirent.c:671,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_dirent.c:675,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_dirent.c:678,1
    - Dst: _zip_buffer_eof
      Src: /src/libzip/lib/zip_dirent.c:682,1
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_dirent.c:687,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_dirent.c:688,1
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_dirent.c:693,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_dirent.c:694,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_dirent.c:694,1
    - Dst: _zip_buffer_get_64
      Src: /src/libzip/lib/zip_dirent.c:694,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:703,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:704,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:708,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 46
    argCount: 5
    argNames:
    - zde
    - ef
    - got_len
    - local
    - error
    argTypes:
    - zip_dirent_t*
    - zip_uint8_t*
    - zip_uint64_t
    - bool
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 654
    functionDepth: 3
    functionLinenumber: 654
    functionLinenumberEnd: 711
    functionName: zip_dirent_process_ef_zip64
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached:
    - _zip_buffer_new
    - _zip_buffer_free
    - zip_error_set
    - _zip_buffer_get_64
    - _zip_buffer_get_32
    - _zip_buffer_skip
    - _zip_buffer_set_offset
    - _zip_buffer_eof
    linkageType: ''
    returnType: bool
    signature: bool zip_dirent_process_ef_zip64(zip_dirent_t *zde, const zip_uint8_t
      *ef, zip_uint64_t got_len, bool local, zip_error_t *error)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _zip_ef_get_by_id
      Src: /src/libzip/lib/zip_dirent.c:719,1
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_dirent.c:725,1
    - Dst: _zip_buffer_get_8
      Src: /src/libzip/lib/zip_dirent.c:729,1
    - Dst: _zip_buffer_get_32
      Src: /src/libzip/lib/zip_dirent.c:730,1
    - Dst: _zip_string_crc32
      Src: /src/libzip/lib/zip_dirent.c:732,1
    - Dst: _zip_buffer_left
      Src: /src/libzip/lib/zip_dirent.c:733,1
    - Dst: _zip_string_new
      Src: /src/libzip/lib/zip_dirent.c:734,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_dirent.c:734,1
    - Dst: _zip_string_equal
      Src: /src/libzip/lib/zip_dirent.c:738,1
    - Dst: _zip_string_is_ascii
      Src: /src/libzip/lib/zip_dirent.c:738,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_dirent.c:739,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:740,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_dirent.c:745,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:750,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 4
    argNames:
    - de
    - id
    - str
    - check_consistency
    argTypes:
    - zip_dirent_t*
    - zip_uint16_t
    - zip_string_t*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 714
    functionDepth: 3
    functionLinenumber: 714
    functionLinenumberEnd: 753
    functionName: _zip_dirent_process_ef_utf_8
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached:
    - _zip_buffer_new
    - _zip_string_equal
    - _zip_string_free
    - _zip_buffer_left
    - _zip_buffer_free
    - _zip_ef_get_by_id
    - _zip_buffer_get_32
    - _zip_string_new
    - _zip_buffer_get_8
    - _zip_string_is_ascii
    - _zip_string_crc32
    - _zip_buffer_get
    linkageType: ''
    returnType: zip_string_t
    signature: zip_string_t *_zip_dirent_process_ef_utf_8(const zip_dirent_t *de,
      zip_uint16_t id, zip_string_t *str, bool check_consistency)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: _zip_ef_get_by_id
      Src: /src/libzip/lib/zip_dirent.c:768,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:771,1
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_dirent.c:775,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:776,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:783,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:793,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:794,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_dirent.c:799,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_dirent.c:799,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:800,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:801,1
    - Dst: _zip_buffer_get_8
      Src: /src/libzip/lib/zip_dirent.c:806,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:817,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:818,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:823,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:824,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:830,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:832,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 55
    argCount: 2
    argNames:
    - de
    - error
    argTypes:
    - zip_dirent_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 834
      start: 756
    functionDepth: 3
    functionLinenumber: 756
    functionLinenumberEnd: 834
    functionName: _zip_dirent_process_winzip_aes
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached:
    - _zip_buffer_new
    - _zip_buffer_get_16
    - _zip_buffer_free
    - zip_error_set
    - _zip_ef_get_by_id
    - _zip_buffer_get_8
    - memcmp
    - _zip_buffer_get
    linkageType: ''
    returnType: bool
    signature: bool _zip_dirent_process_winzip_aes(zip_dirent_t *de, zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_dirent.c:846,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_dirent.c:847,1
    - Dst: _zip_buffer_new_from_source
      Src: /src/libzip/lib/zip_dirent.c:851,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_dirent.c:856,1
    - Dst: _zip_buffer_eof
      Src: /src/libzip/lib/zip_dirent.c:859,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:860,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:861,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:865,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - src
    - flags
    - error
    argTypes:
    - zip_source_t*
    - zip_uint16_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 837
    functionDepth: 3
    functionLinenumber: 837
    functionLinenumberEnd: 867
    functionName: _zip_dirent_size
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached:
    - _zip_buffer_new_from_source
    - zip_error_set_from_source
    - _zip_buffer_get_16
    - _zip_buffer_free
    - zip_error_set
    - zip_source_seek
    - _zip_buffer_eof
    linkageType: ''
    returnType: zip_int32_t
    signature: zip_int32_t _zip_dirent_size(zip_source_t *src, zip_uint16_t flags,
      zip_error_t *error)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: _zip_guess_encoding
      Src: /src/libzip/lib/zip_dirent.c:894,1
    - Dst: _zip_guess_encoding
      Src: /src/libzip/lib/zip_dirent.c:895,1
    - Dst: _zip_ef_utf8
      Src: /src/libzip/lib/zip_dirent.c:903,1
    - Dst: _zip_ef_utf8
      Src: /src/libzip/lib/zip_dirent.c:909,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:911,1
    - Dst: _zip_dirent_needs_zip64
      Src: /src/libzip/lib/zip_dirent.c:926,1
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_dirent.c:932,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:934,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:935,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_dirent.c:941,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_dirent.c:942,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_dirent.c:948,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_dirent.c:951,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_dirent.c:954,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_dirent.c:959,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:960,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:961,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:962,1
    - Dst: _zip_ef_new
      Src: /src/libzip/lib/zip_dirent.c:966,1
    - Dst: _zip_buffer_offset
      Src: /src/libzip/lib/zip_dirent.c:966,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:967,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:969,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:970,1
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_dirent.c:979,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:983,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:984,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:988,1
    - Dst: _zip_buffer_put
      Src: /src/libzip/lib/zip_dirent.c:989,1
    - Dst: _zip_buffer_put_8
      Src: /src/libzip/lib/zip_dirent.c:990,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:991,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_dirent.c:993,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:994,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:995,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:996,1
    - Dst: _zip_ef_new
      Src: /src/libzip/lib/zip_dirent.c:1000,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:1001,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:1003,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:1004,1
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_dirent.c:1011,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:1012,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:1013,1
    - Dst: _zip_buffer_put
      Src: /src/libzip/lib/zip_dirent.c:1017,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1020,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1022,1
    - Dst: ZIP_MAX
      Src: /src/libzip/lib/zip_dirent.c:1022,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1023,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1025,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1028,1
    - Dst: ZIP_CM_ACTUAL
      Src: /src/libzip/lib/zip_dirent.c:1028,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_dirent.c:1031,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1038,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1039,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1042,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1045,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1054,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1055,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1059,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1062,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1065,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1068,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1072,1
    - Dst: _zip_string_length
      Src: /src/libzip/lib/zip_dirent.c:1072,1
    - Dst: _zip_ef_size
      Src: /src/libzip/lib/zip_dirent.c:1073,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_dirent.c:1074,1
    - Dst: _zip_ef_size
      Src: /src/libzip/lib/zip_dirent.c:1076,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:1079,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:1080,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:1081,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1084,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1087,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_dirent.c:1087,1
    - Dst: _zip_string_length
      Src: /src/libzip/lib/zip_dirent.c:1087,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1088,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_dirent.c:1089,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1090,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1092,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1095,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_dirent.c:1099,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:1100,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:1101,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:1102,1
    - Dst: _zip_write
      Src: /src/libzip/lib/zip_dirent.c:1106,1
    - Dst: _zip_buffer_offset
      Src: /src/libzip/lib/zip_dirent.c:1106,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:1107,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:1108,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:1112,1
    - Dst: _zip_string_write
      Src: /src/libzip/lib/zip_dirent.c:1115,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:1116,1
    - Dst: _zip_ef_write
      Src: /src/libzip/lib/zip_dirent.c:1122,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:1123,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_dirent.c:1127,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_dirent.c:1128,1
    - Dst: _zip_ef_write
      Src: /src/libzip/lib/zip_dirent.c:1129,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_dirent.c:1134,1
    - Dst: _zip_string_write
      Src: /src/libzip/lib/zip_dirent.c:1136,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 202
    argCount: 3
    argNames:
    - za
    - de
    - flags
    argTypes:
    - zip_t*
    - zip_dirent_t*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1144
      start: 880
    functionDepth: 3
    functionLinenumber: 880
    functionLinenumberEnd: 1144
    functionName: _zip_dirent_write
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached:
    - _zip_guess_encoding
    - _zip_ef_free
    - ZIP_CM_ACTUAL
    - _zip_buffer_ok
    - _zip_ef_utf8
    - _zip_string_write
    - _zip_string_length
    - _zip_buffer_put_32
    - _zip_buffer_put_16
    - _zip_ef_new
    - _zip_write
    - _zip_buffer_put_64
    - _zip_dirent_needs_zip64
    - ZIP_MAX
    - _zip_buffer_free
    - _zip_buffer_offset
    - _zip_buffer_put
    - ZIP_WANT_TORRENTZIP
    - _zip_ef_size
    - _zip_buffer_new
    - _zip_ef_write
    - zip_error_set
    - _zip_buffer_put_8
    linkageType: ''
    returnType: int
    signature: int _zip_dirent_write(zip_t *za, zip_dirent_t *de, zip_flags_t flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libzip/lib/zip_dirent.c:1150,1
    - Dst: mktime
      Src: /src/libzip/lib/zip_dirent.c:1163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - dtime
    argTypes:
    - zip_dostime_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1164
      start: 1147
    functionDepth: 0
    functionLinenumber: 1147
    functionLinenumberEnd: 1164
    functionName: _zip_d2u_time
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 0
    functionsReached:
    - mktime
    - memset
    linkageType: ''
    returnType: time_t
    signature: time_t _zip_d2u_time(const zip_dostime_t *dtime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _zip_string_get
      Src: /src/libzip/lib/zip_dirent.c:1173,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:1179,1
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_dirent.c:1183,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:1184,1
    - Dst: _zip_buffer_put_8
      Src: /src/libzip/lib/zip_dirent.c:1188,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_dirent.c:1189,1
    - Dst: _zip_string_crc32
      Src: /src/libzip/lib/zip_dirent.c:1189,1
    - Dst: _zip_buffer_put
      Src: /src/libzip/lib/zip_dirent.c:1190,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_dirent.c:1192,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:1193,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:1194,1
    - Dst: _zip_ef_new
      Src: /src/libzip/lib/zip_dirent.c:1198,1
    - Dst: _zip_buffer_offset
      Src: /src/libzip/lib/zip_dirent.c:1198,1
    - Dst: _zip_buffer_data
      Src: /src/libzip/lib/zip_dirent.c:1198,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_dirent.c:1199,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 3
    argNames:
    - id
    - str
    - error
    argTypes:
    - zip_uint16_t
    - zip_string_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1167
    functionDepth: 3
    functionLinenumber: 1167
    functionLinenumberEnd: 1202
    functionName: _zip_ef_utf8
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached:
    - _zip_buffer_new
    - _zip_buffer_ok
    - _zip_buffer_free
    - zip_error_set
    - _zip_buffer_offset
    - _zip_ef_new
    - _zip_buffer_put
    - _zip_buffer_put_32
    - _zip_buffer_put_8
    - _zip_string_crc32
    - _zip_buffer_data
    - _zip_string_get
    linkageType: ''
    returnType: zip_extra_field_t
    signature: zip_extra_field_t *_zip_ef_utf8(zip_uint16_t id, zip_string_t *str,
      zip_error_t *error)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:1211,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:1217,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:1221,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 4
    argNames:
    - za
    - idx
    - flags
    - error
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_flags_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1229
      start: 1205
    functionDepth: 1
    functionLinenumber: 1205
    functionLinenumberEnd: 1229
    functionName: _zip_get_dirent
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 2
    functionsReached:
    - zip_error_set
    linkageType: ''
    returnType: zip_dirent_t
    signature: zip_dirent_t *_zip_get_dirent(zip_t *za, zip_uint64_t idx, zip_flags_t
      flags, zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_localtime
      Src: /src/libzip/lib/zip_dirent.c:1235,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_dirent.c:1241,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - intime
    - dtime
    - ze
    argTypes:
    - time_t
    - zip_dostime_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1253
      start: 1232
    functionDepth: 1
    functionLinenumber: 1232
    functionLinenumberEnd: 1253
    functionName: _zip_u2d_time
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached:
    - zip_error_set
    - zip_localtime
    linkageType: ''
    returnType: int
    signature: int _zip_u2d_time(time_t intime, zip_dostime_t *dtime, zip_error_t
      *ze)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: _zip_dirent_needs_zip64
      Src: /src/libzip/lib/zip_dirent.c:1293,1
    - Dst: _zip_string_length
      Src: /src/libzip/lib/zip_dirent.c:1299,1
    - Dst: ZIP_MAX
      Src: /src/libzip/lib/zip_dirent.c:1307,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 55
    argCount: 3
    argNames:
    - de
    - attributes
    - force_zip64
    argTypes:
    - zip_dirent_t*
    - zip_file_attributes_t*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1325
      start: 1256
    functionDepth: 1
    functionLinenumber: 1256
    functionLinenumberEnd: 1325
    functionName: _zip_dirent_apply_attributes
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 0
    functionsReached:
    - _zip_string_length
    - ZIP_MAX
    - _zip_dirent_needs_zip64
    linkageType: ''
    returnType: bool
    signature: bool _zip_dirent_apply_attributes(zip_dirent_t *de, zip_file_attributes_t
      *attributes, bool force_zip64)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - de
    argTypes:
    - zip_dirent_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1343
      start: 1332
    functionDepth: 0
    functionLinenumber: 1332
    functionLinenumberEnd: 1343
    functionName: zip_dirent_torrentzip_normalize
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void zip_dirent_torrentzip_normalize(zip_dirent_t *de)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 1
    argNames:
    - dirent
    argTypes:
    - zip_dirent_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1372
      start: 1345
    functionDepth: 0
    functionLinenumber: 1345
    functionLinenumberEnd: 1372
    functionName: zip_dirent_check_consistency
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int zip_dirent_check_consistency(zip_dirent_t *dirent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_d2u_time
      Src: /src/libzip/lib/zip_dirent.c:1376,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - de
    argTypes:
    - zip_dirent_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1374
    functionDepth: 1
    functionLinenumber: 1374
    functionLinenumberEnd: 1381
    functionName: zip_dirent_get_last_mod_mtime
    functionSourceFile: /src/libzip/lib/zip_dirent.c
    functionUses: 0
    functionsReached:
    - _zip_d2u_time
    linkageType: ''
    returnType: time_t
    signature: time_t zip_dirent_get_last_mod_mtime(zip_dirent_t *de)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_fseek.c:46,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_fseek.c:47,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - zf
    - offset
    - whence
    argTypes:
    - zip_file_t*
    - zip_int64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 52
    functionName: zip_fseek
    functionSourceFile: /src/libzip/lib/zip_fseek.c
    functionUses: 2
    functionsReached:
    - zip_error_set_from_source
    - zip_source_seek
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_fseek(zip_file_t *zf, zip_int64_t offset, int whence)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_is_seekable
      Src: /src/libzip/lib/zip_fseek.c:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - zfile
    argTypes:
    - zip_file_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 61
    functionName: zip_file_is_seekable
    functionSourceFile: /src/libzip/lib/zip_fseek.c
    functionUses: 1
    functionsReached:
    - zip_source_is_seekable
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_is_seekable(zip_file_t *zfile)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_OPEN_READING
      Src: /src/libzip/lib/zip_source_seek.c:44,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_seek.c:45,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_seek.c:52,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - src
    - offset
    - whence
    argTypes:
    - zip_source_t*
    - zip_int64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 58
    functionName: zip_source_seek
    functionSourceFile: /src/libzip/lib/zip_source_seek.c
    functionUses: 12
    functionsReached:
    - ZIP_SOURCE_IS_OPEN_READING
    - zip_error_set
    - _zip_source_call
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_seek(zip_source_t *src, zip_int64_t offset, int
      whence)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_GET_ARGS
      Src: /src/libzip/lib/zip_source_seek.c:63,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_seek.c:83,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_seek.c:88,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 5
    argNames:
    - offset
    - length
    - data
    - data_length
    - error
    argTypes:
    - zip_uint64_t
    - zip_uint64_t
    - void*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 93
    functionName: zip_source_seek_compute_offset
    functionSourceFile: /src/libzip/lib/zip_source_seek.c
    functionUses: 3
    functionsReached:
    - ZIP_SOURCE_GET_ARGS
    - zip_error_set
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t zip_source_seek_compute_offset(zip_uint64_t offset, zip_uint64_t
      length, void *data, zip_uint64_t data_length, zip_error_t *error)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - em
    - operation
    argTypes:
    - zip_uint16_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 53
    functionName: _zip_get_encryption_implementation
    functionSourceFile: /src/libzip/lib/zip_get_encryption_implementation.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_encryption_implementation
    signature: zip_encryption_implementation _zip_get_encryption_implementation(zip_uint16_t
      em, int operation)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_get_encryption_implementation
      Src: /src/libzip/lib/zip_get_encryption_implementation.c:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - method
    - encode
    argTypes:
    - zip_uint16_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionName: zip_encryption_method_supported
    functionSourceFile: /src/libzip/lib/zip_get_encryption_implementation.c
    functionUses: 1
    functionsReached:
    - _zip_get_encryption_implementation
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_encryption_method_supported(zip_uint16_t method, int
      encode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_zip_file_create
      Src: /src/libzip/lib/zip_source_zip_new.c:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: zip_source_t *zip_source_zip_file(zip_t *za, zip_t *srcza, zip_uint64_t
      srcidx, zip_flags_t flags, zip_uint64_t start, zip_int64_t len, const char *password)
    functionSourceFile: /src/libzip/lib/zip_source_zip_new.c
    functionUses: 0
    functionsReached:
    - zip_source_zip_file_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_zip_file(zip_t *za, zip_t *srcza,
      zip_uint64_t srcidx, zip_flags_t flags, zip_uint64_t start, zip_int64_t len,
      const char *password)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_zip_new.c:59,1
    - Dst: ZIP_ENTRY_DATA_CHANGED
      Src: /src/libzip/lib/zip_source_zip_new.c:70,1
    - Dst: zip_source_supports_reopen
      Src: /src/libzip/lib/zip_source_zip_new.c:71,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_zip_new.c:72,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_zip_new.c:79,1
    - Dst: zip_stat_index
      Src: /src/libzip/lib/zip_source_zip_new.c:89,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_zip_new.c:90,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_zip_new.c:95,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_zip_new.c:102,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_zip_new.c:109,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_zip_new.c:140,1
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_source_zip_new.c:145,1
    - Dst: _zip_file_attributes_from_dirent
      Src: /src/libzip/lib/zip_source_zip_new.c:148,1
    - Dst: zip_source_buffer_with_attributes_create
      Src: /src/libzip/lib/zip_source_zip_new.c:158,1
    - Dst: _zip_source_window_new
      Src: /src/libzip/lib/zip_source_zip_new.c:203,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_source_zip_new.c:206,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_zip_new.c:219,1
    - Dst: _zip_source_window_new
      Src: /src/libzip/lib/zip_source_zip_new.c:227,1
    - Dst: _zip_source_window_new
      Src: /src/libzip/lib/zip_source_zip_new.c:243,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_source_zip_new.c:246,1
    - Dst: _zip_source_set_source_archive
      Src: /src/libzip/lib/zip_source_zip_new.c:255,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_source_zip_new.c:256,1
    - Dst: _zip_get_encryption_implementation
      Src: /src/libzip/lib/zip_source_zip_new.c:265,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_source_zip_new.c:266,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_zip_new.c:267,1
    - Dst: enc_impl
      Src: /src/libzip/lib/zip_source_zip_new.c:271,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_source_zip_new.c:273,1
    - Dst: zip_source_decompress
      Src: /src/libzip/lib/zip_source_zip_new.c:280,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_source_zip_new.c:282,1
    - Dst: zip_source_crc_create
      Src: /src/libzip/lib/zip_source_zip_new.c:288,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_source_zip_new.c:290,1
    - Dst: zip_stat_init
      Src: /src/libzip/lib/zip_source_zip_new.c:298,1
    - Dst: _zip_source_window_new
      Src: /src/libzip/lib/zip_source_zip_new.c:303,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_source_zip_new.c:305,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 188
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 312
    functionName: zip_source_t *zip_source_zip_file_create(zip_t *srcza, zip_uint64_t
      srcidx, zip_flags_t flags, zip_uint64_t start, zip_int64_t len, const char *password,
      zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_zip_new.c
    functionUses: 0
    functionsReached:
    - enc_impl
    - zip_error_set
    - _zip_file_attributes_from_dirent
    - zip_source_buffer_with_attributes_create
    - zip_source_free
    - zip_source_supports_reopen
    - _zip_source_window_new
    - zip_source_crc_create
    - _zip_get_dirent
    - zip_stat_init
    - zip_stat_index
    - _zip_get_encryption_implementation
    - _zip_source_set_source_archive
    - zip_source_decompress
    - ZIP_ENTRY_DATA_CHANGED
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_zip_file_create(zip_t *srcza, zip_uint64_t
      srcidx, zip_flags_t flags, zip_uint64_t start, zip_int64_t len, const char *password,
      zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_file_attributes_init
      Src: /src/libzip/lib/zip_source_zip_new.c:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - attributes
    - de
    argTypes:
    - zip_file_attributes_t*
    - zip_dirent_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 322
    functionName: _zip_file_attributes_from_dirent
    functionSourceFile: /src/libzip/lib/zip_source_zip_new.c
    functionUses: 1
    functionsReached:
    - zip_file_attributes_init
    linkageType: ''
    returnType: void
    signature: void _zip_file_attributes_from_dirent(zip_file_attributes_t *attributes,
      zip_dirent_t *de)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_begin_write_cloning.c:39,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_begin_write_cloning.c:40,1
    - Dst: ZIP_SOURCE_IS_OPEN_WRITING
      Src: /src/libzip/lib/zip_source_begin_write_cloning.c:44,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_begin_write_cloning.c:45,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_begin_write_cloning.c:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - src
    - offset
    argTypes:
    - zip_source_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 56
    functionName: zip_source_begin_write_cloning
    functionSourceFile: /src/libzip/lib/zip_source_begin_write_cloning.c
    functionUses: 0
    functionsReached:
    - _zip_source_call
    - ZIP_SOURCE_IS_OPEN_WRITING
    - ZIP_SOURCE_IS_LAYERED
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_begin_write_cloning(zip_source_t *src, zip_uint64_t
      offset)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_name_locate
      Src: /src/libzip/lib/zip_name_locate.c:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - za
    - fname
    - flags
    argTypes:
    - zip_t*
    - char*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: zip_int64_t::zip_name_locate
    functionSourceFile: /src/libzip/lib/zip_name_locate.c
    functionUses: 0
    functionsReached:
    - _zip_name_locate
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_name_locate(zip_t *za, const char *fname,
      zip_flags_t flags)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_name_locate.c:60,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_name_locate.c:64,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_name_locate.c:67,1
    - Dst: _zip_string_new
      Src: /src/libzip/lib/zip_name_locate.c:72,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_name_locate.c:72,1
    - Dst: _zip_string_get
      Src: /src/libzip/lib/zip_name_locate.c:75,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_name_locate.c:76,1
    - Dst: _zip_get_name
      Src: /src/libzip/lib/zip_name_locate.c:86,1
    - Dst: strrchr
      Src: /src/libzip/lib/zip_name_locate.c:94,1
    - Dst: cmp
      Src: /src/libzip/lib/zip_name_locate.c:100,1
    - Dst: _zip_error_clear
      Src: /src/libzip/lib/zip_name_locate.c:101,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_name_locate.c:102,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_name_locate.c:107,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_name_locate.c:108,1
    - Dst: _zip_hash_lookup
      Src: /src/libzip/lib/zip_name_locate.c:112,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_name_locate.c:113,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 48
    argCount: 4
    argNames:
    - za
    - fname
    - flags
    - error
    argTypes:
    - zip_t*
    - char*
    - zip_flags_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 116
    functionName: _zip_name_locate
    functionSourceFile: /src/libzip/lib/zip_name_locate.c
    functionUses: 2
    functionsReached:
    - _zip_string_free
    - zip_error_set
    - _zip_get_name
    - _zip_string_new
    - strlen
    - cmp
    - strrchr
    - _zip_error_clear
    - _zip_hash_lookup
    - _zip_string_get
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_name_locate(zip_t *za, const char *fname, zip_flags_t
      flags, zip_error_t *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_file_get_comment
      Src: /src/libzip/lib/zip_get_file_comment.c:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - za
    - idx
    - lenp
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 51
    functionName: zip_get_file_comment
    functionSourceFile: /src/libzip/lib/zip_get_file_comment.c
    functionUses: 0
    functionsReached:
    - zip_file_get_comment
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_get_file_comment(zip_t *za, zip_uint64_t idx, int *lenp,
      int flags)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_file_set_comment.c:45,1
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_file_set_comment.c:49,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_comment.c:50,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_file_set_comment.c:53,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_comment.c:54,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_comment.c:59,1
    - Dst: _zip_string_new
      Src: /src/libzip/lib/zip_file_set_comment.c:64,1
    - Dst: _zip_guess_encoding
      Src: /src/libzip/lib/zip_file_set_comment.c:67,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_file_set_comment.c:78,1
    - Dst: _zip_string_equal
      Src: /src/libzip/lib/zip_file_set_comment.c:89,1
    - Dst: _zip_dirent_clone
      Src: /src/libzip/lib/zip_file_set_comment.c:97,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_comment.c:98,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_file_set_comment.c:99,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_file_set_comment.c:107,1
    - Dst: _zip_dirent_free
      Src: /src/libzip/lib/zip_file_set_comment.c:109,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 59
    argCount: 5
    argNames:
    - za
    - idx
    - comment
    - len
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - char*
    - zip_uint16_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 40
    functionDepth: 3
    functionLinenumber: 40
    functionLinenumberEnd: 115
    functionName: zip_file_set_comment
    functionSourceFile: /src/libzip/lib/zip_file_set_comment.c
    functionUses: 2
    functionsReached:
    - _zip_guess_encoding
    - _zip_string_free
    - _zip_string_equal
    - zip_error_set
    - _zip_dirent_clone
    - _zip_dirent_free
    - _zip_string_new
    - _zip_get_dirent
    - ZIP_WANT_TORRENTZIP
    - ZIP_IS_RDONLY
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_set_comment(zip_t *za, zip_uint64_t idx, const
      char *comment, zip_uint16_t len, zip_flags_t flags)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_gnutls.c:43,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_gnutls.c:44,1
    - Dst: nettle_aes128_set_encrypt_key
      Src: /src/libzip/lib/zip_crypto_gnutls.c:52,1
    - Dst: nettle_aes192_set_encrypt_key
      Src: /src/libzip/lib/zip_crypto_gnutls.c:55,1
    - Dst: nettle_aes256_set_encrypt_key
      Src: /src/libzip/lib/zip_crypto_gnutls.c:58,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_gnutls.c:61,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_gnutls.c:62,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - key
    - key_size
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 67
    functionName: _zip_crypto_aes_new
    functionSourceFile: /src/libzip/lib/zip_crypto_gnutls.c
    functionUses: 1
    functionsReached:
    - nettle_aes128_set_encrypt_key
    - nettle_aes192_set_encrypt_key
    - free
    - zip_error_set
    - malloc
    - nettle_aes256_set_encrypt_key
    linkageType: ''
    returnType: _zip_crypto_aes_t
    signature: _zip_crypto_aes_t *_zip_crypto_aes_new(const zip_uint8_t *key, zip_uint16_t
      key_size, zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: nettle_aes128_encrypt
      Src: /src/libzip/lib/zip_crypto_gnutls.c:72,1
    - Dst: nettle_aes192_encrypt
      Src: /src/libzip/lib/zip_crypto_gnutls.c:75,1
    - Dst: nettle_aes256_encrypt
      Src: /src/libzip/lib/zip_crypto_gnutls.c:78,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - aes
    - in
    - out
    argTypes:
    - _zip_crypto_aes_t*
    - zip_uint8_t*
    - zip_uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 83
    functionName: _zip_crypto_aes_encrypt_block
    functionSourceFile: /src/libzip/lib/zip_crypto_gnutls.c
    functionUses: 1
    functionsReached:
    - nettle_aes192_encrypt
    - nettle_aes128_encrypt
    - nettle_aes256_encrypt
    linkageType: ''
    returnType: bool
    signature: bool _zip_crypto_aes_encrypt_block(_zip_crypto_aes_t *aes, const zip_uint8_t
      *in, zip_uint8_t *out)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_crypto_gnutls.c:90,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_gnutls.c:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - aes
    argTypes:
    - _zip_crypto_aes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 92
    functionName: _zip_crypto_aes_free
    functionSourceFile: /src/libzip/lib/zip_crypto_gnutls.c
    functionUses: 3
    functionsReached:
    - free
    - _zip_crypto_clear
    linkageType: ''
    returnType: void
    signature: void _zip_crypto_aes_free(_zip_crypto_aes_t *aes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_gnutls.c:98,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_gnutls.c:99,1
    - Dst: gnutls_hmac_init
      Src: /src/libzip/lib/zip_crypto_gnutls.c:103,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_gnutls.c:104,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_gnutls.c:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - secret
    - secret_length
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 110
    functionName: _zip_crypto_hmac_new
    functionSourceFile: /src/libzip/lib/zip_crypto_gnutls.c
    functionUses: 1
    functionsReached:
    - gnutls_hmac_init
    - free
    - malloc
    - zip_error_set
    linkageType: ''
    returnType: _zip_crypto_hmac_t
    signature: _zip_crypto_hmac_t *_zip_crypto_hmac_new(const zip_uint8_t *secret,
      zip_uint64_t secret_length, zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gnutls_hmac_deinit
      Src: /src/libzip/lib/zip_crypto_gnutls.c:120,1
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_crypto_gnutls.c:121,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_gnutls.c:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - hmac
    argTypes:
    - _zip_crypto_hmac_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 123
    functionName: _zip_crypto_hmac_free
    functionSourceFile: /src/libzip/lib/zip_crypto_gnutls.c
    functionUses: 2
    functionsReached:
    - free
    - gnutls_hmac_deinit
    - _zip_crypto_clear
    linkageType: ''
    returnType: void
    signature: void _zip_crypto_hmac_free(_zip_crypto_hmac_t *hmac)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gnutls_rnd
      Src: /src/libzip/lib/zip_crypto_gnutls.c:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buffer
    - length
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: zip_secure_random
    functionSourceFile: /src/libzip/lib/zip_crypto_gnutls.c
    functionUses: 4
    functionsReached:
    - gnutls_rnd
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_secure_random(zip_uint8_t *buffer, zip_uint16_t length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_name_locate
      Src: /src/libzip/lib/zip_stat.c:41,1
    - Dst: zip_stat_index
      Src: /src/libzip/lib/zip_stat.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - za
    - fname
    - flags
    - st
    argTypes:
    - zip_t*
    - char*
    - zip_flags_t
    - zip_stat_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 46
    functionName: zip_stat
    functionSourceFile: /src/libzip/lib/zip_stat.c
    functionUses: 0
    functionsReached:
    - zip_name_locate
    - zip_stat_index
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_stat(zip_t *za, const char *fname, zip_flags_t flags,
      zip_stat_t *st)
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: _zip_changed
      Src: /src/libzip/lib/zip_close.c:63,1
    - Dst: zip_source_remove
      Src: /src/libzip/lib/zip_close.c:68,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_close.c:69,1
    - Dst: zip_source_error
      Src: /src/libzip/lib/zip_close.c:69,1
    - Dst: zip_error_code_system
      Src: /src/libzip/lib/zip_close.c:69,1
    - Dst: zip_source_error
      Src: /src/libzip/lib/zip_close.c:69,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:70,1
    - Dst: zip_discard
      Src: /src/libzip/lib/zip_close.c:75,1
    - Dst: zip_discard
      Src: /src/libzip/lib/zip_close.c:81,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:86,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_close.c:90,1
    - Dst: ZIP_ENTRY_HAS_CHANGES
      Src: /src/libzip/lib/zip_close.c:97,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_close.c:98,1
    - Dst: free
      Src: /src/libzip/lib/zip_close.c:105,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:106,1
    - Dst: zip_get_name
      Src: /src/libzip/lib/zip_close.c:111,1
    - Dst: free
      Src: /src/libzip/lib/zip_close.c:115,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:116,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_close.c:120,1
    - Dst: qsort
      Src: /src/libzip/lib/zip_close.c:121,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_close.c:124,1
    - Dst: zip_source_supports
      Src: /src/libzip/lib/zip_close.c:124,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_close.c:124,1
    - Dst: _zip_file_get_end
      Src: /src/libzip/lib/zip_close.c:142,1
    - Dst: free
      Src: /src/libzip/lib/zip_close.c:143,1
    - Dst: zip_source_begin_write_cloning
      Src: /src/libzip/lib/zip_close.c:149,1
    - Dst: zip_source_begin_write
      Src: /src/libzip/lib/zip_close.c:156,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:157,1
    - Dst: free
      Src: /src/libzip/lib/zip_close.c:158,1
    - Dst: _zip_progress_start
      Src: /src/libzip/lib/zip_close.c:163,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:164,1
    - Dst: zip_source_rollback_write
      Src: /src/libzip/lib/zip_close.c:165,1
    - Dst: free
      Src: /src/libzip/lib/zip_close.c:166,1
    - Dst: _zip_progress_subrange
      Src: /src/libzip/lib/zip_close.c:175,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:176,1
    - Dst: ZIP_ENTRY_DATA_CHANGED
      Src: /src/libzip/lib/zip_close.c:189,1
    - Dst: ZIP_ENTRY_CHANGED
      Src: /src/libzip/lib/zip_close.c:189,1
    - Dst: ZIP_ENTRY_CHANGED
      Src: /src/libzip/lib/zip_close.c:189,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_close.c:189,1
    - Dst: ZIP_IS_TORRENTZIP
      Src: /src/libzip/lib/zip_close.c:189,1
    - Dst: _zip_dirent_clone
      Src: /src/libzip/lib/zip_close.c:193,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:194,1
    - Dst: _zip_dirent_merge
      Src: /src/libzip/lib/zip_close.c:200,1
    - Dst: ZIP_ENTRY_DATA_CHANGED
      Src: /src/libzip/lib/zip_close.c:200,1
    - Dst: _zip_read_local_ef
      Src: /src/libzip/lib/zip_close.c:207,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_close.c:212,1
    - Dst: zip_dirent_torrentzip_normalize
      Src: /src/libzip/lib/zip_close.c:213,1
    - Dst: zip_source_tell_write
      Src: /src/libzip/lib/zip_close.c:216,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:217,1
    - Dst: ZIP_ENTRY_DATA_CHANGED
      Src: /src/libzip/lib/zip_close.c:227,1
    - Dst: zip_source_zip_file_create
      Src: /src/libzip/lib/zip_close.c:228,1
    - Dst: add_data
      Src: /src/libzip/lib/zip_close.c:235,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:238,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:243,1
    - Dst: _zip_dirent_write
      Src: /src/libzip/lib/zip_close.c:254,1
    - Dst: _zip_file_get_offset
      Src: /src/libzip/lib/zip_close.c:258,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_close.c:262,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:263,1
    - Dst: copy_data
      Src: /src/libzip/lib/zip_close.c:267,1
    - Dst: write_data_descriptor
      Src: /src/libzip/lib/zip_close.c:273,1
    - Dst: _zip_dirent_needs_zip64
      Src: /src/libzip/lib/zip_close.c:273,1
    - Dst: write_cdir
      Src: /src/libzip/lib/zip_close.c:282,1
    - Dst: free
      Src: /src/libzip/lib/zip_close.c:287,1
    - Dst: zip_source_commit_write
      Src: /src/libzip/lib/zip_close.c:290,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:291,1
    - Dst: _zip_progress_end
      Src: /src/libzip/lib/zip_close.c:294,1
    - Dst: zip_source_rollback_write
      Src: /src/libzip/lib/zip_close.c:298,1
    - Dst: zip_discard
      Src: /src/libzip/lib/zip_close.c:302,1
    CyclomaticComplexity: 79
    EdgeCount: 79
    ICount: 198
    argCount: 1
    argNames:
    - za
    argTypes:
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 52
    functionDepth: 4
    functionLinenumber: 52
    functionLinenumberEnd: 305
    functionName: zip_close
    functionSourceFile: /src/libzip/lib/zip_close.c
    functionUses: 16
    functionsReached:
    - _zip_progress_subrange
    - free
    - ZIP_ENTRY_CHANGED
    - add_data
    - zip_source_free
    - _zip_dirent_merge
    - ZIP_SOURCE_MAKE_COMMAND_BITMASK
    - zip_dirent_torrentzip_normalize
    - _zip_read_local_ef
    - zip_source_zip_file_create
    - zip_source_seek
    - zip_source_commit_write
    - zip_error_code_system
    - ZIP_IS_TORRENTZIP
    - zip_source_begin_write
    - zip_source_supports
    - write_cdir
    - write_data_descriptor
    - _zip_progress_end
    - _zip_file_get_offset
    - copy_data
    - ZIP_ENTRY_DATA_CHANGED
    - _zip_dirent_needs_zip64
    - zip_source_error
    - zip_error_set_from_source
    - zip_source_rollback_write
    - ZIP_ENTRY_HAS_CHANGES
    - zip_source_remove
    - _zip_progress_start
    - ZIP_WANT_TORRENTZIP
    - qsort
    - ZIP_MIN
    - _zip_dirent_clone
    - zip_error_set
    - zip_get_name
    - zip_source_begin_write_cloning
    - zip_source_tell_write
    - _zip_changed
    - malloc
    - zip_discard
    - zip_error_code_zip
    - _zip_file_get_end
    - _zip_dirent_write
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_close(zip_t *za)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_close.c:321,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:322,1
    - Dst: ZIP_CM_ACTUAL
      Src: /src/libzip/lib/zip_close.c:366,1
    - Dst: _zip_get_compression_algorithm
      Src: /src/libzip/lib/zip_close.c:375,1
    - Dst: zip_compression_algorithm_t*::maximum_compressed_size
      Src: /src/libzip/lib/zip_close.c:380,1
    - Dst: zip_source_get_dos_time
      Src: /src/libzip/lib/zip_close.c:396,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:398,1
    - Dst: time
      Src: /src/libzip/lib/zip_close.c:409,1
    - Dst: _zip_u2d_time
      Src: /src/libzip/lib/zip_close.c:411,1
    - Dst: zip_source_tell_write
      Src: /src/libzip/lib/zip_close.c:417,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:418,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_close.c:422,1
    - Dst: ZIP_CM_ACTUAL
      Src: /src/libzip/lib/zip_close.c:422,1
    - Dst: zip_source_keep
      Src: /src/libzip/lib/zip_close.c:433,1
    - Dst: _zip_get_encryption_implementation
      Src: /src/libzip/lib/zip_close.c:443,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:444,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:445,1
    - Dst: impl
      Src: /src/libzip/lib/zip_close.c:448,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:450,1
    - Dst: zip_source_decompress
      Src: /src/libzip/lib/zip_close.c:458,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:459,1
    - Dst: zip_source_crc_create
      Src: /src/libzip/lib/zip_close.c:467,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:468,1
    - Dst: zip_source_compress
      Src: /src/libzip/lib/zip_close.c:476,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:477,1
    - Dst: _zip_get_encryption_implementation
      Src: /src/libzip/lib/zip_close.c:496,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:497,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:498,1
    - Dst: _zip_source_window_new
      Src: /src/libzip/lib/zip_close.c:507,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:508,1
    - Dst: impl
      Src: /src/libzip/lib/zip_close.c:515,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:517,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_close.c:524,1
    - Dst: zip_source_get_file_attributes
      Src: /src/libzip/lib/zip_close.c:525,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:526,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:527,1
    - Dst: _zip_dirent_apply_attributes
      Src: /src/libzip/lib/zip_close.c:530,1
    - Dst: _zip_dirent_write
      Src: /src/libzip/lib/zip_close.c:534,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:535,1
    - Dst: zip_source_tell_write
      Src: /src/libzip/lib/zip_close.c:539,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:540,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:541,1
    - Dst: copy_source
      Src: /src/libzip/lib/zip_close.c:545,1
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_close.c:547,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:548,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_close.c:552,1
    - Dst: zip_source_get_file_attributes
      Src: /src/libzip/lib/zip_close.c:553,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:554,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_close.c:559,1
    - Dst: zip_source_tell_write
      Src: /src/libzip/lib/zip_close.c:565,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:566,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:571,1
    - Dst: ZIP_CM_ACTUAL
      Src: /src/libzip/lib/zip_close.c:575,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_close.c:581,1
    - Dst: _zip_dirent_apply_attributes
      Src: /src/libzip/lib/zip_close.c:582,1
    - Dst: _zip_u2d_time
      Src: /src/libzip/lib/zip_close.c:587,1
    - Dst: zip_source_seek_write
      Src: /src/libzip/lib/zip_close.c:597,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:598,1
    - Dst: _zip_dirent_write
      Src: /src/libzip/lib/zip_close.c:602,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:608,1
    - Dst: zip_source_seek_write
      Src: /src/libzip/lib/zip_close.c:612,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:613,1
    - Dst: write_data_descriptor
      Src: /src/libzip/lib/zip_close.c:619,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 227
    argCount: 3
    argNames:
    - za
    - src
    - de
    argTypes:
    - zip_t*
    - zip_source_t*
    - zip_dirent_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 308
    functionDepth: 4
    functionLinenumber: 308
    functionLinenumberEnd: 625
    functionName: add_data
    functionSourceFile: /src/libzip/lib/zip_close.c
    functionUses: 1
    functionsReached:
    - ZIP_CM_ACTUAL
    - time
    - zip_source_free
    - zip_source_compress
    - _zip_u2d_time
    - copy_source
    - _zip_dirent_write
    - zip_source_crc_create
    - write_data_descriptor
    - zip_source_get_dos_time
    - zip_error_set_from_source
    - zip_source_keep
    - _zip_source_window_new
    - _zip_get_encryption_implementation
    - _zip_get_compression_algorithm
    - zip_source_decompress
    - ZIP_WANT_TORRENTZIP
    - _zip_dirent_apply_attributes
    - zip_source_seek_write
    - zip_error_set
    - zip_source_tell_write
    - impl
    - zip_source_get_file_attributes
    - zip_compression_algorithm_t*::maximum_compressed_size
    - zip_source_stat
    linkageType: ''
    returnType: int
    signature: int add_data(zip_t *za, zip_source_t *src, zip_dirent_t *de)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: DEFINE_BYTE_ARRAY
      Src: /src/libzip/lib/zip_close.c:629,1
    - Dst: byte_array_init
      Src: /src/libzip/lib/zip_close.c:632,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:633,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_close.c:638,1
    - Dst: _zip_read
      Src: /src/libzip/lib/zip_close.c:640,1
    - Dst: byte_array_fini
      Src: /src/libzip/lib/zip_close.c:641,1
    - Dst: _zip_write
      Src: /src/libzip/lib/zip_close.c:645,1
    - Dst: byte_array_fini
      Src: /src/libzip/lib/zip_close.c:646,1
    - Dst: _zip_progress_update
      Src: /src/libzip/lib/zip_close.c:652,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:653,1
    - Dst: byte_array_fini
      Src: /src/libzip/lib/zip_close.c:658,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - za
    - len
    argTypes:
    - zip_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 628
    functionDepth: 2
    functionLinenumber: 628
    functionLinenumberEnd: 660
    functionName: copy_data
    functionSourceFile: /src/libzip/lib/zip_close.c
    functionUses: 1
    functionsReached:
    - ZIP_MIN
    - zip_error_set
    - DEFINE_BYTE_ARRAY
    - byte_array_fini
    - _zip_read
    - byte_array_init
    - _zip_write
    - _zip_progress_update
    linkageType: ''
    returnType: int
    signature: int copy_data(zip_t *za, zip_uint64_t len)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: DEFINE_BYTE_ARRAY
      Src: /src/libzip/lib/zip_close.c:664,1
    - Dst: zip_source_open
      Src: /src/libzip/lib/zip_close.c:668,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:669,1
    - Dst: byte_array_init
      Src: /src/libzip/lib/zip_close.c:673,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:674,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_close.c:680,1
    - Dst: _zip_write
      Src: /src/libzip/lib/zip_close.c:681,1
    - Dst: zip_source_tell
      Src: /src/libzip/lib/zip_close.c:687,1
    - Dst: _zip_progress_update
      Src: /src/libzip/lib/zip_close.c:694,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:695,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_close.c:703,1
    - Dst: byte_array_fini
      Src: /src/libzip/lib/zip_close.c:707,1
    - Dst: zip_source_close
      Src: /src/libzip/lib/zip_close.c:709,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 4
    argNames:
    - za
    - src
    - src_for_length
    - data_length
    argTypes:
    - zip_t*
    - zip_source_t*
    - zip_source_t*
    - zip_int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 663
    functionDepth: 2
    functionLinenumber: 663
    functionLinenumberEnd: 712
    functionName: copy_source
    functionSourceFile: /src/libzip/lib/zip_close.c
    functionUses: 2
    functionsReached:
    - zip_error_set_from_source
    - zip_source_read
    - zip_error_set
    - DEFINE_BYTE_ARRAY
    - byte_array_fini
    - zip_source_close
    - zip_source_tell
    - byte_array_init
    - zip_source_open
    - _zip_write
    - _zip_progress_update
    linkageType: ''
    returnType: int
    signature: int copy_source(zip_t *za, zip_source_t *src, zip_source_t *src_for_length,
      zip_int64_t data_length)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_tell_write
      Src: /src/libzip/lib/zip_close.c:715,1
    - Dst: _zip_cdir_write
      Src: /src/libzip/lib/zip_close.c:719,1
    - Dst: zip_source_tell_write
      Src: /src/libzip/lib/zip_close.c:723,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - za
    - filelist
    - survivors
    argTypes:
    - zip_t*
    - zip_filelist_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 714
    functionDepth: 4
    functionLinenumber: 714
    functionLinenumberEnd: 728
    functionName: write_cdir
    functionSourceFile: /src/libzip/lib/zip_close.c
    functionUses: 1
    functionsReached:
    - _zip_cdir_write
    - zip_source_tell_write
    linkageType: ''
    returnType: int
    signature: int write_cdir(zip_t *za, const zip_filelist_t *filelist, zip_uint64_t
      survivors)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_close.c:738,1
    - Dst: ZIP_IS_TORRENTZIP
      Src: /src/libzip/lib/zip_close.c:738,1
    - Dst: ZIP_ENTRY_HAS_CHANGES
      Src: /src/libzip/lib/zip_close.c:743,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 2
    argNames:
    - za
    - survivorsp
    argTypes:
    - zip_t*
    - zip_uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 756
      start: 731
    functionDepth: 1
    functionLinenumber: 731
    functionLinenumberEnd: 756
    functionName: _zip_changed
    functionSourceFile: /src/libzip/lib/zip_close.c
    functionUses: 2
    functionsReached:
    - ZIP_IS_TORRENTZIP
    - ZIP_WANT_TORRENTZIP
    - ZIP_ENTRY_HAS_CHANGES
    linkageType: ''
    returnType: int
    signature: int _zip_changed(const zip_t *za, zip_uint64_t *survivorsp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_close.c:759,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:763,1
    - Dst: _zip_buffer_put
      Src: /src/libzip/lib/zip_close.c:767,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_close.c:768,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_close.c:770,1
    - Dst: _zip_buffer_put_64
      Src: /src/libzip/lib/zip_close.c:771,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_close.c:774,1
    - Dst: _zip_buffer_put_32
      Src: /src/libzip/lib/zip_close.c:775,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_close.c:778,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_close.c:779,1
    - Dst: _zip_write
      Src: /src/libzip/lib/zip_close.c:783,1
    - Dst: _zip_buffer_data
      Src: /src/libzip/lib/zip_close.c:783,1
    - Dst: _zip_buffer_offset
      Src: /src/libzip/lib/zip_close.c:783,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_close.c:786,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 3
    argNames:
    - za
    - de
    - is_zip64
    argTypes:
    - zip_t*
    - zip_dirent_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 758
    functionDepth: 3
    functionLinenumber: 758
    functionLinenumberEnd: 789
    functionName: write_data_descriptor
    functionSourceFile: /src/libzip/lib/zip_close.c
    functionUses: 2
    functionsReached:
    - _zip_buffer_new
    - _zip_buffer_ok
    - _zip_buffer_free
    - zip_error_set
    - _zip_buffer_offset
    - _zip_buffer_put_32
    - _zip_buffer_data
    - _zip_buffer_put
    - _zip_write
    - _zip_buffer_put_64
    linkageType: ''
    returnType: int
    signature: int write_data_descriptor(zip_t *za, const zip_dirent_t *de, int is_zip64)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcasecmp
      Src: /src/libzip/lib/zip_close.c:803,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 792
    functionDepth: 0
    functionLinenumber: 792
    functionLinenumberEnd: 804
    functionName: torrentzip_compare_names
    functionSourceFile: /src/libzip/lib/zip_close.c
    functionUses: 0
    functionsReached:
    - strcasecmp
    linkageType: ''
    returnType: int
    signature: int torrentzip_compare_names(const void *a, const void *b)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_commit_write.c:39,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_commit_write.c:40,1
    - Dst: ZIP_SOURCE_IS_OPEN_WRITING
      Src: /src/libzip/lib/zip_source_commit_write.c:44,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_commit_write.c:45,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_commit_write.c:50,1
    - Dst: ZIP_SOURCE_IS_OPEN_READING
      Src: /src/libzip/lib/zip_source_commit_write.c:53,1
    - Dst: zip_source_close
      Src: /src/libzip/lib/zip_source_commit_write.c:54,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_commit_write.c:59,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 67
    functionName: zip_source_commit_write
    functionSourceFile: /src/libzip/lib/zip_source_commit_write.c
    functionUses: 2
    functionsReached:
    - ZIP_SOURCE_IS_LAYERED
    - zip_error_set
    - _zip_source_call
    - zip_source_close
    - ZIP_SOURCE_IS_OPEN_WRITING
    - ZIP_SOURCE_IS_OPEN_READING
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_commit_write(zip_source_t *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_error_get
      Src: /src/libzip/lib/zip_file_error_get.c:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - zf
    - zep
    - sep
    argTypes:
    - zip_file_t*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: zip_file_error_get
    functionSourceFile: /src/libzip/lib/zip_file_error_get.c
    functionUses: 0
    functionsReached:
    - _zip_error_get
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_error_get(zip_file_t *zf, int *zep, int *sep)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - hmac
    - ','
    - data
    - ','
    - length
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: _zip_crypto_hmac
    functionSourceFile: /src/libzip/lib/zip_crypto_commoncrypto.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_hmac(hmac, data, length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - hmac
    - ','
    - data
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: _zip_crypto_hmac_output
    functionSourceFile: /src/libzip/lib/zip_crypto_commoncrypto.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_hmac_output(hmac, data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - key
    - ','
    - key_length
    - ','
    - salt
    - ','
    - salt_length
    - ','
    - iterations
    - ','
    - output
    - ','
    - output_length
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 52
    functionName: _zip_crypto_pbkdf2
    functionSourceFile: /src/libzip/lib/zip_crypto_commoncrypto.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_pbkdf2(key, key_length, salt, salt_length, iterations,
      output, output_length)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_memdup.c:47,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_memdup.c:49,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_memdup.c:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - mem
    - len
    - error
    argTypes:
    - void*
    - size_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 56
    functionName: _zip_memdup
    functionSourceFile: /src/libzip/lib/zip_memdup.c
    functionUses: 0
    functionsReached:
    - memcpy_s
    - malloc
    - zip_error_set
    linkageType: ''
    returnType: void
    signature: void *_zip_memdup(const void *mem, size_t len, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_file_rename
      Src: /src/libzip/lib/zip_rename.c:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - za
    - idx
    - name
    argTypes:
    - zip_t*
    - zip_uint64_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: zip_rename
    functionSourceFile: /src/libzip/lib/zip_rename.c
    functionUses: 0
    functionsReached:
    - zip_file_rename
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_rename(zip_t *za, zip_uint64_t idx, const char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_int64_t::zip_source_tell
      Src: /src/libzip/lib/zip_ftell.c:48,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_ftell.c:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - zf
    argTypes:
    - zip_file_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 55
    functionName: zip_int64_t::zip_ftell
    functionSourceFile: /src/libzip/lib/zip_ftell.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - zip_int64_t::zip_source_tell
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_ftell(zip_file_t *zf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_realloc.c:49,1
    - Dst: realloc
      Src: /src/libzip/lib/zip_realloc.c:53,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_realloc.c:54,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 5
    argNames:
    - memory
    - alloced_elements
    - element_size
    - additional_elements
    - error
    argTypes:
    - void**
    - zip_uint64_t*
    - zip_uint64_t
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 62
    functionName: zip_realloc
    functionSourceFile: /src/libzip/lib/zip_realloc.c
    functionUses: 0
    functionsReached:
    - realloc
    - zip_error_set
    linkageType: ''
    returnType: bool
    signature: bool zip_realloc(void **memory, zip_uint64_t *alloced_elements, zip_uint64_t
      element_size, zip_uint64_t additional_elements, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - attributes
    argTypes:
    - zip_file_attributes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: zip_file_attributes_init
    functionSourceFile: /src/libzip/lib/zip_source_get_file_attributes.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_attributes_init(zip_file_attributes_t *attributes)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_get_file_attributes.c:46,1
    - Dst: zip_file_attributes_init
      Src: /src/libzip/lib/zip_source_get_file_attributes.c:50,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_get_file_attributes.c:52,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_get_file_attributes.c:53,1
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_get_file_attributes.c:58,1
    - Dst: zip_file_attributes_init
      Src: /src/libzip/lib/zip_source_get_file_attributes.c:61,1
    - Dst: zip_source_get_file_attributes
      Src: /src/libzip/lib/zip_source_get_file_attributes.c:63,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_get_file_attributes.c:64,1
    - Dst: ZIP_MAX
      Src: /src/libzip/lib/zip_source_get_file_attributes.c:78,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 53
    argCount: 2
    argNames:
    - src
    - attributes
    argTypes:
    - zip_source_t*
    - zip_file_attributes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 106
    functionName: zip_source_get_file_attributes
    functionSourceFile: /src/libzip/lib/zip_source_get_file_attributes.c
    functionUses: 2
    functionsReached:
    - zip_error_set_from_source
    - ZIP_MAX
    - ZIP_SOURCE_IS_LAYERED
    - zip_error_set
    - _zip_source_call
    - ZIP_SOURCE_MAKE_COMMAND_BITMASK
    - zip_source_get_file_attributes
    - zip_file_attributes_init
    linkageType: ''
    returnType: int
    signature: int zip_source_get_file_attributes(zip_source_t *src, zip_file_attributes_t
      *attributes)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_delete.c:42,1
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_delete.c:46,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_delete.c:47,1
    - Dst: _zip_get_name
      Src: /src/libzip/lib/zip_delete.c:51,1
    - Dst: _zip_hash_delete
      Src: /src/libzip/lib/zip_delete.c:55,1
    - Dst: _zip_unchange
      Src: /src/libzip/lib/zip_delete.c:61,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - za
    - idx
    argTypes:
    - zip_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 38
    functionDepth: 4
    functionLinenumber: 38
    functionLinenumberEnd: 68
    functionName: zip_delete
    functionSourceFile: /src/libzip/lib/zip_delete.c
    functionUses: 4
    functionsReached:
    - zip_error_set
    - _zip_hash_delete
    - _zip_get_name
    - _zip_unchange
    - ZIP_IS_RDONLY
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_delete(zip_t *za, zip_uint64_t idx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_zip.c:43,1
    - Dst: zip_source_zip_file_create
      Src: /src/libzip/lib/zip_source_zip.c:58,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 59
    functionName: zip_source_t *zip_source_zip_create(zip_t *srcza, zip_uint64_t srcidx,
      zip_flags_t flags, zip_uint64_t start, zip_int64_t len, zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_zip.c
    functionUses: 0
    functionsReached:
    - zip_source_zip_file_create
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_zip_create(zip_t *srcza, zip_uint64_t
      srcidx, zip_flags_t flags, zip_uint64_t start, zip_int64_t len, zip_error_t
      *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_zip_create
      Src: /src/libzip/lib/zip_source_zip.c:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: zip_source_t *zip_source_zip(zip_t *za, zip_t *srcza, zip_uint64_t
      srcidx, zip_flags_t flags, zip_uint64_t start, zip_int64_t len)
    functionSourceFile: /src/libzip/lib/zip_source_zip.c
    functionUses: 0
    functionsReached:
    - zip_source_zip_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_zip(zip_t *za, zip_t *srcza, zip_uint64_t
      srcidx, zip_flags_t flags, zip_uint64_t start, zip_int64_t len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - buffer
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: buffer_capacity
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: buffer_capacity(buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - buffer
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: buffer_size
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: buffer_size(buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_buffer_with_attributes_create
      Src: /src/libzip/lib/zip_source_buffer.c:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 93
    functionName: zip_source_t *zip_source_buffer(zip_t *za, const void *data, zip_uint64_t
      len, int freep)
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 0
    functionsReached:
    - zip_source_buffer_with_attributes_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_buffer(zip_t *za, const void *data,
      zip_uint64_t len, int freep)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_buffer_with_attributes_create
      Src: /src/libzip/lib/zip_source_buffer.c:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: zip_source_t *zip_source_buffer_create(const void *data, zip_uint64_t
      len, int freep, zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 0
    functionsReached:
    - zip_source_buffer_with_attributes_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_buffer_create(const void *data,
      zip_uint64_t len, int freep, zip_error_t *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:106,1
    - Dst: zip_source_buffer_fragment_with_attributes_create
      Src: /src/libzip/lib/zip_source_buffer.c:110,1
    - Dst: zip_source_buffer_fragment_with_attributes_create
      Src: /src/libzip/lib/zip_source_buffer.c:116,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - data
    - len
    - freep
    - attributes
    - error
    argTypes:
    - void*
    - zip_uint64_t
    - int
    - zip_file_attributes_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 117
    functionName: zip_source_buffer_with_attributes_create
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 3
    functionsReached:
    - zip_source_buffer_fragment_with_attributes_create
    - zip_error_set
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_buffer_with_attributes_create(const void *data,
      zip_uint64_t len, int freep, zip_file_attributes_t *attributes, zip_error_t
      *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_buffer_fragment_with_attributes_create
      Src: /src/libzip/lib/zip_source_buffer.c:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 126
    functionName: zip_source_t *zip_source_buffer_fragment(zip_t *za, const zip_buffer_fragment_t
      *fragments, zip_uint64_t nfragments, int freep)
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 0
    functionsReached:
    - zip_source_buffer_fragment_with_attributes_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_buffer_fragment(zip_t *za, const
      zip_buffer_fragment_t *fragments, zip_uint64_t nfragments, int freep)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_buffer_fragment_with_attributes_create
      Src: /src/libzip/lib/zip_source_buffer.c:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: zip_source_t *zip_source_buffer_fragment_create(const zip_buffer_fragment_t
      *fragments, zip_uint64_t nfragments, int freep, zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 0
    functionsReached:
    - zip_source_buffer_fragment_with_attributes_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_buffer_fragment_create(const zip_buffer_fragment_t
      *fragments, zip_uint64_t nfragments, int freep, zip_error_t *error)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:139,1
    - Dst: buffer_new
      Src: /src/libzip/lib/zip_source_buffer.c:143,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_buffer.c:147,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:148,1
    - Dst: buffer_free
      Src: /src/libzip/lib/zip_source_buffer.c:149,1
    - Dst: time
      Src: /src/libzip/lib/zip_source_buffer.c:155,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_buffer.c:157,1
    - Dst: zip_file_attributes_init
      Src: /src/libzip/lib/zip_source_buffer.c:160,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_source_buffer.c:162,1
    - Dst: zip_source_function_create
      Src: /src/libzip/lib/zip_source_buffer.c:164,1
    - Dst: buffer_free
      Src: /src/libzip/lib/zip_source_buffer.c:165,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_buffer.c:166,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 5
    argNames:
    - fragments
    - nfragments
    - freep
    - attributes
    - error
    argTypes:
    - zip_buffer_fragment_t*
    - zip_uint64_t
    - int
    - zip_file_attributes_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 171
    functionName: zip_source_buffer_fragment_with_attributes_create
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 3
    functionsReached:
    - free
    - zip_file_attributes_init
    - zip_error_set
    - time
    - zip_error_init
    - malloc
    - buffer_new
    - memcpy_s
    - zip_source_function_create
    - buffer_free
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_buffer_fragment_with_attributes_create(const
      zip_buffer_fragment_t *fragments, zip_uint64_t nfragments, int freep, zip_file_attributes_t
      *attributes, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_buffer_with_attributes_create
      Src: /src/libzip/lib/zip_source_buffer.c:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - za
    - data
    - len
    - freep
    - attributes
    argTypes:
    - zip_t*
    - void*
    - zip_uint64_t
    - int
    - zip_file_attributes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: zip_source_buffer_with_attributes
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 0
    functionsReached:
    - zip_source_buffer_with_attributes_create
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_buffer_with_attributes(zip_t *za, const void
      *data, zip_uint64_t len, int freep, zip_file_attributes_t *attributes)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: buffer_new
      Src: /src/libzip/lib/zip_source_buffer.c:183,1
    - Dst: buffer_clone
      Src: /src/libzip/lib/zip_source_buffer.c:191,1
    - Dst: buffer_free
      Src: /src/libzip/lib/zip_source_buffer.c:202,1
    - Dst: zip_error_to_data
      Src: /src/libzip/lib/zip_source_buffer.c:208,1
    - Dst: buffer_free
      Src: /src/libzip/lib/zip_source_buffer.c:211,1
    - Dst: buffer_free
      Src: /src/libzip/lib/zip_source_buffer.c:212,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_buffer.c:213,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:218,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_buffer.c:222,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:234,1
    - Dst: buffer_read
      Src: /src/libzip/lib/zip_source_buffer.c:237,1
    - Dst: buffer_new
      Src: /src/libzip/lib/zip_source_buffer.c:240,1
    - Dst: buffer_free
      Src: /src/libzip/lib/zip_source_buffer.c:245,1
    - Dst: buffer_free
      Src: /src/libzip/lib/zip_source_buffer.c:251,1
    - Dst: buffer_seek
      Src: /src/libzip/lib/zip_source_buffer.c:256,1
    - Dst: buffer_seek
      Src: /src/libzip/lib/zip_source_buffer.c:259,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:265,1
    - Dst: zip_stat_init
      Src: /src/libzip/lib/zip_source_buffer.c:271,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/lib/zip_source_buffer.c:283,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:287,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:295,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:302,1
    - Dst: buffer_write
      Src: /src/libzip/lib/zip_source_buffer.c:305,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:308,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 103
    argCount: 4
    argNames:
    - state
    - data
    - len
    - cmd
    argTypes:
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 178
    functionDepth: 2
    functionLinenumber: 178
    functionLinenumberEnd: 311
    functionName: read_data
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 1
    functionsReached:
    - free
    - buffer_clone
    - buffer_seek
    - zip_error_set
    - zip_error_to_data
    - zip_source_make_command_bitmap
    - buffer_new
    - zip_stat_init
    - buffer_write
    - memcpy_s
    - buffer_free
    - buffer_read
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t read_data(void *state, void *data, zip_uint64_t len, zip_source_cmd_t
      cmd)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: buffer_new
      Src: /src/libzip/lib/zip_source_buffer.c:319,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:323,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:327,1
    - Dst: buffer_find_fragment
      Src: /src/libzip/lib/zip_source_buffer.c:331,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:343,1
    - Dst: buffer_new
      Src: /src/libzip/lib/zip_source_buffer.c:347,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_source_buffer.c:358,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 3
    argNames:
    - buffer
    - offset
    - error
    argTypes:
    - buffer_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 366
    functionName: buffer_clone
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 1
    functionsReached:
    - buffer_find_fragment
    - zip_error_set
    - buffer_new
    - ZIP_MIN
    linkageType: ''
    returnType: buffer_t
    signature: buffer_t *buffer_clone(buffer_t *buffer, zip_uint64_t offset, zip_error_t
      *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - buffer
    - offset
    argTypes:
    - buffer_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 369
    functionDepth: 0
    functionLinenumber: 369
    functionLinenumberEnd: 393
    functionName: buffer_find_fragment
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t buffer_find_fragment(const buffer_t *buffer, zip_uint64_t
      offset)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_MAX
      Src: /src/libzip/lib/zip_source_buffer.c:407,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_buffer.c:411,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_buffer.c:413,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_buffer.c:414,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_buffer.c:415,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - buffer_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 396
    functionDepth: 1
    functionLinenumber: 396
    functionLinenumberEnd: 416
    functionName: buffer_free
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 22
    functionsReached:
    - free
    - ZIP_MAX
    linkageType: ''
    returnType: void
    signature: void buffer_free(buffer_t *buffer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_REALLOC
      Src: /src/libzip/lib/zip_source_buffer.c:429,1
    - Dst: ZIP_REALLOC
      Src: /src/libzip/lib/zip_source_buffer.c:433,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - buffer
    - capacity
    - error
    argTypes:
    - buffer_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 419
    functionDepth: 1
    functionLinenumber: 419
    functionLinenumberEnd: 439
    functionName: buffer_grow_fragments
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 0
    functionsReached:
    - ZIP_REALLOC
    linkageType: ''
    returnType: bool
    signature: bool buffer_grow_fragments(buffer_t *buffer, zip_uint64_t capacity,
      zip_error_t *error)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_buffer.c:445,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_buffer.c:460,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_buffer.c:461,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:462,1
    - Dst: buffer_grow_fragments
      Src: /src/libzip/lib/zip_source_buffer.c:470,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:471,1
    - Dst: buffer_free
      Src: /src/libzip/lib/zip_source_buffer.c:472,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:482,1
    - Dst: buffer_free
      Src: /src/libzip/lib/zip_source_buffer.c:483,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:490,1
    - Dst: buffer_free
      Src: /src/libzip/lib/zip_source_buffer.c:491,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 53
    argCount: 4
    argNames:
    - fragments
    - nfragments
    - free_data
    - error
    argTypes:
    - zip_buffer_fragment_t*
    - zip_uint64_t
    - int
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 442
    functionDepth: 2
    functionLinenumber: 442
    functionLinenumberEnd: 504
    functionName: buffer_new
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 16
    functionsReached:
    - free
    - zip_error_set
    - buffer_grow_fragments
    - malloc
    - buffer_free
    linkageType: ''
    returnType: buffer_t
    signature: buffer_t *buffer_new(const zip_buffer_fragment_t *fragments, zip_uint64_t
      nfragments, int free_data, zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_source_buffer.c:509,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_source_buffer.c:522,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_source_buffer.c:524,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_buffer.c:527,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 3
    argNames:
    - buffer
    - data
    - length
    argTypes:
    - buffer_t*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 506
    functionDepth: 1
    functionLinenumber: 506
    functionLinenumberEnd: 539
    functionName: buffer_read
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 3
    functionsReached:
    - memcpy_s
    - ZIP_MIN
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t buffer_read(buffer_t *buffer, zip_uint8_t *data, zip_uint64_t
      length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_seek_compute_offset
      Src: /src/libzip/lib/zip_source_buffer.c:543,1
    - Dst: buffer_find_fragment
      Src: /src/libzip/lib/zip_source_buffer.c:550,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - buffer
    - data
    - len
    - error
    argTypes:
    - buffer_t*
    - void*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 542
    functionDepth: 2
    functionLinenumber: 542
    functionLinenumberEnd: 552
    functionName: buffer_seek
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 2
    functionsReached:
    - zip_source_seek_compute_offset
    - buffer_find_fragment
    linkageType: ''
    returnType: int
    signature: int buffer_seek(buffer_t *buffer, void *data, zip_uint64_t len, zip_error_t
      *error)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:559,1
    - Dst: buffer_capacity
      Src: /src/libzip/lib/zip_source_buffer.c:564,1
    - Dst: buffer_grow_fragments
      Src: /src/libzip/lib/zip_source_buffer.c:578,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:579,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_buffer.c:585,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_buffer.c:586,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_source_buffer.c:600,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_source_buffer.c:600,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_source_buffer.c:602,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_buffer.c:605,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 50
    argCount: 4
    argNames:
    - buffer
    - data
    - length
    - error
    argTypes:
    - buffer_t*
    - zip_uint8_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 555
    functionDepth: 2
    functionLinenumber: 555
    functionLinenumberEnd: 624
    functionName: buffer_write
    functionSourceFile: /src/libzip/lib/zip_source_buffer.c
    functionUses: 2
    functionsReached:
    - ZIP_MIN
    - zip_error_set
    - malloc
    - buffer_grow_fragments
    - memcpy_s
    - buffer_capacity
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t buffer_write(buffer_t *buffer, const zip_uint8_t *data,
      zip_uint64_t length, zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_error_clear
      Src: /src/libzip/lib/zip_file_error_clear.c:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - zf
    argTypes:
    - zip_file_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionName: zip_file_error_clear
    functionSourceFile: /src/libzip/lib/zip_file_error_clear.c
    functionUses: 0
    functionsReached:
    - _zip_error_clear
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_error_clear(zip_file_t *zf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_win32handle_create
      Src: /src/libzip/lib/zip_source_file_win32.c:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 66
    functionName: zip_source_t *zip_source_win32handle(zip_t *za, HANDLE h, zip_uint64_t
      start, zip_int64_t len)
    functionSourceFile: /src/libzip/lib/zip_source_file_win32.c
    functionUses: 0
    functionsReached:
    - zip_source_win32handle_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_win32handle(zip_t *za, HANDLE h,
      zip_uint64_t start, zip_int64_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32.c:71,1
    - Dst: zip_source_file_common_new
      Src: /src/libzip/lib/zip_source_file_win32.c:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 76
    functionName: zip_source_t *zip_source_win32handle_create(HANDLE h, zip_uint64_t
      start, zip_int64_t length, zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_file_win32.c
    functionUses: 0
    functionsReached:
    - zip_source_file_common_new
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_win32handle_create(HANDLE h, zip_uint64_t
      start, zip_int64_t length, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CloseHandle
      Src: /src/libzip/lib/zip_source_file_win32.c:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: _zip_win32_op_close
    functionSourceFile: /src/libzip/lib/zip_source_file_win32.c
    functionUses: 0
    functionsReached:
    - CloseHandle
    linkageType: ''
    returnType: void
    signature: void _zip_win32_op_close(zip_source_file_context_t *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ReadFile
      Src: /src/libzip/lib/zip_source_file_win32.c:88,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32.c:89,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32.c:89,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32.c:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - buf
    - len
    argTypes:
    - zip_source_file_context_t*
    - void*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 94
    functionName: _zip_win32_op_read
    functionSourceFile: /src/libzip/lib/zip_source_file_win32.c
    functionUses: 0
    functionsReached:
    - ReadFile
    - _zip_win32_error_to_errno
    - zip_error_set
    - GetLastError
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_win32_op_read(zip_source_file_context_t *ctx, void
      *buf, zip_uint64_t len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32.c:112,1
    - Dst: SetFilePointerEx
      Src: /src/libzip/lib/zip_source_file_win32.c:117,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32.c:118,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32.c:118,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32.c:118,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 4
    argNames:
    - ctx
    - f
    - offset
    - whence
    argTypes:
    - zip_source_file_context_t*
    - void*
    - zip_int64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 123
    functionName: _zip_win32_op_seek
    functionSourceFile: /src/libzip/lib/zip_source_file_win32.c
    functionUses: 0
    functionsReached:
    - GetLastError
    - _zip_win32_error_to_errno
    - SetFilePointerEx
    - zip_error_set
    linkageType: ''
    returnType: bool
    signature: bool _zip_win32_op_seek(zip_source_file_context_t *ctx, void *f, zip_int64_t
      offset, int whence)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_stat_win32
      Src: /src/libzip/lib/zip_source_file_win32.c:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - st
    argTypes:
    - zip_source_file_context_t*
    - zip_source_file_stat_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: _zip_win32_op_stat
    functionSourceFile: /src/libzip/lib/zip_source_file_win32.c
    functionUses: 0
    functionsReached:
    - _zip_stat_win32
    linkageType: ''
    returnType: bool
    signature: bool _zip_win32_op_stat(zip_source_file_context_t *ctx, zip_source_file_stat_t
      *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SetFilePointerEx
      Src: /src/libzip/lib/zip_source_file_win32.c:136,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32.c:137,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32.c:137,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32.c:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - f
    argTypes:
    - zip_source_file_context_t*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 142
    functionName: _zip_win32_op_tell
    functionSourceFile: /src/libzip/lib/zip_source_file_win32.c
    functionUses: 0
    functionsReached:
    - GetLastError
    - _zip_win32_error_to_errno
    - SetFilePointerEx
    - zip_error_set
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_win32_op_tell(zip_source_file_context_t *ctx, void
      *f)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 1
    argNames:
    - win32err
    argTypes:
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 166
    functionName: _zip_win32_error_to_errno
    functionSourceFile: /src/libzip/lib/zip_source_file_win32.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int _zip_win32_error_to_errno(DWORD win32err)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GetFileTime
      Src: /src/libzip/lib/zip_source_file_win32.c:174,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32.c:175,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32.c:175,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32.c:175,1
    - Dst: _zip_filetime_to_time_t
      Src: /src/libzip/lib/zip_source_file_win32.c:178,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32.c:179,1
    - Dst: GetFileType
      Src: /src/libzip/lib/zip_source_file_win32.c:186,1
    - Dst: GetFileSizeEx
      Src: /src/libzip/lib/zip_source_file_win32.c:189,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32.c:190,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32.c:190,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32.c:190,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - ctx
    - st
    - h
    argTypes:
    - zip_source_file_context_t*
    - zip_source_file_stat_t*
    - HANDLE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 200
    functionName: _zip_stat_win32
    functionSourceFile: /src/libzip/lib/zip_source_file_win32.c
    functionUses: 1
    functionsReached:
    - GetLastError
    - zip_error_set
    - _zip_win32_error_to_errno
    - GetFileSizeEx
    - GetFileTime
    - GetFileType
    - _zip_filetime_to_time_t
    linkageType: ''
    returnType: bool
    signature: bool _zip_stat_win32(zip_source_file_context_t *ctx, zip_source_file_stat_t
      *st, HANDLE h)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ft
    - t
    argTypes:
    - FILETIME
    - time_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 224
    functionName: _zip_filetime_to_time_t
    functionSourceFile: /src/libzip/lib/zip_source_file_win32.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool _zip_filetime_to_time_t(FILETIME ft, time_t *t)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_rollback_write.c:39,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_rollback_write.c:47,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 49
    functionName: zip_source_rollback_write
    functionSourceFile: /src/libzip/lib/zip_source_rollback_write.c
    functionUses: 3
    functionsReached:
    - _zip_source_call
    - ZIP_SOURCE_IS_LAYERED
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_rollback_write(zip_source_t *src)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - uncompressed_size
    argTypes:
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 59
    functionName: maximum_compressed_size
    functionSourceFile: /src/libzip/lib/zip_algorithm_deflate.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t maximum_compressed_size(zip_uint64_t uncompressed_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_algorithm_deflate.c:65,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_deflate.c:66,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - compress
    - compression_flags
    - error
    argTypes:
    - bool
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 86
    functionName: allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_deflate.c
    functionUses: 2
    functionsReached:
    - malloc
    - zip_error_set
    linkageType: ''
    returnType: void
    signature: void *allocate(bool compress, zip_uint32_t compression_flags, zip_error_t
      *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: allocate
      Src: /src/libzip/lib/zip_algorithm_deflate.c:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - method
    - compression_flags
    - error
    argTypes:
    - zip_uint16_t
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionName: compress_allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_deflate.c
    functionUses: 0
    functionsReached:
    - allocate
    linkageType: ''
    returnType: void
    signature: void *compress_allocate(zip_uint16_t method, zip_uint32_t compression_flags,
      zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: allocate
      Src: /src/libzip/lib/zip_algorithm_deflate.c:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - method
    - compression_flags
    - error
    argTypes:
    - zip_uint16_t
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: decompress_allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_deflate.c
    functionUses: 0
    functionsReached:
    - allocate
    linkageType: ''
    returnType: void
    signature: void *decompress_allocate(zip_uint16_t method, zip_uint32_t compression_flags,
      zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/lib/zip_algorithm_deflate.c:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 105
    functionName: deallocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_deflate.c
    functionUses: 0
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void deallocate(void *ud)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 122
    functionName: general_purpose_bit_flags
    functionSourceFile: /src/libzip/lib/zip_algorithm_deflate.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: zip_uint16_t
    signature: zip_uint16_t general_purpose_bit_flags(void *ud)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: deflateInit2
      Src: /src/libzip/lib/zip_algorithm_deflate.c:139,1
    - Dst: inflateInit2
      Src: /src/libzip/lib/zip_algorithm_deflate.c:142,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_deflate.c:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 3
    argNames:
    - ud
    - st
    - attributes
    argTypes:
    - void*
    - zip_stat_t*
    - zip_file_attributes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 152
    functionName: start
    functionSourceFile: /src/libzip/lib/zip_algorithm_deflate.c
    functionUses: 3
    functionsReached:
    - deflateInit2
    - zip_error_set
    - inflateInit2
    linkageType: ''
    returnType: bool
    signature: bool start(void *ud, zip_stat_t *st, zip_file_attributes_t *attributes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: deflateEnd
      Src: /src/libzip/lib/zip_algorithm_deflate.c:160,1
    - Dst: inflateEnd
      Src: /src/libzip/lib/zip_algorithm_deflate.c:163,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_deflate.c:167,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 172
    functionName: end
    functionSourceFile: /src/libzip/lib/zip_algorithm_deflate.c
    functionUses: 7
    functionsReached:
    - deflateEnd
    - zip_error_set
    - inflateEnd
    linkageType: ''
    returnType: bool
    signature: bool end(void *ud)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_deflate.c:179,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ud
    - data
    - length
    argTypes:
    - void*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 187
    functionName: input
    functionSourceFile: /src/libzip/lib/zip_algorithm_deflate.c
    functionUses: 0
    functionsReached:
    - zip_error_set
    linkageType: ''
    returnType: bool
    signature: bool input(void *ud, zip_uint8_t *data, zip_uint64_t length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 195
    functionName: end_of_input
    functionSourceFile: /src/libzip/lib/zip_algorithm_deflate.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool end_of_input(void *ud)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_algorithm_deflate.c:204,1
    - Dst: deflate
      Src: /src/libzip/lib/zip_algorithm_deflate.c:209,1
    - Dst: inflate
      Src: /src/libzip/lib/zip_algorithm_deflate.c:212,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_deflate.c:232,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - ud
    - data
    - length
    argTypes:
    - void*
    - zip_uint8_t*
    - zip_uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 235
    functionName: process
    functionSourceFile: /src/libzip/lib/zip_algorithm_deflate.c
    functionUses: 0
    functionsReached:
    - ZIP_MIN
    - deflate
    - inflate
    - zip_error_set
    linkageType: ''
    returnType: zip_compression_status_t
    signature: zip_compression_status_t process(void *ud, zip_uint8_t *data, zip_uint64_t
      *length)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_get_dostime.c:43,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_get_dostime.c:48,1
    - Dst: zip_source_supports
      Src: /src/libzip/lib/zip_source_get_dostime.c:51,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_get_dostime.c:51,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_get_dostime.c:52,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_get_dostime.c:64,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 2
    argNames:
    - src
    - dos_time
    argTypes:
    - zip_source_t*
    - zip_dostime_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 71
    functionName: zip_source_get_dos_time
    functionSourceFile: /src/libzip/lib/zip_source_get_dostime.c
    functionUses: 2
    functionsReached:
    - ZIP_SOURCE_MAKE_COMMAND_BITMASK
    - zip_source_supports
    - zip_error_set
    - _zip_source_call
    linkageType: ''
    returnType: int
    signature: int zip_source_get_dos_time(zip_source_t *src, zip_dostime_t *dos_time)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_open.c:42,1
    - Dst: ZIP_SOURCE_IS_OPEN_READING
      Src: /src/libzip/lib/zip_source_open.c:46,1
    - Dst: zip_source_supports
      Src: /src/libzip/lib/zip_source_open.c:47,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_open.c:47,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_open.c:48,1
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_open.c:53,1
    - Dst: zip_source_open
      Src: /src/libzip/lib/zip_source_open.c:54,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_open.c:55,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_open.c:60,1
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_open.c:61,1
    - Dst: zip_source_close
      Src: /src/libzip/lib/zip_source_open.c:62,1
    - Dst: _zip_error_clear
      Src: /src/libzip/lib/zip_source_open.c:70,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 75
    functionName: zip_source_open
    functionSourceFile: /src/libzip/lib/zip_source_open.c
    functionUses: 8
    functionsReached:
    - zip_error_set_from_source
    - ZIP_SOURCE_IS_LAYERED
    - zip_error_set
    - _zip_source_call
    - zip_source_close
    - zip_source_open
    - zip_source_supports
    - ZIP_SOURCE_MAKE_COMMAND_BITMASK
    - ZIP_SOURCE_IS_OPEN_READING
    - _zip_error_clear
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_open(zip_source_t *src)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_OPEN_READING
      Src: /src/libzip/lib/zip_source_free.c:52,1
    - Dst: zip_source_close
      Src: /src/libzip/lib/zip_source_free.c:54,1
    - Dst: ZIP_SOURCE_IS_OPEN_WRITING
      Src: /src/libzip/lib/zip_source_free.c:56,1
    - Dst: zip_source_rollback_write
      Src: /src/libzip/lib/zip_source_free.c:57,1
    - Dst: _zip_deregister_source
      Src: /src/libzip/lib/zip_source_free.c:61,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_free.c:64,1
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_source_free.c:67,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_free.c:70,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 71
    functionName: zip_source_free
    functionSourceFile: /src/libzip/lib/zip_source_free.c
    functionUses: 29
    functionsReached:
    - free
    - _zip_source_call
    - zip_source_close
    - zip_source_free
    - ZIP_SOURCE_IS_OPEN_WRITING
    - zip_source_rollback_write
    - ZIP_SOURCE_IS_OPEN_READING
    - _zip_deregister_source
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_free(zip_source_t *src)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_REALLOC
      Src: /src/libzip/lib/zip_add_entry.c:55,1
    - Dst: _zip_entry_init
      Src: /src/libzip/lib/zip_add_entry.c:62,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - za
    argTypes:
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 65
    functionName: _zip_add_entry
    functionSourceFile: /src/libzip/lib/zip_add_entry.c
    functionUses: 0
    functionsReached:
    - ZIP_REALLOC
    - _zip_entry_init
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_add_entry(zip_t *za)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_stat_index.c:43,1
    - Dst: zip_get_name
      Src: /src/libzip/lib/zip_stat_index.c:47,1
    - Dst: ZIP_ENTRY_DATA_CHANGED
      Src: /src/libzip/lib/zip_stat_index.c:53,1
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_stat_index.c:54,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_stat_index.c:55,1
    - Dst: zip_dirent_get_last_mod_mtime
      Src: /src/libzip/lib/zip_stat_index.c:78,1
    - Dst: zip_stat_init
      Src: /src/libzip/lib/zip_stat_index.c:83,1
    - Dst: zip_dirent_get_last_mod_mtime
      Src: /src/libzip/lib/zip_stat_index.c:87,1
    - Dst: _zip_d2u_time
      Src: /src/libzip/lib/zip_stat_index.c:100,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 58
    argCount: 4
    argNames:
    - za
    - index
    - flags
    - st
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_flags_t
    - zip_stat_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 113
    functionName: zip_stat_index
    functionSourceFile: /src/libzip/lib/zip_stat_index.c
    functionUses: 8
    functionsReached:
    - _zip_d2u_time
    - zip_error_set
    - zip_get_name
    - zip_dirent_get_last_mod_mtime
    - _zip_get_dirent
    - zip_stat_init
    - zip_source_stat
    - ZIP_ENTRY_DATA_CHANGED
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_stat_index(zip_t *za, zip_uint64_t index, zip_flags_t
      flags, zip_stat_t *st)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:68,1
    - Dst: winzip_aes_new
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:72,1
    - Dst: zip_source_layered
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:76,1
    - Dst: winzip_aes_free
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:77,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 5
    argNames:
    - za
    - src
    - encryption_method
    - flags
    - password
    argTypes:
    - zip_t*
    - zip_source_t*
    - zip_uint16_t
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 82
    functionName: zip_source_winzip_aes_encode
    functionSourceFile: /src/libzip/lib/zip_source_winzip_aes_encode.c
    functionUses: 0
    functionsReached:
    - winzip_aes_new
    - zip_source_layered
    - zip_error_set
    - winzip_aes_free
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_winzip_aes_encode(zip_t *za, zip_source_t
      *src, zip_uint16_t encryption_method, int flags, const char *password)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SALT_LENGTH
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:86,1
    - Dst: zip_secure_random
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:87,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:88,1
    - Dst: _zip_winzip_aes_new
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:92,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:92,1
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:96,1
    - Dst: _zip_winzip_aes_free
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:97,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:99,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - src
    - ctx
    argTypes:
    - zip_source_t*
    - struct winzip_aes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 104
    functionName: encrypt_header
    functionSourceFile: /src/libzip/lib/zip_source_winzip_aes_encode.c
    functionUses: 1
    functionsReached:
    - _zip_buffer_new
    - zip_secure_random
    - zip_error_set
    - strlen
    - _zip_winzip_aes_new
    - _zip_winzip_aes_free
    - SALT_LENGTH
    linkageType: ''
    returnType: int
    signature: int encrypt_header(zip_source_t *src, struct winzip_aes *ctx)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: encrypt_header
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:117,1
    - Dst: _zip_buffer_read
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:126,1
    - Dst: _zip_buffer_eof
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:131,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:132,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:141,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:142,1
    - Dst: _zip_winzip_aes_encrypt
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:146,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:147,1
    - Dst: _zip_winzip_aes_finish
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:154,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:155,1
    - Dst: _zip_winzip_aes_free
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:159,1
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:161,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:162,1
    - Dst: _zip_buffer_read
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:166,1
    - Dst: SALT_LENGTH
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:181,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:190,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:200,1
    - Dst: zip_error_to_data
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:203,1
    - Dst: winzip_aes_free
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:206,1
    - Dst: zip_source_pass_to_lower_layer
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:210,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 76
    argCount: 5
    argNames:
    - src
    - ud
    - data
    - length
    - cmd
    argTypes:
    - zip_source_t*
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 107
    functionDepth: 3
    functionLinenumber: 107
    functionLinenumberEnd: 212
    functionName: winzip_aes_encrypt
    functionSourceFile: /src/libzip/lib/zip_source_winzip_aes_encode.c
    functionUses: 1
    functionsReached:
    - zip_error_set_from_source
    - _zip_buffer_new
    - _zip_winzip_aes_encrypt
    - zip_source_read
    - _zip_buffer_free
    - encrypt_header
    - zip_error_set
    - _zip_buffer_read
    - zip_source_make_command_bitmap
    - zip_error_to_data
    - zip_source_pass_to_lower_layer
    - _zip_winzip_aes_free
    - _zip_winzip_aes_finish
    - winzip_aes_free
    - SALT_LENGTH
    - _zip_buffer_eof
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t winzip_aes_encrypt(zip_source_t *src, void *ud, void *data,
      zip_uint64_t length, zip_source_cmd_t cmd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:220,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:220,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:221,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:222,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:223,1
    - Dst: _zip_winzip_aes_free
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:224,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - struct winzip_aes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 215
    functionDepth: 2
    functionLinenumber: 215
    functionLinenumberEnd: 226
    functionName: winzip_aes_free
    functionSourceFile: /src/libzip/lib/zip_source_winzip_aes_encode.c
    functionUses: 4
    functionsReached:
    - free
    - _zip_buffer_free
    - strlen
    - _zip_winzip_aes_free
    - _zip_crypto_clear
    - zip_error_fini
    linkageType: ''
    returnType: void
    signature: void winzip_aes_free(struct winzip_aes *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:232,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:233,1
    - Dst: strdup
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:237,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:238,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:239,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_source_winzip_aes_encode.c:247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 3
    argNames:
    - encryption_method
    - password
    - error
    argTypes:
    - zip_uint16_t
    - char*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 229
    functionDepth: 1
    functionLinenumber: 229
    functionLinenumberEnd: 251
    functionName: winzip_aes_new
    functionSourceFile: /src/libzip/lib/zip_source_winzip_aes_encode.c
    functionUses: 2
    functionsReached:
    - free
    - zip_error_set
    - zip_error_init
    - malloc
    - strdup
    linkageType: ''
    returnType: struct winzip_aes
    signature: struct winzip_aes *winzip_aes_new(zip_uint16_t encryption_method, const
      char *password, zip_error_t *error)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_pass_to_lower_layer.c:54,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pass_to_lower_layer.c:64,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pass_to_lower_layer.c:69,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pass_to_lower_layer.c:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 37
    argCount: 4
    argNames:
    - src
    - data
    - length
    - command
    argTypes:
    - zip_source_t*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 78
    functionName: zip_source_pass_to_lower_layer
    functionSourceFile: /src/libzip/lib/zip_source_pass_to_lower_layer.c
    functionUses: 3
    functionsReached:
    - _zip_source_call
    - zip_error_set
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t zip_source_pass_to_lower_layer(zip_source_t *src, void
      *data, zip_uint64_t length, zip_source_cmd_t command)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_seek_write.c:41,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_seek_write.c:42,1
    - Dst: ZIP_SOURCE_IS_OPEN_WRITING
      Src: /src/libzip/lib/zip_source_seek_write.c:46,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_seek_write.c:47,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_seek_write.c:54,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - src
    - offset
    - whence
    argTypes:
    - zip_source_t*
    - zip_int64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 55
    functionName: zip_source_seek_write
    functionSourceFile: /src/libzip/lib/zip_source_seek_write.c
    functionUses: 1
    functionsReached:
    - _zip_source_call
    - ZIP_SOURCE_IS_OPEN_WRITING
    - ZIP_SOURCE_IS_LAYERED
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_seek_write(zip_source_t *src, zip_int64_t offset,
      int whence)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_io_util.c:45,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_io_util.c:49,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_io_util.c:50,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_io_util.c:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - src
    - b
    - length
    - error
    argTypes:
    - zip_source_t*
    - zip_uint8_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 60
    functionName: _zip_read
    functionSourceFile: /src/libzip/lib/zip_io_util.c
    functionUses: 2
    functionsReached:
    - zip_error_set_from_source
    - zip_source_read
    - zip_error_set
    linkageType: ''
    returnType: int
    signature: int _zip_read(zip_source_t *src, zip_uint8_t *b, zip_uint64_t length,
      zip_error_t *error)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_io_util.c:70,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_io_util.c:72,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_io_util.c:77,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_io_util.c:80,1
    - Dst: free
      Src: /src/libzip/lib/zip_io_util.c:81,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_io_util.c:84,1
    - Dst: _zip_read
      Src: /src/libzip/lib/zip_io_util.c:87,1
    - Dst: free
      Src: /src/libzip/lib/zip_io_util.c:88,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 5
    argNames:
    - buffer
    - src
    - length
    - nulp
    - error
    argTypes:
    - zip_buffer_t*
    - zip_source_t*
    - size_t
    - bool
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 63
    functionDepth: 3
    functionLinenumber: 63
    functionLinenumberEnd: 98
    functionName: _zip_read_data
    functionSourceFile: /src/libzip/lib/zip_io_util.c
    functionUses: 1
    functionsReached:
    - free
    - zip_error_set
    - malloc
    - _zip_read
    - memcpy_s
    - _zip_buffer_get
    linkageType: ''
    returnType: zip_uint8_t
    signature: zip_uint8_t *_zip_read_data(zip_buffer_t *buffer, zip_source_t *src,
      size_t length, bool nulp, zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_read_data
      Src: /src/libzip/lib/zip_io_util.c:105,1
    - Dst: _zip_string_new
      Src: /src/libzip/lib/zip_io_util.c:109,1
    - Dst: free
      Src: /src/libzip/lib/zip_io_util.c:110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - buffer
    - src
    - len
    - nulp
    - error
    argTypes:
    - zip_buffer_t*
    - zip_source_t*
    - zip_uint16_t
    - bool
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 101
    functionDepth: 4
    functionLinenumber: 101
    functionLinenumberEnd: 112
    functionName: _zip_read_string
    functionSourceFile: /src/libzip/lib/zip_io_util.c
    functionUses: 1
    functionsReached:
    - _zip_read_data
    - free
    - _zip_string_new
    linkageType: ''
    returnType: zip_string_t
    signature: zip_string_t *_zip_read_string(zip_buffer_t *buffer, zip_source_t *src,
      zip_uint16_t len, bool nulp, zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_write
      Src: /src/libzip/lib/zip_io_util.c:118,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_io_util.c:119,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_io_util.c:123,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_io_util.c:130,1
    - Dst: crc32
      Src: /src/libzip/lib/zip_io_util.c:132,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - za
    - data
    - length
    argTypes:
    - zip_t*
    - void*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 138
    functionName: _zip_write
    functionSourceFile: /src/libzip/lib/zip_io_util.c
    functionUses: 5
    functionsReached:
    - zip_error_set_from_source
    - ZIP_MIN
    - zip_error_set
    - zip_source_write
    - crc32
    linkageType: ''
    returnType: int
    signature: int _zip_write(zip_t *za, const void *data, zip_uint64_t length)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_file_set_mtime.c:39,1
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_file_set_mtime.c:43,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_mtime.c:44,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_file_set_mtime.c:47,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_mtime.c:48,1
    - Dst: ZIP_ENTRY_CHANGED
      Src: /src/libzip/lib/zip_file_set_mtime.c:54,1
    - Dst: ZIP_ENTRY_DATA_CHANGED
      Src: /src/libzip/lib/zip_file_set_mtime.c:54,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_mtime.c:55,1
    - Dst: _zip_dirent_clone
      Src: /src/libzip/lib/zip_file_set_mtime.c:60,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_mtime.c:61,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 6
    argNames:
    - za
    - idx
    - dtime
    - ddate
    - flags
    - mtime
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_uint16_t
    - zip_uint16_t
    - zip_flags_t
    - time_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 78
    functionName: zip_file_set_time
    functionSourceFile: /src/libzip/lib/zip_file_set_mtime.c
    functionUses: 0
    functionsReached:
    - ZIP_ENTRY_CHANGED
    - zip_error_set
    - _zip_dirent_clone
    - _zip_get_dirent
    - ZIP_WANT_TORRENTZIP
    - ZIP_IS_RDONLY
    - ZIP_ENTRY_DATA_CHANGED
    linkageType: ''
    returnType: int
    signature: int zip_file_set_time(zip_t *za, zip_uint64_t idx, zip_uint16_t dtime,
      zip_uint16_t ddate, zip_flags_t flags, time_t *mtime)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_file_set_time
      Src: /src/libzip/lib/zip_file_set_mtime.c:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - za
    - idx
    - dtime
    - ddate
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_uint16_t
    - zip_uint16_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 3
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: zip_file_set_dostime
    functionSourceFile: /src/libzip/lib/zip_file_set_mtime.c
    functionUses: 1
    functionsReached:
    - zip_file_set_time
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_set_dostime(zip_t *za, zip_uint64_t idx, zip_uint16_t
      dtime, zip_uint16_t ddate, zip_flags_t flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_u2d_time
      Src: /src/libzip/lib/zip_file_set_mtime.c:88,1
    - Dst: zip_file_set_time
      Src: /src/libzip/lib/zip_file_set_mtime.c:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - za
    - idx
    - mtime
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - time_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 85
    functionDepth: 3
    functionLinenumber: 85
    functionLinenumberEnd: 93
    functionName: zip_file_set_mtime
    functionSourceFile: /src/libzip/lib/zip_file_set_mtime.c
    functionUses: 2
    functionsReached:
    - zip_file_set_time
    - _zip_u2d_time
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_set_mtime(zip_t *za, zip_uint64_t idx, time_t mtime,
      zip_flags_t flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_replace.c:40,1
    - Dst: _zip_file_replace
      Src: /src/libzip/lib/zip_file_replace.c:44,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - za
    - idx
    - source
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_source_t*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 49
    functionName: zip_file_replace
    functionSourceFile: /src/libzip/lib/zip_file_replace.c
    functionUses: 7
    functionsReached:
    - _zip_file_replace
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_replace(zip_t *za, zip_uint64_t idx, zip_source_t
      *source, zip_flags_t flags)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_file_replace.c:57,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_replace.c:58,1
    - Dst: _zip_name_locate
      Src: /src/libzip/lib/zip_file_replace.c:67,1
    - Dst: _zip_add_entry
      Src: /src/libzip/lib/zip_file_replace.c:72,1
    - Dst: _zip_set_name
      Src: /src/libzip/lib/zip_file_replace.c:79,1
    - Dst: _zip_entry_finalize
      Src: /src/libzip/lib/zip_file_replace.c:81,1
    - Dst: zip_file_extra_field_delete
      Src: /src/libzip/lib/zip_file_replace.c:89,1
    - Dst: _zip_unchange_data
      Src: /src/libzip/lib/zip_file_replace.c:95,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 5
    argNames:
    - za
    - idx
    - name
    - source
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - char*
    - zip_source_t*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 54
    functionDepth: 3
    functionLinenumber: 54
    functionLinenumberEnd: 100
    functionName: _zip_file_replace
    functionSourceFile: /src/libzip/lib/zip_file_replace.c
    functionUses: 3
    functionsReached:
    - _zip_add_entry
    - zip_error_set
    - _zip_set_name
    - zip_file_extra_field_delete
    - _zip_unchange_data
    - _zip_entry_finalize
    - ZIP_IS_RDONLY
    - _zip_name_locate
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_file_replace(zip_t *za, zip_uint64_t idx, const char
      *name, zip_source_t *source, zip_flags_t flags)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_call.c:41,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_call.c:42,1
    - Dst: zip_source_t*::cb::f
      Src: /src/libzip/lib/zip_source_call.c:47,1
    - Dst: zip_source_t*::cb::l
      Src: /src/libzip/lib/zip_source_call.c:50,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_call.c:57,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_call.c:58,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_call.c:61,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - src
    - data
    - length
    - command
    argTypes:
    - zip_source_t*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 67
    functionName: _zip_source_call
    functionSourceFile: /src/libzip/lib/zip_source_call.c
    functionUses: 14
    functionsReached:
    - zip_source_t*::cb::f
    - zip_error_set
    - _zip_source_call
    - ZIP_SOURCE_MAKE_COMMAND_BITMASK
    - zip_source_t*::cb::l
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_source_call(zip_source_t *src, void *data, zip_uint64_t
      length, zip_source_cmd_t command)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_new.c:47,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_new.c:49,1
    - Dst: _zip_hash_new
      Src: /src/libzip/lib/zip_new.c:53,1
    - Dst: free
      Src: /src/libzip/lib/zip_new.c:54,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_new.c:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 1
    argNames:
    - error
    argTypes:
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 73
    functionName: _zip_new
    functionSourceFile: /src/libzip/lib/zip_new.c
    functionUses: 1
    functionsReached:
    - free
    - zip_error_set
    - zip_error_init
    - malloc
    - _zip_hash_new
    linkageType: ''
    returnType: zip_t
    signature: zip_t *_zip_new(zip_error_t *error)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_set_archive_comment.c:43,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_archive_comment.c:44,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_set_archive_comment.c:47,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_archive_comment.c:48,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_archive_comment.c:53,1
    - Dst: _zip_string_new
      Src: /src/libzip/lib/zip_set_archive_comment.c:58,1
    - Dst: _zip_guess_encoding
      Src: /src/libzip/lib/zip_set_archive_comment.c:62,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_archive_comment.c:63,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_archive_comment.c:64,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_archive_comment.c:72,1
    - Dst: _zip_string_equal
      Src: /src/libzip/lib/zip_set_archive_comment.c:75,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_archive_comment.c:76,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 3
    argNames:
    - za
    - comment
    - len
    argTypes:
    - zip_t*
    - char*
    - zip_uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 85
    functionName: zip_set_archive_comment
    functionSourceFile: /src/libzip/lib/zip_set_archive_comment.c
    functionUses: 2
    functionsReached:
    - _zip_guess_encoding
    - _zip_string_free
    - _zip_string_equal
    - zip_error_set
    - _zip_string_new
    - ZIP_WANT_TORRENTZIP
    - ZIP_IS_RDONLY
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_set_archive_comment(zip_t *za, const char *comment,
      zip_uint16_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_name_locate
      Src: /src/libzip/lib/zip_fopen_encrypted.c:41,1
    - Dst: zip_fopen_index_encrypted
      Src: /src/libzip/lib/zip_fopen_encrypted.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - za
    - fname
    - flags
    - password
    argTypes:
    - zip_t*
    - char*
    - zip_flags_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 38
    functionDepth: 3
    functionLinenumber: 38
    functionLinenumberEnd: 46
    functionName: zip_fopen_encrypted
    functionSourceFile: /src/libzip/lib/zip_fopen_encrypted.c
    functionUses: 0
    functionsReached:
    - zip_name_locate
    - zip_fopen_index_encrypted
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_fopen_encrypted(zip_t *za, const char *fname, zip_flags_t
      flags, const char *password)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_CM_ACTUAL
      Src: /src/libzip/lib/zip_source_compress.c:95,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - method
    - compress
    argTypes:
    - zip_int32_t
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 109
    functionName: _zip_get_compression_algorithm
    functionSourceFile: /src/libzip/lib/zip_source_compress.c
    functionUses: 1
    functionsReached:
    - ZIP_CM_ACTUAL
    linkageType: ''
    returnType: zip_compression_algorithm_t
    signature: zip_compression_algorithm_t *_zip_get_compression_algorithm(zip_int32_t
      method, bool compress)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_get_compression_algorithm
      Src: /src/libzip/lib/zip_source_compress.c:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - method
    - compress
    argTypes:
    - zip_int32_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 111
    functionDepth: 2
    functionLinenumber: 111
    functionLinenumberEnd: 116
    functionName: zip_compression_method_supported
    functionSourceFile: /src/libzip/lib/zip_source_compress.c
    functionUses: 2
    functionsReached:
    - _zip_get_compression_algorithm
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_compression_method_supported(zip_int32_t method, int
      compress)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compression_source_new
      Src: /src/libzip/lib/zip_source_compress.c:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - za
    - src
    - method
    - compression_flags
    argTypes:
    - zip_t*
    - zip_source_t*
    - zip_int32_t
    - zip_uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: zip_source_compress
    functionSourceFile: /src/libzip/lib/zip_source_compress.c
    functionUses: 1
    functionsReached:
    - compression_source_new
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_compress(zip_t *za, zip_source_t *src, zip_int32_t
      method, zip_uint32_t compression_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compression_source_new
      Src: /src/libzip/lib/zip_source_compress.c:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - za
    - src
    - method
    argTypes:
    - zip_t*
    - zip_source_t*
    - zip_int32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: zip_source_decompress
    functionSourceFile: /src/libzip/lib/zip_source_compress.c
    functionUses: 2
    functionsReached:
    - compression_source_new
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_decompress(zip_t *za, zip_source_t *src, zip_int32_t
      method)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_compress.c:133,1
    - Dst: _zip_get_compression_algorithm
      Src: /src/libzip/lib/zip_source_compress.c:137,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_compress.c:138,1
    - Dst: context_new
      Src: /src/libzip/lib/zip_source_compress.c:142,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_compress.c:143,1
    - Dst: zip_source_layered
      Src: /src/libzip/lib/zip_source_compress.c:147,1
    - Dst: context_free
      Src: /src/libzip/lib/zip_source_compress.c:148,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 5
    argNames:
    - za
    - src
    - method
    - compress
    - compression_flags
    argTypes:
    - zip_t*
    - zip_source_t*
    - zip_int32_t
    - bool
    - zip_uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 153
    functionName: compression_source_new
    functionSourceFile: /src/libzip/lib/zip_source_compress.c
    functionUses: 2
    functionsReached:
    - context_free
    - zip_error_set
    - zip_source_layered
    - _zip_get_compression_algorithm
    - context_new
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *compression_source_new(zip_t *za, zip_source_t *src,
      zip_int32_t method, bool compress, zip_uint32_t compression_flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_compress.c:159,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_source_compress.c:162,1
    - Dst: struct context*::algorithm::allocate
      Src: /src/libzip/lib/zip_source_compress.c:172,1
    - Dst: ZIP_CM_ACTUAL
      Src: /src/libzip/lib/zip_source_compress.c:172,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_source_compress.c:173,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_compress.c:174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 5
    argNames:
    - method
    - compress
    - compression_flags
    - algorithm
    - check_consistency
    argTypes:
    - zip_int32_t
    - bool
    - zip_uint32_t
    - zip_compression_algorithm_t*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 179
    functionName: context_new
    functionSourceFile: /src/libzip/lib/zip_source_compress.c
    functionUses: 1
    functionsReached:
    - ZIP_CM_ACTUAL
    - free
    - zip_error_init
    - malloc
    - struct context*::algorithm::allocate
    - zip_error_fini
    linkageType: ''
    returnType: struct context
    signature: struct context *context_new(zip_int32_t method, bool compress, zip_uint32_t
      compression_flags, zip_compression_algorithm_t *algorithm, bool check_consistency)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: struct context*::algorithm::deallocate
      Src: /src/libzip/lib/zip_source_compress.c:187,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_source_compress.c:188,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_compress.c:190,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - struct context*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 191
    functionName: context_free
    functionSourceFile: /src/libzip/lib/zip_source_compress.c
    functionUses: 1
    functionsReached:
    - free
    - struct context*::algorithm::deallocate
    - zip_error_fini
    linkageType: ''
    returnType: void
    signature: void context_free(struct context *ctx)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_source_compress.c:201,1
    - Dst: struct context*::algorithm::process
      Src: /src/libzip/lib/zip_source_compress.c:214,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_compress.c:225,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_compress.c:227,1
    - Dst: struct context*::algorithm::end_of_input
      Src: /src/libzip/lib/zip_source_compress.c:233,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_compress.c:238,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_compress.c:246,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_source_compress.c:253,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_compress.c:269,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_compress.c:270,1
    - Dst: struct context*::algorithm::end_of_input
      Src: /src/libzip/lib/zip_source_compress.c:276,1
    - Dst: struct context*::algorithm::input
      Src: /src/libzip/lib/zip_source_compress.c:290,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_source_compress.c:296,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_compress.c:297,1
    - Dst: zip_error_code_zip
      Src: /src/libzip/lib/zip_source_compress.c:310,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 89
    argCount: 4
    argNames:
    - src
    - ctx
    - data
    - len
    argTypes:
    - zip_source_t*
    - struct context*
    - void*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 194
    functionDepth: 2
    functionLinenumber: 194
    functionLinenumberEnd: 311
    functionName: compress_read
    functionSourceFile: /src/libzip/lib/zip_source_compress.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - struct context*::algorithm::process
    - zip_source_read
    - zip_error_set
    - struct context*::algorithm::input
    - zip_error_code_zip
    - memcpy_s
    - struct context*::algorithm::end_of_input
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t compress_read(zip_source_t *src, struct context *ctx, void
      *data, zip_uint64_t len)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_source_compress.c:330,1
    - Dst: zip_source_get_file_attributes
      Src: /src/libzip/lib/zip_source_compress.c:330,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_compress.c:331,1
    - Dst: struct context*::algorithm::start
      Src: /src/libzip/lib/zip_source_compress.c:335,1
    - Dst: compress_read
      Src: /src/libzip/lib/zip_source_compress.c:343,1
    - Dst: struct context*::algorithm::end
      Src: /src/libzip/lib/zip_source_compress.c:346,1
    - Dst: ZIP_CM_ACTUAL
      Src: /src/libzip/lib/zip_source_compress.c:358,1
    - Dst: zip_error_to_data
      Src: /src/libzip/lib/zip_source_compress.c:379,1
    - Dst: context_free
      Src: /src/libzip/lib/zip_source_compress.c:382,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_compress.c:389,1
    - Dst: struct context*::algorithm::general_purpose_bit_flags
      Src: /src/libzip/lib/zip_source_compress.c:396,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/lib/zip_source_compress.c:402,1
    - Dst: zip_source_pass_to_lower_layer
      Src: /src/libzip/lib/zip_source_compress.c:405,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 67
    argCount: 5
    argNames:
    - src
    - ud
    - data
    - len
    - cmd
    argTypes:
    - zip_source_t*
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 314
    functionDepth: 3
    functionLinenumber: 314
    functionLinenumberEnd: 407
    functionName: compress_callback
    functionSourceFile: /src/libzip/lib/zip_source_compress.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - compress_read
    - ZIP_CM_ACTUAL
    - context_free
    - zip_error_set
    - struct context*::algorithm::general_purpose_bit_flags
    - struct context*::algorithm::end
    - zip_error_to_data
    - zip_source_make_command_bitmap
    - zip_source_pass_to_lower_layer
    - zip_source_get_file_attributes
    - zip_source_stat
    - struct context*::algorithm::start
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t compress_callback(zip_source_t *src, void *ud, void *data,
      zip_uint64_t len, zip_source_cmd_t cmd)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_stat.c:43,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_stat.c:48,1
    - Dst: zip_stat_init
      Src: /src/libzip/lib/zip_source_stat.c:51,1
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_stat.c:53,1
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_source_stat.c:54,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_stat.c:55,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_stat.c:60,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - src
    - st
    argTypes:
    - zip_source_t*
    - zip_stat_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 65
    functionName: zip_source_stat
    functionSourceFile: /src/libzip/lib/zip_source_stat.c
    functionUses: 8
    functionsReached:
    - zip_error_set_from_source
    - ZIP_SOURCE_IS_LAYERED
    - zip_error_set
    - _zip_source_call
    - zip_stat_init
    - zip_source_stat
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_stat(zip_source_t *src, zip_stat_t *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ZSTD_compressBound
      Src: /src/libzip/lib/zip_algorithm_zstd.c:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - uncompressed_size
    argTypes:
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: maximum_compressed_size
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 1
    functionsReached:
    - ZSTD_compressBound
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t maximum_compressed_size(zip_uint64_t uncompressed_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_algorithm_zstd.c:59,1
    - Dst: ZSTD_minCLevel
      Src: /src/libzip/lib/zip_algorithm_zstd.c:64,1
    - Dst: ZSTD_maxCLevel
      Src: /src/libzip/lib/zip_algorithm_zstd.c:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 3
    argNames:
    - compress
    - compression_flags
    - error
    argTypes:
    - bool
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 82
    functionName: allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 6
    functionsReached:
    - malloc
    - ZSTD_maxCLevel
    - ZSTD_minCLevel
    linkageType: ''
    returnType: void
    signature: void *allocate(bool compress, zip_uint32_t compression_flags, zip_error_t
      *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: allocate
      Src: /src/libzip/lib/zip_algorithm_zstd.c:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - method
    - compression_flags
    - error
    argTypes:
    - zip_uint16_t
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionName: compress_allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 0
    functionsReached:
    - allocate
    linkageType: ''
    returnType: void
    signature: void *compress_allocate(zip_uint16_t method, zip_uint32_t compression_flags,
      zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: allocate
      Src: /src/libzip/lib/zip_algorithm_zstd.c:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - method
    - compression_flags
    - error
    argTypes:
    - zip_uint16_t
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: decompress_allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 0
    functionsReached:
    - allocate
    linkageType: ''
    returnType: void
    signature: void *decompress_allocate(zip_uint16_t method, zip_uint32_t compression_flags,
      zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/lib/zip_algorithm_zstd.c:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: deallocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 1
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void deallocate(void *ud)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: general_purpose_bit_flags
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: zip_uint16_t
    signature: zip_uint16_t general_purpose_bit_flags(void *ud)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - ret
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 129
    functionName: map_error
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int map_error(size_t ret)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ZSTD_createCStream
      Src: /src/libzip/lib/zip_algorithm_zstd.c:146,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_zstd.c:148,1
    - Dst: ZSTD_initCStream
      Src: /src/libzip/lib/zip_algorithm_zstd.c:151,1
    - Dst: ZSTD_isError
      Src: /src/libzip/lib/zip_algorithm_zstd.c:152,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_zstd.c:153,1
    - Dst: map_error
      Src: /src/libzip/lib/zip_algorithm_zstd.c:153,1
    - Dst: ZSTD_createDStream
      Src: /src/libzip/lib/zip_algorithm_zstd.c:158,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_zstd.c:160,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 3
    argNames:
    - ud
    - st
    - attributes
    argTypes:
    - void*
    - zip_stat_t*
    - zip_file_attributes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 166
    functionName: start
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 4
    functionsReached:
    - zip_error_set
    - ZSTD_createCStream
    - ZSTD_initCStream
    - ZSTD_createDStream
    - map_error
    - ZSTD_isError
    linkageType: ''
    returnType: bool
    signature: bool start(void *ud, zip_stat_t *st, zip_file_attributes_t *attributes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ZSTD_freeCStream
      Src: /src/libzip/lib/zip_algorithm_zstd.c:174,1
    - Dst: ZSTD_freeDStream
      Src: /src/libzip/lib/zip_algorithm_zstd.c:178,1
    - Dst: ZSTD_isError
      Src: /src/libzip/lib/zip_algorithm_zstd.c:182,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_zstd.c:183,1
    - Dst: map_error
      Src: /src/libzip/lib/zip_algorithm_zstd.c:183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 188
    functionName: end
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 8
    functionsReached:
    - zip_error_set
    - ZSTD_freeCStream
    - ZSTD_freeDStream
    - map_error
    - ZSTD_isError
    linkageType: ''
    returnType: bool
    signature: bool end(void *ud)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_zstd.c:194,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ud
    - data
    - length
    argTypes:
    - void*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 201
    functionName: input
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 1
    functionsReached:
    - zip_error_set
    linkageType: ''
    returnType: bool
    signature: bool input(void *ud, zip_uint8_t *data, zip_uint64_t length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 209
    functionName: end_of_input
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool end_of_input(void *ud)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_algorithm_zstd.c:224,1
    - Dst: ZSTD_endStream
      Src: /src/libzip/lib/zip_algorithm_zstd.c:228,1
    - Dst: ZSTD_compressStream
      Src: /src/libzip/lib/zip_algorithm_zstd.c:235,1
    - Dst: ZSTD_decompressStream
      Src: /src/libzip/lib/zip_algorithm_zstd.c:239,1
    - Dst: ZSTD_isError
      Src: /src/libzip/lib/zip_algorithm_zstd.c:241,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_zstd.c:242,1
    - Dst: map_error
      Src: /src/libzip/lib/zip_algorithm_zstd.c:242,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 3
    argNames:
    - ud
    - data
    - length
    argTypes:
    - void*
    - zip_uint8_t*
    - zip_uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 252
    functionName: process
    functionSourceFile: /src/libzip/lib/zip_algorithm_zstd.c
    functionUses: 1
    functionsReached:
    - ZSTD_endStream
    - ZIP_MIN
    - zip_error_set
    - map_error
    - ZSTD_decompressStream
    - ZSTD_compressStream
    - ZSTD_isError
    linkageType: ''
    returnType: zip_compression_status_t
    signature: zip_compression_status_t process(void *ud, zip_uint8_t *data, zip_uint64_t
      *length)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:42,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:47,1
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_extra_field_api.c:51,1
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_extra_field_api.c:55,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:56,1
    - Dst: _zip_file_extra_field_prepare_for_change
      Src: /src/libzip/lib/zip_extra_field_api.c:60,1
    - Dst: _zip_ef_delete_by_id
      Src: /src/libzip/lib/zip_extra_field_api.c:66,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - za
    - idx
    - ef_idx
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_uint16_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 68
    functionName: zip_file_extra_field_delete
    functionSourceFile: /src/libzip/lib/zip_extra_field_api.c
    functionUses: 2
    functionsReached:
    - zip_error_set
    - _zip_file_extra_field_prepare_for_change
    - _zip_ef_delete_by_id
    - _zip_get_dirent
    - ZIP_IS_RDONLY
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_extra_field_delete(zip_t *za, zip_uint64_t idx,
      zip_uint16_t ef_idx, zip_flags_t flags)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:75,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:80,1
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_extra_field_api.c:84,1
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_extra_field_api.c:88,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:89,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_extra_field_api.c:92,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:93,1
    - Dst: _zip_file_extra_field_prepare_for_change
      Src: /src/libzip/lib/zip_extra_field_api.c:97,1
    - Dst: _zip_ef_delete_by_id
      Src: /src/libzip/lib/zip_extra_field_api.c:103,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 5
    argNames:
    - za
    - idx
    - ef_id
    - ef_idx
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_uint16_t
    - zip_uint16_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 105
    functionName: zip_file_extra_field_delete_by_id
    functionSourceFile: /src/libzip/lib/zip_extra_field_api.c
    functionUses: 1
    functionsReached:
    - zip_error_set
    - _zip_file_extra_field_prepare_for_change
    - _zip_ef_delete_by_id
    - _zip_get_dirent
    - ZIP_WANT_TORRENTZIP
    - ZIP_IS_RDONLY
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_extra_field_delete_by_id(zip_t *za, zip_uint64_t
      idx, zip_uint16_t ef_id, zip_uint16_t ef_idx, zip_flags_t flags)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:116,1
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_extra_field_api.c:120,1
    - Dst: _zip_read_local_ef
      Src: /src/libzip/lib/zip_extra_field_api.c:125,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:153,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 155
    functionName: zip_uint8_t *zip_file_extra_field_get(zip_t *za, zip_uint64_t idx,
      zip_uint16_t ef_idx, zip_uint16_t *idp, zip_uint16_t *lenp, zip_flags_t flags)
    functionSourceFile: /src/libzip/lib/zip_extra_field_api.c
    functionUses: 0
    functionsReached:
    - _zip_read_local_ef
    - zip_error_set
    - _zip_get_dirent
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_uint8_t *zip_file_extra_field_get(zip_t *za, zip_uint64_t
      idx, zip_uint16_t ef_idx, zip_uint16_t *idp, zip_uint16_t *lenp, zip_flags_t
      flags)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:162,1
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_extra_field_api.c:166,1
    - Dst: _zip_read_local_ef
      Src: /src/libzip/lib/zip_extra_field_api.c:171,1
    - Dst: _zip_ef_get_by_id
      Src: /src/libzip/lib/zip_extra_field_api.c:176,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 158
    functionDepth: 2
    functionLinenumber: 158
    functionLinenumberEnd: 177
    functionName: zip_uint8_t *zip_file_extra_field_get_by_id(zip_t *za, zip_uint64_t
      idx, zip_uint16_t ef_id, zip_uint16_t ef_idx, zip_uint16_t *lenp, zip_flags_t
      flags)
    functionSourceFile: /src/libzip/lib/zip_extra_field_api.c
    functionUses: 0
    functionsReached:
    - _zip_ef_get_by_id
    - _zip_read_local_ef
    - zip_error_set
    - _zip_get_dirent
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_uint8_t *zip_file_extra_field_get_by_id(zip_t *za, zip_uint64_t
      idx, zip_uint16_t ef_id, zip_uint16_t ef_idx, zip_uint16_t *lenp, zip_flags_t
      flags)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:186,1
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_extra_field_api.c:190,1
    - Dst: _zip_read_local_ef
      Src: /src/libzip/lib/zip_extra_field_api.c:195,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - za
    - idx
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 208
    functionName: zip_int16_t::zip_file_extra_fields_count
    functionSourceFile: /src/libzip/lib/zip_extra_field_api.c
    functionUses: 0
    functionsReached:
    - _zip_read_local_ef
    - zip_error_set
    - _zip_get_dirent
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int16_t zip_file_extra_fields_count(zip_t *za, zip_uint64_t
      idx, zip_flags_t flags)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:217,1
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_extra_field_api.c:221,1
    - Dst: _zip_read_local_ef
      Src: /src/libzip/lib/zip_extra_field_api.c:226,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 4
    argNames:
    - za
    - idx
    - ef_id
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_uint16_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 211
    functionDepth: 2
    functionLinenumber: 211
    functionLinenumberEnd: 239
    functionName: zip_int16_t::zip_file_extra_fields_count_by_id
    functionSourceFile: /src/libzip/lib/zip_extra_field_api.c
    functionUses: 0
    functionsReached:
    - _zip_read_local_ef
    - zip_error_set
    - _zip_get_dirent
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int16_t zip_file_extra_fields_count_by_id(zip_t *za,
      zip_uint64_t idx, zip_uint16_t ef_id, zip_flags_t flags)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:249,1
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_extra_field_api.c:253,1
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_extra_field_api.c:257,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:258,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_extra_field_api.c:261,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:262,1
    - Dst: ZIP_EF_IS_INTERNAL
      Src: /src/libzip/lib/zip_extra_field_api.c:266,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:267,1
    - Dst: _zip_file_extra_field_prepare_for_change
      Src: /src/libzip/lib/zip_extra_field_api.c:271,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:294,1
    - Dst: _zip_ef_size
      Src: /src/libzip/lib/zip_extra_field_api.c:299,1
    - Dst: _zip_ef_size
      Src: /src/libzip/lib/zip_extra_field_api.c:305,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:318,1
    - Dst: _zip_ef_new
      Src: /src/libzip/lib/zip_extra_field_api.c:322,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:323,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_extra_field_api.c:331,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 88
    argCount: 7
    argNames:
    - za
    - idx
    - ef_id
    - ef_idx
    - data
    - len
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_uint16_t
    - zip_uint16_t
    - zip_uint8_t*
    - zip_uint16_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 242
    functionDepth: 2
    functionLinenumber: 242
    functionLinenumberEnd: 354
    functionName: zip_file_extra_field_set
    functionSourceFile: /src/libzip/lib/zip_extra_field_api.c
    functionUses: 3
    functionsReached:
    - _zip_ef_free
    - zip_error_set
    - _zip_file_extra_field_prepare_for_change
    - _zip_ef_new
    - _zip_get_dirent
    - ZIP_WANT_TORRENTZIP
    - ZIP_EF_IS_INTERNAL
    - _zip_ef_size
    - ZIP_IS_RDONLY
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_extra_field_set(zip_t *za, zip_uint64_t idx, zip_uint16_t
      ef_id, zip_uint16_t ef_idx, const zip_uint8_t *data, zip_uint16_t len, zip_flags_t
      flags)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:361,1
    - Dst: _zip_read_local_ef
      Src: /src/libzip/lib/zip_extra_field_api.c:372,1
    - Dst: _zip_dirent_clone
      Src: /src/libzip/lib/zip_extra_field_api.c:378,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field_api.c:379,1
    - Dst: _zip_ef_clone
      Src: /src/libzip/lib/zip_extra_field_api.c:385,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 2
    argNames:
    - za
    - idx
    argTypes:
    - zip_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 357
    functionDepth: 2
    functionLinenumber: 357
    functionLinenumberEnd: 392
    functionName: _zip_file_extra_field_prepare_for_change
    functionSourceFile: /src/libzip/lib/zip_extra_field_api.c
    functionUses: 3
    functionsReached:
    - _zip_ef_clone
    - _zip_read_local_ef
    - _zip_dirent_clone
    - zip_error_set
    linkageType: ''
    returnType: int
    signature: int _zip_file_extra_field_prepare_for_change(zip_t *za, zip_uint64_t
      idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_fopen_index_encrypted
      Src: /src/libzip/lib/zip_fopen_index.c:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - za
    - index
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 3
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: zip_fopen_index
    functionSourceFile: /src/libzip/lib/zip_fopen_index.c
    functionUses: 5
    functionsReached:
    - zip_fopen_index_encrypted
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_fopen_index(zip_t *za, zip_uint64_t index, zip_flags_t
      flags)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_fread.c:50,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_fread.c:58,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_fread.c:59,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - zf
    - outbuf
    - toread
    argTypes:
    - zip_file_t*
    - void*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 64
    functionName: zip_int64_t::zip_fread
    functionSourceFile: /src/libzip/lib/zip_fread.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - zip_source_read
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_fread(zip_file_t *zf, void *outbuf, zip_uint64_t
      toread)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_crc.c:59,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_crc.c:63,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_crc.c:64,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_source_crc.c:68,1
    - Dst: crc32
      Src: /src/libzip/lib/zip_source_crc.c:72,1
    - Dst: zip_source_layered_create
      Src: /src/libzip/lib/zip_source_crc.c:75,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_crc.c:77,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 3
    argNames:
    - src
    - validate
    - error
    argTypes:
    - zip_source_t*
    - int
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 81
    functionName: zip_source_crc_create
    functionSourceFile: /src/libzip/lib/zip_source_crc.c
    functionUses: 3
    functionsReached:
    - free
    - zip_error_set
    - zip_error_init
    - crc32
    - malloc
    - zip_source_layered_create
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_crc_create(zip_source_t *src, int validate,
      zip_error_t *error)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_crc.c:96,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_crc.c:97,1
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_source_crc.c:109,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_crc.c:110,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_crc.c:115,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_crc.c:120,1
    - Dst: MAKE_DETAIL_WITH_INDEX
      Src: /src/libzip/lib/zip_source_crc.c:120,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_source_crc.c:130,1
    - Dst: crc32
      Src: /src/libzip/lib/zip_source_crc.c:132,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_crc.c:149,1
    - Dst: zip_error_to_data
      Src: /src/libzip/lib/zip_source_crc.c:165,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_crc.c:168,1
    - Dst: zip_source_supports
      Src: /src/libzip/lib/zip_source_crc.c:172,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_crc.c:175,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/lib/zip_source_crc.c:179,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/lib/zip_source_crc.c:180,1
    - Dst: ZIP_SOURCE_GET_ARGS
      Src: /src/libzip/lib/zip_source_crc.c:186,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_source_crc.c:191,1
    - Dst: zip_source_tell
      Src: /src/libzip/lib/zip_source_crc.c:191,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_crc.c:192,1
    - Dst: zip_source_pass_to_lower_layer
      Src: /src/libzip/lib/zip_source_crc.c:205,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 88
    argCount: 5
    argNames:
    - src
    - _ctx
    - data
    - len
    - cmd
    argTypes:
    - zip_source_t*
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 84
    functionDepth: 3
    functionLinenumber: 84
    functionLinenumberEnd: 207
    functionName: crc_read
    functionSourceFile: /src/libzip/lib/zip_source_crc.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - ZIP_MIN
    - free
    - zip_source_read
    - zip_error_set
    - zip_error_to_data
    - crc32
    - zip_source_supports
    - zip_source_make_command_bitmap
    - zip_source_tell
    - zip_source_pass_to_lower_layer
    - MAKE_DETAIL_WITH_INDEX
    - ZIP_SOURCE_GET_ARGS
    - zip_source_stat
    - zip_source_seek
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t crc_read(zip_source_t *src, void *_ctx, void *data, zip_uint64_t
      len, zip_source_cmd_t cmd)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:67,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:71,1
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:75,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:76,1
    - Dst: SALT_LENGTH
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:80,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:83,1
    - Dst: winzip_aes_new
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:87,1
    - Dst: zip_source_layered
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:93,1
    - Dst: winzip_aes_free
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:94,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 5
    argNames:
    - za
    - src
    - encryption_method
    - flags
    - password
    argTypes:
    - zip_t*
    - zip_source_t*
    - zip_uint16_t
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 60
    functionDepth: 3
    functionLinenumber: 60
    functionLinenumberEnd: 99
    functionName: zip_source_winzip_aes_decode
    functionSourceFile: /src/libzip/lib/zip_source_winzip_aes_decode.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - zip_error_set
    - winzip_aes_new
    - winzip_aes_free
    - zip_source_layered
    - zip_source_stat
    - SALT_LENGTH
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_winzip_aes_decode(zip_t *za, zip_source_t
      *src, zip_uint16_t encryption_method, int flags, const char *password)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SALT_LENGTH
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:108,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:109,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:110,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:115,1
    - Dst: _zip_winzip_aes_new
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:119,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:119,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:122,1
    - Dst: SALT_LENGTH
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:122,1
    - Dst: _zip_winzip_aes_free
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:123,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:125,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - src
    - ctx
    argTypes:
    - zip_source_t*
    - struct winzip_aes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 129
    functionName: decrypt_header
    functionSourceFile: /src/libzip/lib/zip_source_winzip_aes_decode.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - zip_source_read
    - zip_error_set
    - strlen
    - _zip_winzip_aes_new
    - _zip_winzip_aes_free
    - SALT_LENGTH
    - memcmp
    linkageType: ''
    returnType: int
    signature: int decrypt_header(zip_source_t *src, struct winzip_aes *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:134,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:135,1
    - Dst: _zip_winzip_aes_finish
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:139,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:140,1
    - Dst: _zip_winzip_aes_free
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:143,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:146,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:147,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - src
    - ctx
    argTypes:
    - zip_source_t*
    - struct winzip_aes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 152
    functionName: verify_hmac
    functionSourceFile: /src/libzip/lib/zip_source_winzip_aes_decode.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - zip_source_read
    - zip_error_set
    - _zip_winzip_aes_free
    - _zip_winzip_aes_finish
    - memcmp
    linkageType: ''
    returnType: bool
    signature: bool verify_hmac(zip_source_t *src, struct winzip_aes *ctx)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: decrypt_header
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:163,1
    - Dst: verify_hmac
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:175,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:181,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:182,1
    - Dst: _zip_winzip_aes_decrypt
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:187,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:188,1
    - Dst: SALT_LENGTH
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:205,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:206,1
    - Dst: SALT_LENGTH
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:209,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:216,1
    - Dst: zip_error_to_data
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:219,1
    - Dst: winzip_aes_free
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:222,1
    - Dst: zip_source_pass_to_lower_layer
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:226,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 54
    argCount: 5
    argNames:
    - src
    - ud
    - data
    - len
    - cmd
    argTypes:
    - zip_source_t*
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 155
    functionDepth: 3
    functionLinenumber: 155
    functionLinenumberEnd: 228
    functionName: winzip_aes_decrypt
    functionSourceFile: /src/libzip/lib/zip_source_winzip_aes_decode.c
    functionUses: 1
    functionsReached:
    - zip_error_set_from_source
    - zip_source_read
    - zip_error_set
    - zip_source_make_command_bitmap
    - zip_error_to_data
    - zip_source_pass_to_lower_layer
    - verify_hmac
    - _zip_winzip_aes_decrypt
    - decrypt_header
    - winzip_aes_free
    - SALT_LENGTH
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t winzip_aes_decrypt(zip_source_t *src, void *ud, void *data,
      zip_uint64_t len, zip_source_cmd_t cmd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:236,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:236,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:237,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:238,1
    - Dst: _zip_winzip_aes_free
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:239,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - struct winzip_aes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 231
    functionDepth: 2
    functionLinenumber: 231
    functionLinenumberEnd: 241
    functionName: winzip_aes_free
    functionSourceFile: /src/libzip/lib/zip_source_winzip_aes_decode.c
    functionUses: 9
    functionsReached:
    - free
    - strlen
    - _zip_winzip_aes_free
    - _zip_crypto_clear
    - zip_error_fini
    linkageType: ''
    returnType: void
    signature: void winzip_aes_free(struct winzip_aes *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:247,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:248,1
    - Dst: strdup
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:252,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:253,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:254,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_source_winzip_aes_decode.c:261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - encryption_method
    - password
    - error
    argTypes:
    - zip_uint16_t
    - char*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 244
    functionDepth: 1
    functionLinenumber: 244
    functionLinenumberEnd: 264
    functionName: winzip_aes_new
    functionSourceFile: /src/libzip/lib/zip_source_winzip_aes_decode.c
    functionUses: 4
    functionsReached:
    - free
    - zip_error_set
    - zip_error_init
    - malloc
    - strdup
    linkageType: ''
    returnType: struct winzip_aes
    signature: struct winzip_aes *winzip_aes_new(zip_uint16_t encryption_method, const
      char *password, zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ze
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: zip_error_get_sys_type
    functionSourceFile: /src/libzip/lib/zip_error_get_sys_type.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_get_sys_type(int ze)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _zip_string_get
      Src: /src/libzip/lib/zip_get_archive_comment.c:52,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - za
    - lenp
    - flags
    argTypes:
    - zip_t*
    - int*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 61
    functionName: zip_get_archive_comment
    functionSourceFile: /src/libzip/lib/zip_get_archive_comment.c
    functionUses: 3
    functionsReached:
    - _zip_string_get
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_get_archive_comment(zip_t *za, int *lenp, zip_flags_t
      flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: crc32
      Src: /src/libzip/lib/zip_string.c:44,1
    - Dst: crc32
      Src: /src/libzip/lib/zip_string.c:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - zip_string_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 51
    functionName: _zip_string_crc32
    functionSourceFile: /src/libzip/lib/zip_string.c
    functionUses: 2
    functionsReached:
    - crc32
    linkageType: ''
    returnType: zip_uint32_t
    signature: zip_uint32_t _zip_string_crc32(const zip_string_t *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/libzip/lib/zip_string.c:65,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - zip_string_t*
    - zip_string_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 66
    functionName: _zip_string_equal
    functionSourceFile: /src/libzip/lib/zip_string.c
    functionUses: 4
    functionsReached:
    - memcmp
    linkageType: ''
    returnType: int
    signature: int _zip_string_equal(const zip_string_t *a, const zip_string_t *b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/lib/zip_string.c:74,1
    - Dst: free
      Src: /src/libzip/lib/zip_string.c:75,1
    - Dst: free
      Src: /src/libzip/lib/zip_string.c:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - zip_string_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionName: _zip_string_free
    functionSourceFile: /src/libzip/lib/zip_string.c
    functionUses: 9
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void _zip_string_free(zip_string_t *s)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: _zip_guess_encoding
      Src: /src/libzip/lib/zip_string.c:94,1
    - Dst: _zip_cp437_to_utf8
      Src: /src/libzip/lib/zip_string.c:99,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 4
    argNames:
    - string
    - lenp
    - flags
    - error
    argTypes:
    - zip_string_t*
    - zip_uint32_t*
    - zip_flags_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 114
    functionName: _zip_string_get
    functionSourceFile: /src/libzip/lib/zip_string.c
    functionUses: 5
    functionsReached:
    - _zip_guess_encoding
    - _zip_cp437_to_utf8
    linkageType: ''
    returnType: zip_uint8_t
    signature: zip_uint8_t *_zip_string_get(zip_string_t *string, zip_uint32_t *lenp,
      zip_flags_t flags, zip_error_t *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - string
    argTypes:
    - zip_string_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 128
    functionName: _zip_string_is_ascii
    functionSourceFile: /src/libzip/lib/zip_string.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool _zip_string_is_ascii(const zip_string_t *string)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - zip_string_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 137
    functionName: _zip_string_length
    functionSourceFile: /src/libzip/lib/zip_string.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: zip_uint16_t
    signature: zip_uint16_t _zip_string_length(const zip_string_t *s)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_string.c:159,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_string.c:163,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_string.c:164,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_string.c:168,1
    - Dst: free
      Src: /src/libzip/lib/zip_string.c:169,1
    - Dst: memcpy_s
      Src: /src/libzip/lib/zip_string.c:173,1
    - Dst: _zip_guess_encoding
      Src: /src/libzip/lib/zip_string.c:181,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_string.c:182,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_string.c:183,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 4
    argNames:
    - raw
    - length
    - flags
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    - zip_flags_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 189
    functionName: _zip_string_new
    functionSourceFile: /src/libzip/lib/zip_string.c
    functionUses: 6
    functionsReached:
    - _zip_guess_encoding
    - free
    - _zip_string_free
    - zip_error_set
    - malloc
    - memcpy_s
    linkageType: ''
    returnType: zip_string_t
    signature: zip_string_t *_zip_string_new(const zip_uint8_t *raw, zip_uint16_t
      length, zip_flags_t flags, zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_write
      Src: /src/libzip/lib/zip_string.c:197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - za
    - s
    argTypes:
    - zip_t*
    - zip_string_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 192
    functionDepth: 3
    functionLinenumber: 192
    functionLinenumberEnd: 198
    functionName: _zip_string_write
    functionSourceFile: /src/libzip/lib/zip_string.c
    functionUses: 1
    functionsReached:
    - _zip_write
    linkageType: ''
    returnType: int
    signature: int _zip_string_write(zip_t *za, const zip_string_t *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: zip_source_supports
    functionSourceFile: /src/libzip/lib/zip_source_supports.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t zip_source_supports(zip_source_t *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_supports
      Src: /src/libzip/lib/zip_source_supports.c:45,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_supports.c:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: zip_source_supports_reopen
    functionSourceFile: /src/libzip/lib/zip_source_supports.c
    functionUses: 1
    functionsReached:
    - ZIP_SOURCE_MAKE_COMMAND_BITMASK
    - zip_source_supports
    linkageType: ''
    returnType: bool
    signature: bool zip_source_supports_reopen(zip_source_t *src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_supports.c:52,1
    - Dst: va_start
      Src: /src/libzip/lib/zip_source_supports.c:55,1
    - Dst: va_arg
      Src: /src/libzip/lib/zip_source_supports.c:57,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_supports.c:61,1
    - Dst: va_end
      Src: /src/libzip/lib/zip_source_supports.c:63,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - cmd0
    argTypes:
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 66
    functionName: zip_int64_t::zip_source_make_command_bitmap
    functionSourceFile: /src/libzip/lib/zip_source_supports.c
    functionUses: 0
    functionsReached:
    - ZIP_SOURCE_MAKE_COMMAND_BITMASK
    - va_arg
    - va_start
    - va_end
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_source_make_command_bitmap(zip_source_cmd_t
      cmd0, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_CHECK_SUPPORTED
      Src: /src/libzip/lib/zip_source_supports.c:70,1
    - Dst: zip_source_supports
      Src: /src/libzip/lib/zip_source_supports.c:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: zip_source_is_seekable
    functionSourceFile: /src/libzip/lib/zip_source_supports.c
    functionUses: 1
    functionsReached:
    - zip_source_supports
    - ZIP_SOURCE_CHECK_SUPPORTED
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_is_seekable(zip_source_t *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - hmac
    - ','
    - data
    - ','
    - length
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 58
    functionName: _zip_crypto_hmac
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_hmac(hmac, data, length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - hmac
    - ','
    - data
    - ','
    - length
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: _zip_crypto_hmac
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_hmac(hmac, data, length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - key
    - ','
    - key_length
    - ','
    - salt
    - ','
    - salt_length
    - ','
    - iterations
    - ','
    - output
    - ','
    - output_length
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: _zip_crypto_pbkdf2
    functionSourceFile: /src/libzip/lib/zip_crypto_openssl.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_pbkdf2(key, key_length, salt, salt_length, iterations,
      output, output_length)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_OPEN_READING
      Src: /src/libzip/lib/zip_source_read.c:45,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_read.c:46,1
    - Dst: _zip_source_eof
      Src: /src/libzip/lib/zip_source_read.c:54,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_read.c:64,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 3
    argNames:
    - src
    - data
    - len
    argTypes:
    - zip_source_t*
    - void*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 89
    functionName: zip_source_read
    functionSourceFile: /src/libzip/lib/zip_source_read.c
    functionUses: 18
    functionsReached:
    - ZIP_SOURCE_IS_OPEN_READING
    - _zip_source_eof
    - zip_error_set
    - _zip_source_call
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t zip_source_read(zip_source_t *src, void *data, zip_uint64_t
      len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: _zip_source_eof
    functionSourceFile: /src/libzip/lib/zip_source_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool _zip_source_eof(zip_source_t *src)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: CloseHandle
      Src: /src/libzip/lib/zip_source_file_win32_named.c:69,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_named.c:70,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32_named.c:70,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32_named.c:70,1
    - Dst: zip_win32_file_operations_t*::get_file_attributes
      Src: /src/libzip/lib/zip_source_file_win32_named.c:74,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_named.c:76,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32_named.c:76,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32_named.c:76,1
    - Dst: zip_win32_file_operations_t*::set_file_attributes
      Src: /src/libzip/lib/zip_source_file_win32_named.c:81,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_named.c:82,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32_named.c:82,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32_named.c:82,1
    - Dst: zip_win32_file_operations_t*::move_file
      Src: /src/libzip/lib/zip_source_file_win32_named.c:87,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_named.c:88,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32_named.c:88,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32_named.c:88,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 93
    functionName: _zip_win32_named_op_commit_write
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_named.c
    functionUses: 0
    functionsReached:
    - GetLastError
    - zip_error_set
    - CloseHandle
    - _zip_win32_error_to_errno
    - zip_win32_file_operations_t*::get_file_attributes
    - zip_win32_file_operations_t*::set_file_attributes
    - zip_win32_file_operations_t*::move_file
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_win32_named_op_commit_write(zip_source_file_context_t
      *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GetFileType
      Src: /src/libzip/lib/zip_source_file_win32_named.c:109,1
    - Dst: GetSecurityInfo
      Src: /src/libzip/lib/zip_source_file_win32_named.c:110,1
    - Dst: GetTickCount
      Src: /src/libzip/lib/zip_source_file_win32_named.c:120,1
    - Dst: GetTickCount64
      Src: /src/libzip/lib/zip_source_file_win32_named.c:122,1
    - Dst: zip_win32_file_operations_t*::allocate_tempname
      Src: /src/libzip/lib/zip_source_file_win32_named.c:125,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_named.c:126,1
    - Dst: zip_win32_file_operations_t*::make_tempname
      Src: /src/libzip/lib/zip_source_file_win32_named.c:131,1
    - Dst: win32_named_open
      Src: /src/libzip/lib/zip_source_file_win32_named.c:133,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32_named.c:134,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_file_win32_named.c:140,1
    - Dst: LocalFree
      Src: /src/libzip/lib/zip_source_file_win32_named.c:141,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_named.c:142,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32_named.c:142,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32_named.c:142,1
    - Dst: LocalFree
      Src: /src/libzip/lib/zip_source_file_win32_named.c:146,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 151
    functionName: _zip_win32_named_op_create_temp_output
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_named.c
    functionUses: 0
    functionsReached:
    - GetSecurityInfo
    - GetLastError
    - free
    - zip_win32_file_operations_t*::allocate_tempname
    - zip_error_set
    - _zip_win32_error_to_errno
    - LocalFree
    - GetTickCount64
    - win32_named_open
    - zip_win32_file_operations_t*::make_tempname
    - GetTickCount
    - GetFileType
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_win32_named_op_create_temp_output(zip_source_file_context_t
      *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: win32_named_open
      Src: /src/libzip/lib/zip_source_file_win32_named.c:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 163
    functionName: _zip_win32_named_op_open
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_named.c
    functionUses: 0
    functionsReached:
    - win32_named_open
    linkageType: ''
    returnType: bool
    signature: bool _zip_win32_named_op_open(zip_source_file_context_t *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_win32_file_operations_t*::delete_file
      Src: /src/libzip/lib/zip_source_file_win32_named.c:169,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_named.c:170,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32_named.c:170,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32_named.c:170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 175
    functionName: _zip_win32_named_op_remove
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_named.c
    functionUses: 0
    functionsReached:
    - zip_win32_file_operations_t*::delete_file
    - _zip_win32_error_to_errno
    - zip_error_set
    - GetLastError
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_win32_named_op_remove(zip_source_file_context_t *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CloseHandle
      Src: /src/libzip/lib/zip_source_file_win32_named.c:182,1
    - Dst: zip_win32_file_operations_t*::delete_file
      Src: /src/libzip/lib/zip_source_file_win32_named.c:184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - zip_source_file_context_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 185
    functionName: _zip_win32_named_op_rollback_write
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_named.c
    functionUses: 0
    functionsReached:
    - zip_win32_file_operations_t*::delete_file
    - CloseHandle
    linkageType: ''
    returnType: void
    signature: void _zip_win32_named_op_rollback_write(zip_source_file_context_t *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: zip_win32_file_operations_t*::get_file_attributes_ex
      Src: /src/libzip/lib/zip_source_file_win32_named.c:193,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32_named.c:194,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_named.c:199,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32_named.c:199,1
    - Dst: zip_win32_file_operations_t*::find_first_file
      Src: /src/libzip/lib/zip_source_file_win32_named.c:212,1
    - Dst: FindClose
      Src: /src/libzip/lib/zip_source_file_win32_named.c:215,1
    - Dst: _zip_filetime_to_time_t
      Src: /src/libzip/lib/zip_source_file_win32_named.c:224,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_named.c:225,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 2
    argNames:
    - ctx
    - st
    argTypes:
    - zip_source_file_context_t*
    - zip_source_file_stat_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 233
    functionName: _zip_win32_named_op_stat
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_named.c
    functionUses: 0
    functionsReached:
    - GetLastError
    - zip_error_set
    - _zip_win32_error_to_errno
    - zip_win32_file_operations_t*::get_file_attributes_ex
    - zip_win32_file_operations_t*::find_first_file
    - FindClose
    - _zip_filetime_to_time_t
    linkageType: ''
    returnType: bool
    signature: bool _zip_win32_named_op_stat(zip_source_file_context_t *ctx, zip_source_file_stat_t
      *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_win32_file_operations_t*::string_duplicate
      Src: /src/libzip/lib/zip_source_file_win32_named.c:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - string
    argTypes:
    - zip_source_file_context_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 240
    functionName: _zip_win32_named_op_string_duplicate
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_named.c
    functionUses: 0
    functionsReached:
    - zip_win32_file_operations_t*::string_duplicate
    linkageType: ''
    returnType: char
    signature: char *_zip_win32_named_op_string_duplicate(zip_source_file_context_t
      *ctx, const char *string)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: WriteFile
      Src: /src/libzip/lib/zip_source_file_win32_named.c:245,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_named.c:246,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32_named.c:246,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32_named.c:246,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - data
    - len
    argTypes:
    - zip_source_file_context_t*
    - void*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 251
    functionName: _zip_win32_named_op_write
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_named.c
    functionUses: 0
    functionsReached:
    - GetLastError
    - WriteFile
    - _zip_win32_error_to_errno
    - zip_error_set
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t _zip_win32_named_op_write(zip_source_file_context_t *ctx,
      const void *data, zip_uint64_t len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_win32_file_operations_t*::create_file
      Src: /src/libzip/lib/zip_source_file_win32_named.c:270,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_named.c:273,1
    - Dst: _zip_win32_error_to_errno
      Src: /src/libzip/lib/zip_source_file_win32_named.c:273,1
    - Dst: GetLastError
      Src: /src/libzip/lib/zip_source_file_win32_named.c:273,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - name
    - temporary
    - security_attributes
    argTypes:
    - zip_source_file_context_t*
    - char*
    - bool
    - PSECURITY_ATTRIBUTES
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 277
    functionName: win32_named_open
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_named.c
    functionUses: 2
    functionsReached:
    - GetLastError
    - zip_win32_file_operations_t*::create_file
    - _zip_win32_error_to_errno
    - zip_error_set
    linkageType: ''
    returnType: HANDLE
    signature: HANDLE win32_named_open(zip_source_file_context_t *ctx, const char
      *name, bool temporary, PSECURITY_ATTRIBUTES security_attributes)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_file_get_external_attributes.c:39,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - za
    - idx
    - flags
    - opsys
    - attributes
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_flags_t
    - zip_uint8_t*
    - zip_uint32_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 52
    functionName: zip_file_get_external_attributes
    functionSourceFile: /src/libzip/lib/zip_file_get_external_attributes.c
    functionUses: 1
    functionsReached:
    - _zip_get_dirent
    linkageType: ''
    returnType: int
    signature: int zip_file_get_external_attributes(zip_t *za, zip_uint64_t idx, zip_flags_t
      flags, zip_uint8_t *opsys, zip_uint32_t *attributes)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_name.c:50,1
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_set_name.c:54,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_name.c:55,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_set_name.c:60,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_name.c:62,1
    - Dst: _zip_string_new
      Src: /src/libzip/lib/zip_set_name.c:65,1
    - Dst: _zip_guess_encoding
      Src: /src/libzip/lib/zip_set_name.c:68,1
    - Dst: _zip_name_locate
      Src: /src/libzip/lib/zip_set_name.c:77,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_name.c:78,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_name.c:79,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_name.c:85,1
    - Dst: _zip_string_equal
      Src: /src/libzip/lib/zip_set_name.c:92,1
    - Dst: _zip_dirent_clone
      Src: /src/libzip/lib/zip_set_name.c:99,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_name.c:100,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_name.c:101,1
    - Dst: _zip_string_get
      Src: /src/libzip/lib/zip_set_name.c:106,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_name.c:107,1
    - Dst: _zip_string_get
      Src: /src/libzip/lib/zip_set_name.c:122,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_name.c:123,1
    - Dst: _zip_hash_add
      Src: /src/libzip/lib/zip_set_name.c:131,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_name.c:132,1
    - Dst: _zip_hash_delete
      Src: /src/libzip/lib/zip_set_name.c:136,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_name.c:142,1
    - Dst: _zip_dirent_free
      Src: /src/libzip/lib/zip_set_name.c:145,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_name.c:154,1
    - Dst: _zip_string_free
      Src: /src/libzip/lib/zip_set_name.c:158,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 94
    argCount: 4
    argNames:
    - za
    - idx
    - name
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - char*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 41
    functionDepth: 3
    functionLinenumber: 41
    functionLinenumberEnd: 165
    functionName: _zip_set_name
    functionSourceFile: /src/libzip/lib/zip_set_name.c
    functionUses: 2
    functionsReached:
    - _zip_guess_encoding
    - _zip_string_free
    - _zip_string_equal
    - zip_error_set
    - _zip_dirent_clone
    - _zip_dirent_free
    - _zip_hash_delete
    - _zip_hash_add
    - _zip_string_new
    - strlen
    - _zip_string_get
    - ZIP_IS_RDONLY
    - _zip_name_locate
    linkageType: ''
    returnType: int
    signature: int _zip_set_name(zip_t *za, zip_uint64_t idx, const char *name, zip_flags_t
      flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - method
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: SALT_LENGTH
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SALT_LENGTH(method)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 88
    functionName: ZIP_CM_ACTUAL
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_CM_ACTUAL(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - id
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 95
    functionName: ZIP_EF_IS_INTERNAL
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_EF_IS_INTERNAL(id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 105
    functionName: ZIP_MAX
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_MAX(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 106
    functionName: ZIP_MIN
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_MIN(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - memory
    - ','
    - alloced_elements
    - ','
    - additional_elements
    - ','
    - error
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 108
    functionName: ZIP_REALLOC
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_REALLOC(memory, alloced_elements, additional_elements, error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - error
    - ','
    - index
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 216
    functionName: MAKE_DETAIL_WITH_INDEX
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAKE_DETAIL_WITH_INDEX(error, index)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - error
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 217
    functionName: GET_INDEX_FROM_DETAIL
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_INDEX_FROM_DETAIL(error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - error
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 218
    functionName: GET_ERROR_FROM_DETAIL
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_ERROR_FROM_DETAIL(error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - error
    - ','
    - index
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 219
    functionName: ADD_INDEX_TO_DETAIL
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD_INDEX_TO_DETAIL(error, index)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 432
    functionDepth: 0
    functionLinenumber: 432
    functionLinenumberEnd: 433
    functionName: ZIP_SOURCE_IS_OPEN_READING
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_SOURCE_IS_OPEN_READING(src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 433
    functionDepth: 0
    functionLinenumber: 433
    functionLinenumberEnd: 434
    functionName: ZIP_SOURCE_IS_OPEN_WRITING
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_SOURCE_IS_OPEN_WRITING(src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 434
    functionDepth: 0
    functionLinenumber: 434
    functionLinenumberEnd: 435
    functionName: ZIP_SOURCE_IS_LAYERED
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_SOURCE_IS_LAYERED(src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - buf
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 464
    functionDepth: 0
    functionLinenumber: 464
    functionLinenumberEnd: 465
    functionName: DEFINE_BYTE_ARRAY
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEFINE_BYTE_ARRAY(buf, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - buf
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 466
    functionName: byte_array_init
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: byte_array_init(buf, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - buf
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 466
    functionDepth: 0
    functionLinenumber: 466
    functionLinenumberEnd: 467
    functionName: byte_array_fini
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: byte_array_fini(buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - buf
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 469
    functionName: DEFINE_BYTE_ARRAY
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEFINE_BYTE_ARRAY(buf, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - buf
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 470
    functionName: byte_array_init
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: byte_array_init(buf, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - buf
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 470
    functionDepth: 0
    functionLinenumber: 470
    functionLinenumberEnd: 471
    functionName: byte_array_fini
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: byte_array_fini(buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 502
    functionDepth: 0
    functionLinenumber: 502
    functionLinenumberEnd: 503
    functionName: ZIP_CHECK_ADD_OVERFLOW
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_CHECK_ADD_OVERFLOW(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 504
    functionDepth: 0
    functionLinenumber: 504
    functionLinenumberEnd: 505
    functionName: ZIP_MAX
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_MAX(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 505
    functionDepth: 0
    functionLinenumber: 505
    functionLinenumberEnd: 506
    functionName: ZIP_MIN
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_MIN(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - e
    - ','
    - f
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 507
    functionDepth: 0
    functionLinenumber: 507
    functionLinenumberEnd: 508
    functionName: ZIP_ENTRY_CHANGED
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_ENTRY_CHANGED(e, f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 509
    functionName: ZIP_ENTRY_DATA_CHANGED
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_ENTRY_DATA_CHANGED(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 510
    functionName: ZIP_ENTRY_HAS_CHANGES
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_ENTRY_HAS_CHANGES(e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - za
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 511
    functionDepth: 0
    functionLinenumber: 511
    functionLinenumberEnd: 512
    functionName: ZIP_IS_RDONLY
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_IS_RDONLY(za)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - za
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 513
    functionName: ZIP_IS_TORRENTZIP
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_IS_TORRENTZIP(za)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - za
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 513
    functionDepth: 0
    functionLinenumber: 513
    functionLinenumberEnd: 514
    functionName: ZIP_WANT_TORRENTZIP
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZIP_WANT_TORRENTZIP(za)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - b
    - ','
    - l
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 517
    functionDepth: 0
    functionLinenumber: 517
    functionLinenumberEnd: 518
    functionName: _zip_crypto_clear
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_clear(b, l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - b
    - ','
    - l
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 520
    functionDepth: 0
    functionLinenumber: 520
    functionLinenumberEnd: 521
    functionName: _zip_crypto_clear
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_clear(b, l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - b
    - ','
    - l
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 524
    functionName: _zip_crypto_clear
    functionSourceFile: /src/libzip/lib/zipint.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_clear(b, l)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _zip_get_dirent
      Src: /src/libzip/lib/zip_file_get_comment.c:44,1
    - Dst: _zip_string_get
      Src: /src/libzip/lib/zip_file_get_comment.c:48,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - za
    - idx
    - lenp
    - flags
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_uint32_t*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 39
    functionDepth: 3
    functionLinenumber: 39
    functionLinenumberEnd: 57
    functionName: zip_file_get_comment
    functionSourceFile: /src/libzip/lib/zip_file_get_comment.c
    functionUses: 4
    functionsReached:
    - _zip_string_get
    - _zip_get_dirent
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_file_get_comment(zip_t *za, zip_uint64_t idx, zip_uint32_t
      *lenp, zip_flags_t flags)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_begin_write.c:39,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_begin_write.c:40,1
    - Dst: ZIP_SOURCE_IS_OPEN_WRITING
      Src: /src/libzip/lib/zip_source_begin_write.c:44,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_begin_write.c:45,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_begin_write.c:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 56
    functionName: zip_source_begin_write
    functionSourceFile: /src/libzip/lib/zip_source_begin_write.c
    functionUses: 2
    functionsReached:
    - _zip_source_call
    - ZIP_SOURCE_IS_OPEN_WRITING
    - ZIP_SOURCE_IS_LAYERED
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_begin_write(zip_source_t *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_error_get
      Src: /src/libzip/lib/zip_error_get.c:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - za
    - zep
    - sep
    argTypes:
    - zip_t*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: zip_error_get
    functionSourceFile: /src/libzip/lib/zip_error_get.c
    functionUses: 2
    functionsReached:
    - _zip_error_get
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_get(zip_t *za, int *zep, int *sep)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: zip_error_t *zip_get_error(zip_t *za)
    functionSourceFile: /src/libzip/lib/zip_error_get.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_t *zip_get_error(zip_t *za)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: zip_error_t *zip_file_get_error(zip_file_t *f)
    functionSourceFile: /src/libzip/lib/zip_error_get.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_t *zip_file_get_error(zip_file_t *f)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_decode.c:59,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_decode.c:63,1
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_source_pkware_decode.c:67,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_pkware_decode.c:68,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_decode.c:73,1
    - Dst: trad_pkware_new
      Src: /src/libzip/lib/zip_source_pkware_decode.c:77,1
    - Dst: zip_source_layered
      Src: /src/libzip/lib/zip_source_pkware_decode.c:81,1
    - Dst: trad_pkware_free
      Src: /src/libzip/lib/zip_source_pkware_decode.c:82,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 5
    argNames:
    - za
    - src
    - em
    - flags
    - password
    argTypes:
    - zip_t*
    - zip_source_t*
    - zip_uint16_t
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 53
    functionDepth: 3
    functionLinenumber: 53
    functionLinenumberEnd: 87
    functionName: zip_source_pkware_decode
    functionSourceFile: /src/libzip/lib/zip_source_pkware_decode.c
    functionUses: 0
    functionsReached:
    - zip_error_set_from_source
    - zip_error_set
    - zip_source_stat
    - zip_source_layered
    - trad_pkware_free
    - trad_pkware_new
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_pkware_decode(zip_t *za, zip_source_t *src,
      zip_uint16_t em, int flags, const char *password)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_pkware_decode.c:96,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_pkware_decode.c:97,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_decode.c:102,1
    - Dst: _zip_pkware_decrypt
      Src: /src/libzip/lib/zip_source_pkware_decode.c:106,1
    - Dst: zip_source_stat
      Src: /src/libzip/lib/zip_source_pkware_decode.c:108,1
    - Dst: zip_source_get_dos_time
      Src: /src/libzip/lib/zip_source_pkware_decode.c:113,1
    - Dst: _zip_u2d_time
      Src: /src/libzip/lib/zip_source_pkware_decode.c:119,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_decode.c:133,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 2
    argNames:
    - src
    - ctx
    argTypes:
    - zip_source_t*
    - struct trad_pkware*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 90
    functionDepth: 3
    functionLinenumber: 90
    functionLinenumberEnd: 136
    functionName: decrypt_header
    functionSourceFile: /src/libzip/lib/zip_source_pkware_decode.c
    functionUses: 1
    functionsReached:
    - zip_error_set_from_source
    - zip_source_read
    - zip_error_set
    - _zip_u2d_time
    - zip_source_stat
    - zip_source_get_dos_time
    - _zip_pkware_decrypt
    linkageType: ''
    returnType: int
    signature: int decrypt_header(zip_source_t *src, struct trad_pkware *ctx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: _zip_pkware_keys_reset
      Src: /src/libzip/lib/zip_source_pkware_decode.c:147,1
    - Dst: _zip_pkware_decrypt
      Src: /src/libzip/lib/zip_source_pkware_decode.c:148,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_source_pkware_decode.c:148,1
    - Dst: decrypt_header
      Src: /src/libzip/lib/zip_source_pkware_decode.c:149,1
    - Dst: zip_source_read
      Src: /src/libzip/lib/zip_source_pkware_decode.c:155,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_source_pkware_decode.c:156,1
    - Dst: _zip_pkware_decrypt
      Src: /src/libzip/lib/zip_source_pkware_decode.c:160,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_decode.c:175,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/lib/zip_source_pkware_decode.c:185,1
    - Dst: zip_error_to_data
      Src: /src/libzip/lib/zip_source_pkware_decode.c:188,1
    - Dst: trad_pkware_free
      Src: /src/libzip/lib/zip_source_pkware_decode.c:191,1
    - Dst: zip_source_pass_to_lower_layer
      Src: /src/libzip/lib/zip_source_pkware_decode.c:195,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 42
    argCount: 5
    argNames:
    - src
    - ud
    - data
    - len
    - cmd
    argTypes:
    - zip_source_t*
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 139
    functionDepth: 3
    functionLinenumber: 139
    functionLinenumberEnd: 197
    functionName: pkware_decrypt
    functionSourceFile: /src/libzip/lib/zip_source_pkware_decode.c
    functionUses: 2
    functionsReached:
    - zip_error_set_from_source
    - zip_source_read
    - zip_error_set
    - zip_source_make_command_bitmap
    - zip_error_to_data
    - zip_source_pass_to_lower_layer
    - strlen
    - decrypt_header
    - _zip_pkware_keys_reset
    - trad_pkware_free
    - _zip_pkware_decrypt
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t pkware_decrypt(zip_source_t *src, void *ud, void *data,
      zip_uint64_t len, zip_source_cmd_t cmd)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_pkware_decode.c:203,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_decode.c:204,1
    - Dst: strdup
      Src: /src/libzip/lib/zip_source_pkware_decode.c:208,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_pkware_decode.c:209,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_pkware_decode.c:210,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_source_pkware_decode.c:214,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - password
    - error
    argTypes:
    - char*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 217
    functionName: trad_pkware_new
    functionSourceFile: /src/libzip/lib/zip_source_pkware_decode.c
    functionUses: 2
    functionsReached:
    - free
    - zip_error_set
    - zip_error_init
    - malloc
    - strdup
    linkageType: ''
    returnType: struct trad_pkware
    signature: struct trad_pkware *trad_pkware_new(const char *password, zip_error_t
      *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_source_pkware_decode.c:225,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_source_pkware_decode.c:225,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_pkware_decode.c:226,1
    - Dst: free
      Src: /src/libzip/lib/zip_source_pkware_decode.c:227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - struct trad_pkware*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 228
    functionName: trad_pkware_free
    functionSourceFile: /src/libzip/lib/zip_source_pkware_decode.c
    functionUses: 4
    functionsReached:
    - free
    - _zip_crypto_clear
    - strlen
    linkageType: ''
    returnType: void
    signature: void trad_pkware_free(struct trad_pkware *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_free
      Src: /src/libzip/lib/zip_unchange_data.c:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ze
    argTypes:
    - zip_entry_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 3
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: _zip_unchange_data
    functionSourceFile: /src/libzip/lib/zip_unchange_data.c
    functionUses: 2
    functionsReached:
    - zip_source_free
    linkageType: ''
    returnType: void
    signature: void _zip_unchange_data(zip_entry_t *ze)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_set_file_comment.c:42,1
    - Dst: zip_file_set_comment
      Src: /src/libzip/lib/zip_set_file_comment.c:45,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - za
    - idx
    - comment
    - len
    argTypes:
    - zip_t*
    - zip_uint64_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 4
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: zip_set_file_comment
    functionSourceFile: /src/libzip/lib/zip_set_file_comment.c
    functionUses: 0
    functionsReached:
    - zip_file_set_comment
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_set_file_comment(zip_t *za, zip_uint64_t idx, const
      char *comment, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: zip_source_error
    functionSourceFile: /src/libzip/lib/zip_source_error.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: zip_error_t
    signature: zip_error_t *zip_source_error(zip_source_t *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_error
      Src: /src/libzip/lib/zip_source_error.c:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: _zip_source_had_error
    functionSourceFile: /src/libzip/lib/zip_source_error.c
    functionUses: 0
    functionsReached:
    - zip_source_error
    linkageType: ''
    returnType: bool
    signature: bool _zip_source_had_error(zip_source_t *src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_OPEN_WRITING
      Src: /src/libzip/lib/zip_source_write.c:39,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_write.c:40,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_write.c:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - src
    - data
    - length
    argTypes:
    - zip_source_t*
    - void*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 45
    functionName: zip_int64_t::zip_source_write
    functionSourceFile: /src/libzip/lib/zip_source_write.c
    functionUses: 0
    functionsReached:
    - _zip_source_call
    - ZIP_SOURCE_IS_OPEN_WRITING
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_source_write(zip_source_t *src, const void
      *data, zip_uint64_t length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_win32w_create
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 69
    functionName: zip_source_t *zip_source_win32w(zip_t *za, const wchar_t *fname,
      zip_uint64_t start, zip_int64_t len)
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - zip_source_win32w_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_win32w(zip_t *za, const wchar_t
      *fname, zip_uint64_t start, zip_int64_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:74,1
    - Dst: zip_source_file_common_new
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 80
    functionName: zip_source_t *zip_source_win32w_create(const wchar_t *fname, zip_uint64_t
      start, zip_int64_t length, zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - zip_source_file_common_new
    - zip_error_set
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_win32w_create(const wchar_t *fname,
      zip_uint64_t start, zip_int64_t length, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wcslen
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:84,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - name
    - extra_chars
    - lengthp
    argTypes:
    - char*
    - size_t
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: utf16_allocate_tempname
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - wcslen
    - malloc
    linkageType: ''
    returnType: char
    signature: char *utf16_allocate_tempname(const char *name, size_t extra_chars,
      size_t *lengthp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateFile2
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:99,1
    - Dst: CreateFileW
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 7
    argNames:
    - name
    - access
    - share_mode
    - security_attributes
    - creation_disposition
    - file_attributes
    - template_file
    argTypes:
    - void*
    - DWORD
    - DWORD
    - PSECURITY_ATTRIBUTES
    - DWORD
    - DWORD
    - HANDLE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 103
    functionName: utf16_create_file
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - CreateFileW
    - CreateFile2
    linkageType: ''
    returnType: HANDLE
    signature: HANDLE utf16_create_file(const void *name, DWORD access, DWORD share_mode,
      PSECURITY_ATTRIBUTES security_attributes, DWORD creation_disposition, DWORD
      file_attributes, HANDLE template_file)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DeleteFileW
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: utf16_delete_file
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - DeleteFileW
    linkageType: ''
    returnType: BOOL
    signature: BOOL utf16_delete_file(const void *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetFileAttributesW
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: utf16_get_file_attributes
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - GetFileAttributesW
    linkageType: ''
    returnType: DWORD
    signature: DWORD utf16_get_file_attributes(const void *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetFileAttributesExW
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - name
    - info_level
    - information
    argTypes:
    - void*
    - GET_FILEEX_INFO_LEVELS
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: utf16_get_file_attributes_ex
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - GetFileAttributesExW
    linkageType: ''
    returnType: BOOL
    signature: BOOL utf16_get_file_attributes_ex(const void *name, GET_FILEEX_INFO_LEVELS
      info_level, void *information)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _snwprintf_s
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - buf
    - len
    - name
    - i
    argTypes:
    - char*
    - size_t
    - char*
    - zip_uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: utf16_make_tempname
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - _snwprintf_s
    linkageType: ''
    returnType: void
    signature: void utf16_make_tempname(char *buf, size_t len, const char *name, zip_uint32_t
      i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MoveFileExW
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - from
    - to
    - flags
    argTypes:
    - void*
    - void*
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: utf16_move_file
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - MoveFileExW
    linkageType: ''
    returnType: BOOL
    signature: BOOL utf16_move_file(const void *from, const void *to, DWORD flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetFileAttributesW
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - attributes
    argTypes:
    - void*
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: utf16_set_file_attributes
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - SetFileAttributesW
    linkageType: ''
    returnType: BOOL
    signature: BOOL utf16_set_file_attributes(const void *name, DWORD attributes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _wcsdup
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - string
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: utf16_strdup
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - _wcsdup
    linkageType: ''
    returnType: char
    signature: char *utf16_strdup(const char *string)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FindFirstFileW
      Src: /src/libzip/lib/zip_source_file_win32_utf16.c:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - data
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: utf16_find_first_file
    functionSourceFile: /src/libzip/lib/zip_source_file_win32_utf16.c
    functionUses: 0
    functionsReached:
    - FindFirstFileW
    linkageType: ''
    returnType: HANDLE
    signature: HANDLE utf16_find_first_file(const void *name, void *data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_SOURCE_IS_OPEN_READING
      Src: /src/libzip/lib/zip_source_tell.c:42,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_tell.c:43,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_tell.c:47,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_tell.c:47,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_tell.c:49,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_tell.c:55,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 56
    functionName: zip_int64_t::zip_source_tell
    functionSourceFile: /src/libzip/lib/zip_source_tell.c
    functionUses: 1
    functionsReached:
    - ZIP_SOURCE_IS_OPEN_READING
    - ZIP_SOURCE_MAKE_COMMAND_BITMASK
    - zip_error_set
    - _zip_source_call
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_source_tell(zip_source_t *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - hmac
    - ','
    - data
    - ','
    - length
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: _zip_crypto_hmac
    functionSourceFile: /src/libzip/lib/zip_crypto_gnutls.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_hmac(hmac, data, length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - hmac
    - ','
    - data
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: _zip_crypto_hmac_output
    functionSourceFile: /src/libzip/lib/zip_crypto_gnutls.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_hmac_output(hmac, data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - key
    - ','
    - key_length
    - ','
    - salt
    - ','
    - salt_length
    - ','
    - iterations
    - ','
    - output
    - ','
    - output_length
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 67
    functionName: _zip_crypto_pbkdf2
    functionSourceFile: /src/libzip/lib/zip_crypto_gnutls.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _zip_crypto_pbkdf2(key, key_length, salt, salt_length, iterations,
      output, output_length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CCCryptorRelease
      Src: /src/libzip/lib/zip_crypto_commoncrypto.c:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - aes
    argTypes:
    - _zip_crypto_aes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: _zip_crypto_aes_free
    functionSourceFile: /src/libzip/lib/zip_crypto_commoncrypto.c
    functionUses: 3
    functionsReached:
    - CCCryptorRelease
    linkageType: ''
    returnType: void
    signature: void _zip_crypto_aes_free(_zip_crypto_aes_t *aes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CCCryptorUpdate
      Src: /src/libzip/lib/zip_crypto_commoncrypto.c:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - aes
    - in
    - out
    argTypes:
    - _zip_crypto_aes_t*
    - zip_uint8_t*
    - zip_uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: _zip_crypto_aes_encrypt_block
    functionSourceFile: /src/libzip/lib/zip_crypto_commoncrypto.c
    functionUses: 1
    functionsReached:
    - CCCryptorUpdate
    linkageType: ''
    returnType: bool
    signature: bool _zip_crypto_aes_encrypt_block(_zip_crypto_aes_t *aes, const zip_uint8_t
      *in, zip_uint8_t *out)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: CCCryptorCreate
      Src: /src/libzip/lib/zip_crypto_commoncrypto.c:63,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_commoncrypto.c:70,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_commoncrypto.c:74,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_commoncrypto.c:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - key
    - key_size
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 81
    functionName: _zip_crypto_aes_new
    functionSourceFile: /src/libzip/lib/zip_crypto_commoncrypto.c
    functionUses: 1
    functionsReached:
    - CCCryptorCreate
    - zip_error_set
    linkageType: ''
    returnType: _zip_crypto_aes_t
    signature: _zip_crypto_aes_t *_zip_crypto_aes_new(const zip_uint8_t *key, zip_uint16_t
      key_size, zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_crypto_commoncrypto.c:89,1
    - Dst: free
      Src: /src/libzip/lib/zip_crypto_commoncrypto.c:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - hmac
    argTypes:
    - _zip_crypto_hmac_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 91
    functionName: _zip_crypto_hmac_free
    functionSourceFile: /src/libzip/lib/zip_crypto_commoncrypto.c
    functionUses: 2
    functionsReached:
    - free
    - _zip_crypto_clear
    linkageType: ''
    returnType: void
    signature: void _zip_crypto_hmac_free(_zip_crypto_hmac_t *hmac)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_crypto_commoncrypto.c:97,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_crypto_commoncrypto.c:98,1
    - Dst: CCHmacInit
      Src: /src/libzip/lib/zip_crypto_commoncrypto.c:102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - secret
    - secret_length
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint64_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 105
    functionName: _zip_crypto_hmac_new
    functionSourceFile: /src/libzip/lib/zip_crypto_commoncrypto.c
    functionUses: 1
    functionsReached:
    - CCHmacInit
    - malloc
    - zip_error_set
    linkageType: ''
    returnType: _zip_crypto_hmac_t
    signature: _zip_crypto_hmac_t *_zip_crypto_hmac_new(const zip_uint8_t *secret,
      zip_uint64_t secret_length, zip_error_t *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - uncompressed_size
    argTypes:
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 56
    functionName: maximum_compressed_size
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: zip_uint64_t
    signature: zip_uint64_t maximum_compressed_size(zip_uint64_t uncompressed_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:62,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - compress
    - compression_flags
    - error
    argTypes:
    - bool
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 81
    functionName: allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 8
    functionsReached:
    - malloc
    linkageType: ''
    returnType: void
    signature: void *allocate(bool compress, zip_uint32_t compression_flags, zip_error_t
      *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: allocate
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - method
    - compression_flags
    - error
    argTypes:
    - zip_uint16_t
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: compress_allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 0
    functionsReached:
    - allocate
    linkageType: ''
    returnType: void
    signature: void *compress_allocate(zip_uint16_t method, zip_uint32_t compression_flags,
      zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: allocate
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - method
    - compression_flags
    - error
    argTypes:
    - zip_uint16_t
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: decompress_allocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 0
    functionsReached:
    - allocate
    linkageType: ''
    returnType: void
    signature: void *decompress_allocate(zip_uint16_t method, zip_uint32_t compression_flags,
      zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: deallocate
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 1
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void deallocate(void *ud)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: general_purpose_bit_flags
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: zip_uint16_t
    signature: zip_uint16_t general_purpose_bit_flags(void *ud)
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 1
    argNames:
    - ret
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 136
    functionName: map_error
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int map_error(int ret)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BZ2_bzCompressInit
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:151,1
    - Dst: BZ2_bzDecompressInit
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:154,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:158,1
    - Dst: map_error
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 3
    argNames:
    - ud
    - st
    - attributes
    argTypes:
    - void*
    - zip_stat_t*
    - zip_file_attributes_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 163
    functionName: start
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 5
    functionsReached:
    - map_error
    - BZ2_bzCompressInit
    - zip_error_set
    - BZ2_bzDecompressInit
    linkageType: ''
    returnType: bool
    signature: bool start(void *ud, zip_stat_t *st, zip_file_attributes_t *attributes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BZ2_bzCompressEnd
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:171,1
    - Dst: BZ2_bzDecompressEnd
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:174,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:178,1
    - Dst: map_error
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:178,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 183
    functionName: end
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 9
    functionsReached:
    - zip_error_set
    - BZ2_bzDecompressEnd
    - BZ2_bzCompressEnd
    - map_error
    linkageType: ''
    returnType: bool
    signature: bool end(void *ud)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:190,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ud
    - data
    - length
    argTypes:
    - void*
    - zip_uint8_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 198
    functionName: input
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 1
    functionsReached:
    - zip_error_set
    linkageType: ''
    returnType: bool
    signature: bool input(void *ud, zip_uint8_t *data, zip_uint64_t length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ud
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 206
    functionName: end_of_input
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool end_of_input(void *ud)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:220,1
    - Dst: BZ2_bzCompress
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:225,1
    - Dst: BZ2_bzDecompress
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:228,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:248,1
    - Dst: map_error
      Src: /src/libzip/lib/zip_algorithm_bzip2.c:248,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 3
    argNames:
    - ud
    - data
    - length
    argTypes:
    - void*
    - zip_uint8_t*
    - zip_uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 251
    functionName: process
    functionSourceFile: /src/libzip/lib/zip_algorithm_bzip2.c
    functionUses: 1
    functionsReached:
    - ZIP_MIN
    - zip_error_set
    - BZ2_bzDecompress
    - BZ2_bzCompress
    - map_error
    linkageType: ''
    returnType: zip_compression_status_t
    signature: zip_compression_status_t process(void *ud, zip_uint8_t *data, zip_uint64_t
      *length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _zip_unchange_data
      Src: /src/libzip/lib/zip_entry.c:38,1
    - Dst: _zip_dirent_free
      Src: /src/libzip/lib/zip_entry.c:39,1
    - Dst: _zip_dirent_free
      Src: /src/libzip/lib/zip_entry.c:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - e
    argTypes:
    - zip_entry_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 4
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: _zip_entry_finalize
    functionSourceFile: /src/libzip/lib/zip_entry.c
    functionUses: 3
    functionsReached:
    - _zip_unchange_data
    - _zip_dirent_free
    linkageType: ''
    returnType: void
    signature: void _zip_entry_finalize(zip_entry_t *e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - e
    argTypes:
    - zip_entry_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: _zip_entry_init
    functionSourceFile: /src/libzip/lib/zip_entry.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void _zip_entry_init(zip_entry_t *e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_int64_t::zip_dir_add
      Src: /src/libzip/lib/zip_add_dir.c:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - za
    - name
    argTypes:
    - zip_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 3
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: zip_int64_t::zip_add_dir
    functionSourceFile: /src/libzip/lib/zip_add_dir.c
    functionUses: 0
    functionsReached:
    - zip_int64_t::zip_dir_add
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_int64_t zip_add_dir(zip_t *za, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_layered_create
      Src: /src/libzip/lib/zip_source_layered.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - za
    - src
    - cb
    - ud
    argTypes:
    - zip_t*
    - zip_source_t*
    - zip_source_layered_callback
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: zip_source_layered
    functionSourceFile: /src/libzip/lib/zip_source_layered.c
    functionUses: 5
    functionsReached:
    - zip_source_layered_create
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_layered(zip_t *za, zip_source_t *src, zip_source_layered_callback
      cb, void *ud)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_supports
      Src: /src/libzip/lib/zip_source_layered.c:53,1
    - Dst: cb
      Src: /src/libzip/lib/zip_source_layered.c:54,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_layered.c:56,1
    - Dst: cb
      Src: /src/libzip/lib/zip_source_layered.c:57,1
    - Dst: _zip_source_new
      Src: /src/libzip/lib/zip_source_layered.c:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - src
    - cb
    - ud
    - error
    argTypes:
    - zip_source_t*
    - zip_source_layered_callback
    - void*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 74
    functionName: zip_source_layered_create
    functionSourceFile: /src/libzip/lib/zip_source_layered.c
    functionUses: 3
    functionsReached:
    - cb
    - zip_error_set
    - zip_source_supports
    - _zip_source_new
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *zip_source_layered_create(zip_source_t *src, zip_source_layered_callback
      cb, void *ud, zip_error_t *error)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_error_strerror.c:47,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_error_strerror.c:50,1
    - Dst: snprintf_s
      Src: /src/libzip/lib/zip_error_strerror.c:54,1
    - Dst: strerrorlen_s
      Src: /src/libzip/lib/zip_error_strerror.c:64,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_error_strerror.c:65,1
    - Dst: strerror_s
      Src: /src/libzip/lib/zip_error_strerror.c:69,1
    - Dst: zError
      Src: /src/libzip/lib/zip_error_strerror.c:75,1
    - Dst: GET_ERROR_FROM_DETAIL
      Src: /src/libzip/lib/zip_error_strerror.c:79,1
    - Dst: GET_INDEX_FROM_DETAIL
      Src: /src/libzip/lib/zip_error_strerror.c:80,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_error_strerror.c:86,1
    - Dst: snprintf_s
      Src: /src/libzip/lib/zip_error_strerror.c:90,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_error_strerror.c:95,1
    - Dst: snprintf_s
      Src: /src/libzip/lib/zip_error_strerror.c:99,1
    - Dst: free
      Src: /src/libzip/lib/zip_error_strerror.c:115,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_error_strerror.c:119,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_error_strerror.c:121,1
    - Dst: free
      Src: /src/libzip/lib/zip_error_strerror.c:123,1
    - Dst: malloc
      Src: /src/libzip/lib/zip_error_strerror.c:128,1
    - Dst: free
      Src: /src/libzip/lib/zip_error_strerror.c:129,1
    - Dst: snprintf_s
      Src: /src/libzip/lib/zip_error_strerror.c:133,1
    - Dst: free
      Src: /src/libzip/lib/zip_error_strerror.c:136,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 76
    argCount: 1
    argNames:
    - err
    argTypes:
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 139
    functionName: zip_error_strerror
    functionSourceFile: /src/libzip/lib/zip_error_strerror.c
    functionUses: 19
    functionsReached:
    - zError
    - free
    - strerrorlen_s
    - strerror_s
    - malloc
    - snprintf_s
    - strlen
    - GET_ERROR_FROM_DETAIL
    - zip_error_fini
    - GET_INDEX_FROM_DETAIL
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN *zip_error_strerror(zip_error_t *err)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _zip_ef_new
      Src: /src/libzip/lib/zip_extra_field.c:46,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field.c:47,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_extra_field.c:48,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - ef
    - error
    argTypes:
    - zip_extra_field_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 64
    functionName: _zip_ef_clone
    functionSourceFile: /src/libzip/lib/zip_extra_field.c
    functionUses: 1
    functionsReached:
    - _zip_ef_free
    - _zip_ef_new
    - zip_error_set
    linkageType: ''
    returnType: zip_extra_field_t
    signature: zip_extra_field_t *_zip_ef_clone(const zip_extra_field_t *ef, zip_error_t
      *error)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_extra_field.c:86,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 4
    argNames:
    - ef
    - id
    - id_idx
    - flags
    argTypes:
    - zip_extra_field_t*
    - zip_uint16_t
    - zip_uint16_t
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 103
    functionName: _zip_ef_delete_by_id
    functionSourceFile: /src/libzip/lib/zip_extra_field.c
    functionUses: 2
    functionsReached:
    - _zip_ef_free
    linkageType: ''
    returnType: zip_extra_field_t
    signature: zip_extra_field_t *_zip_ef_delete_by_id(zip_extra_field_t *ef, zip_uint16_t
      id, zip_uint16_t id_idx, zip_flags_t flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/lib/zip_extra_field.c:111,1
    - Dst: free
      Src: /src/libzip/lib/zip_extra_field.c:112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ef
    argTypes:
    - zip_extra_field_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 115
    functionName: _zip_ef_free
    functionSourceFile: /src/libzip/lib/zip_extra_field.c
    functionUses: 5
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void _zip_ef_free(zip_extra_field_t *ef)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field.c:143,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 6
    argNames:
    - ef
    - lenp
    - id
    - id_idx
    - flags
    - error
    argTypes:
    - zip_extra_field_t*
    - zip_uint16_t*
    - zip_uint16_t
    - zip_uint16_t
    - zip_flags_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 145
    functionName: _zip_ef_get_by_id
    functionSourceFile: /src/libzip/lib/zip_extra_field.c
    functionUses: 4
    functionsReached:
    - zip_error_set
    linkageType: ''
    returnType: zip_uint8_t
    signature: zip_uint8_t *_zip_ef_get_by_id(const zip_extra_field_t *ef, zip_uint16_t
      *lenp, zip_uint16_t id, zip_uint16_t id_idx, zip_flags_t flags, zip_error_t
      *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/libzip/lib/zip_extra_field.c:164,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_extra_field.c:173,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - to
    - from
    argTypes:
    - zip_extra_field_t*
    - zip_extra_field_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 181
    functionName: _zip_ef_merge
    functionSourceFile: /src/libzip/lib/zip_extra_field.c
    functionUses: 1
    functionsReached:
    - _zip_ef_free
    - memcmp
    linkageType: ''
    returnType: zip_extra_field_t
    signature: zip_extra_field_t *_zip_ef_merge(zip_extra_field_t *to, zip_extra_field_t
      *from)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_extra_field.c:187,1
    - Dst: _zip_memdup
      Src: /src/libzip/lib/zip_extra_field.c:196,1
    - Dst: free
      Src: /src/libzip/lib/zip_extra_field.c:197,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 4
    argNames:
    - id
    - size
    - data
    - flags
    argTypes:
    - zip_uint16_t
    - zip_uint16_t
    - zip_uint8_t*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 206
    functionName: _zip_ef_new
    functionSourceFile: /src/libzip/lib/zip_extra_field.c
    functionUses: 4
    functionsReached:
    - free
    - malloc
    - _zip_memdup
    linkageType: ''
    returnType: zip_extra_field_t
    signature: zip_extra_field_t *_zip_ef_new(zip_uint16_t id, zip_uint16_t size,
      const zip_uint8_t *data, zip_flags_t flags)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_extra_field.c:213,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field.c:214,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_extra_field.c:220,1
    - Dst: _zip_buffer_left
      Src: /src/libzip/lib/zip_extra_field.c:220,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_extra_field.c:224,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_extra_field.c:225,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_extra_field.c:226,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field.c:229,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_extra_field.c:230,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_extra_field.c:231,1
    - Dst: _zip_ef_new
      Src: /src/libzip/lib/zip_extra_field.c:235,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field.c:236,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_extra_field.c:237,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_extra_field.c:238,1
    - Dst: _zip_buffer_eof
      Src: /src/libzip/lib/zip_extra_field.c:251,1
    - Dst: _zip_buffer_left
      Src: /src/libzip/lib/zip_extra_field.c:255,1
    - Dst: _zip_buffer_get
      Src: /src/libzip/lib/zip_extra_field.c:257,1
    - Dst: memcmp
      Src: /src/libzip/lib/zip_extra_field.c:258,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field.c:259,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_extra_field.c:260,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_extra_field.c:261,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_extra_field.c:266,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_extra_field.c:272,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 45
    argCount: 5
    argNames:
    - data
    - len
    - flags
    - ef_head_p
    - error
    argTypes:
    - zip_uint8_t*
    - zip_uint16_t
    - zip_flags_t
    - zip_extra_field_t**
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 209
    functionDepth: 3
    functionLinenumber: 209
    functionLinenumberEnd: 276
    functionName: _zip_ef_parse
    functionSourceFile: /src/libzip/lib/zip_extra_field.c
    functionUses: 1
    functionsReached:
    - _zip_buffer_new
    - _zip_buffer_get_16
    - _zip_buffer_ok
    - _zip_buffer_free
    - zip_error_set
    - _zip_buffer_left
    - _zip_ef_free
    - memcmp
    - _zip_ef_new
    - _zip_buffer_eof
    - _zip_buffer_get
    linkageType: ''
    returnType: bool
    signature: bool _zip_ef_parse(const zip_uint8_t *data, zip_uint16_t len, zip_flags_t
      flags, zip_extra_field_t **ef_head_p, zip_error_t *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ZIP_EF_IS_INTERNAL
      Src: /src/libzip/lib/zip_extra_field.c:287,1
    - Dst: _zip_ef_free
      Src: /src/libzip/lib/zip_extra_field.c:293,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 1
    argNames:
    - ef
    argTypes:
    - zip_extra_field_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 306
    functionName: _zip_ef_remove_internal
    functionSourceFile: /src/libzip/lib/zip_extra_field.c
    functionUses: 1
    functionsReached:
    - _zip_ef_free
    - ZIP_EF_IS_INTERNAL
    linkageType: ''
    returnType: zip_extra_field_t
    signature: zip_extra_field_t *_zip_ef_remove_internal(zip_extra_field_t *ef)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ef
    - flags
    argTypes:
    - zip_extra_field_t*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 320
    functionName: _zip_ef_size
    functionSourceFile: /src/libzip/lib/zip_extra_field.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: zip_uint32_t
    signature: zip_uint32_t _zip_ef_size(const zip_extra_field_t *ef, zip_flags_t
      flags)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _zip_buffer_new
      Src: /src/libzip/lib/zip_extra_field.c:325,1
    - Dst: _zip_buffer_set_offset
      Src: /src/libzip/lib/zip_extra_field.c:333,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_extra_field.c:334,1
    - Dst: _zip_buffer_put_16
      Src: /src/libzip/lib/zip_extra_field.c:335,1
    - Dst: _zip_buffer_ok
      Src: /src/libzip/lib/zip_extra_field.c:336,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field.c:337,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_extra_field.c:338,1
    - Dst: _zip_write
      Src: /src/libzip/lib/zip_extra_field.c:341,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_extra_field.c:342,1
    - Dst: _zip_write
      Src: /src/libzip/lib/zip_extra_field.c:346,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_extra_field.c:347,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_extra_field.c:354,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 3
    argNames:
    - za
    - ef
    - flags
    argTypes:
    - zip_t*
    - zip_extra_field_t*
    - zip_flags_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 323
    functionDepth: 3
    functionLinenumber: 323
    functionLinenumberEnd: 356
    functionName: _zip_ef_write
    functionSourceFile: /src/libzip/lib/zip_extra_field.c
    functionUses: 1
    functionsReached:
    - _zip_buffer_new
    - _zip_buffer_ok
    - _zip_buffer_free
    - zip_error_set
    - _zip_buffer_put_16
    - _zip_write
    - _zip_buffer_set_offset
    linkageType: ''
    returnType: int
    signature: int _zip_ef_write(zip_t *za, const zip_extra_field_t *ef, zip_flags_t
      flags)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field.c:366,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field.c:377,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_extra_field.c:381,1
    - Dst: zip_error_set_from_source
      Src: /src/libzip/lib/zip_extra_field.c:382,1
    - Dst: _zip_buffer_new_from_source
      Src: /src/libzip/lib/zip_extra_field.c:386,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_extra_field.c:390,1
    - Dst: _zip_buffer_get_16
      Src: /src/libzip/lib/zip_extra_field.c:391,1
    - Dst: _zip_buffer_eof
      Src: /src/libzip/lib/zip_extra_field.c:393,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_extra_field.c:394,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field.c:395,1
    - Dst: _zip_buffer_free
      Src: /src/libzip/lib/zip_extra_field.c:399,1
    - Dst: zip_source_seek
      Src: /src/libzip/lib/zip_extra_field.c:405,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_extra_field.c:406,1
    - Dst: _zip_read_data
      Src: /src/libzip/lib/zip_extra_field.c:410,1
    - Dst: _zip_ef_parse
      Src: /src/libzip/lib/zip_extra_field.c:416,1
    - Dst: free
      Src: /src/libzip/lib/zip_extra_field.c:417,1
    - Dst: free
      Src: /src/libzip/lib/zip_extra_field.c:420,1
    - Dst: _zip_ef_remove_internal
      Src: /src/libzip/lib/zip_extra_field.c:423,1
    - Dst: _zip_ef_merge
      Src: /src/libzip/lib/zip_extra_field.c:424,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 53
    argCount: 2
    argNames:
    - za
    - idx
    argTypes:
    - zip_t*
    - zip_uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 359
    functionDepth: 4
    functionLinenumber: 359
    functionLinenumberEnd: 436
    functionName: _zip_read_local_ef
    functionSourceFile: /src/libzip/lib/zip_extra_field.c
    functionUses: 6
    functionsReached:
    - _zip_buffer_new_from_source
    - zip_error_set_from_source
    - _zip_buffer_get_16
    - _zip_buffer_free
    - zip_error_set
    - _zip_ef_parse
    - free
    - _zip_read_data
    - _zip_ef_remove_internal
    - _zip_ef_merge
    - zip_source_seek
    - _zip_buffer_eof
    linkageType: ''
    returnType: int
    signature: int _zip_read_local_ef(zip_t *za, zip_uint64_t idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_function_create
      Src: /src/libzip/lib/zip_source_function.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: zip_source_t *zip_source_function(zip_t *za, zip_source_callback
      zcb, void *ud)
    functionSourceFile: /src/libzip/lib/zip_source_function.c
    functionUses: 0
    functionsReached:
    - zip_source_function_create
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_function(zip_t *za, zip_source_callback
      zcb, void *ud)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _zip_source_new
      Src: /src/libzip/lib/zip_source_function.c:52,1
    - Dst: zcb
      Src: /src/libzip/lib/zip_source_function.c:59,1
    - Dst: zip_source_make_command_bitmap
      Src: /src/libzip/lib/zip_source_function.c:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 66
    functionName: zip_source_t *zip_source_function_create(zip_source_callback zcb,
      void *ud, zip_error_t *error)
    functionSourceFile: /src/libzip/lib/zip_source_function.c
    functionUses: 0
    functionsReached:
    - zcb
    - zip_source_make_command_bitmap
    - _zip_source_new
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_t *zip_source_function_create(zip_source_callback
      zcb, void *ud, zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: zip_source_keep
    functionSourceFile: /src/libzip/lib/zip_source_function.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_source_keep(zip_source_t *src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/lib/zip_source_function.c:77,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_source_function.c:78,1
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_source_function.c:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - error
    argTypes:
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 96
    functionName: _zip_source_new
    functionSourceFile: /src/libzip/lib/zip_source_function.c
    functionUses: 2
    functionsReached:
    - malloc
    - zip_error_set
    - zip_error_init
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *_zip_source_new(zip_error_t *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_init
      Src: /src/libzip/lib/zip_error_to_str.c:48,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_error_to_str.c:49,1
    - Dst: zip_error_strerror
      Src: /src/libzip/lib/zip_error_to_str.c:51,1
    - Dst: snprintf_s
      Src: /src/libzip/lib/zip_error_to_str.c:53,1
    - Dst: ZIP_MIN
      Src: /src/libzip/lib/zip_error_to_str.c:53,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_error_to_str.c:53,1
    - Dst: zip_error_fini
      Src: /src/libzip/lib/zip_error_to_str.c:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - buf
    - len
    - ze
    - se
    argTypes:
    - char*
    - zip_uint64_t
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 58
    functionName: zip_error_to_str
    functionSourceFile: /src/libzip/lib/zip_error_to_str.c
    functionUses: 0
    functionsReached:
    - ZIP_MIN
    - zip_error_set
    - zip_error_init
    - zip_error_strerror
    - snprintf_s
    - strlen
    - zip_error_fini
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_error_to_str(char *buf, zip_uint64_t len, int ze, int
      se)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_source_supports
      Src: /src/libzip/lib/zip_source_accept_empty.c:41,1
    - Dst: ZIP_SOURCE_MAKE_COMMAND_BITMASK
      Src: /src/libzip/lib/zip_source_accept_empty.c:41,1
    - Dst: ZIP_SOURCE_IS_LAYERED
      Src: /src/libzip/lib/zip_source_accept_empty.c:42,1
    - Dst: zip_source_accept_empty
      Src: /src/libzip/lib/zip_source_accept_empty.c:43,1
    - Dst: _zip_source_call
      Src: /src/libzip/lib/zip_source_accept_empty.c:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - src
    argTypes:
    - zip_source_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 51
    functionName: zip_source_accept_empty
    functionSourceFile: /src/libzip/lib/zip_source_accept_empty.c
    functionUses: 2
    functionsReached:
    - ZIP_SOURCE_IS_LAYERED
    - _zip_source_call
    - zip_source_supports
    - ZIP_SOURCE_MAKE_COMMAND_BITMASK
    - zip_source_accept_empty
    linkageType: ''
    returnType: bool
    signature: bool zip_source_accept_empty(zip_source_t *src)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_encryption.c:45,1
    - Dst: ZIP_IS_RDONLY
      Src: /src/libzip/lib/zip_file_set_encryption.c:49,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_encryption.c:50,1
    - Dst: ZIP_WANT_TORRENTZIP
      Src: /src/libzip/lib/zip_file_set_encryption.c:53,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_encryption.c:54,1
    - Dst: _zip_get_encryption_implementation
      Src: /src/libzip/lib/zip_file_set_encryption.c:58,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_encryption.c:59,1
    - Dst: _zip_dirent_clone
      Src: /src/libzip/lib/zip_file_set_encryption.c:67,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_encryption.c:68,1
    - Dst: strdup
      Src: /src/libzip/lib/zip_file_set_encryption.c:74,1
    - Dst: zip_error_set
      Src: /src/libzip/lib/zip_file_set_encryption.c:75,1
    - Dst: _zip_crypto_clear
      Src: /src/libzip/lib/zip_file_set_encryption.c:83,1
    - Dst: strlen
      Src: /src/libzip/lib/zip_file_set_encryption.c:83,1
    - Dst: free
      Src: /src/libzip/lib/zip_file_set_encryption.c:84,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 4
    argNames:
    - za
    - idx
    - method
    - password
    argTypes:
    - zip_t*
    - zip_uint64_t
    - zip_uint16_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 96
    functionName: zip_file_set_encryption
    functionSourceFile: /src/libzip/lib/zip_file_set_encryption.c
    functionUses: 4
    functionsReached:
    - free
    - _zip_dirent_clone
    - zip_error_set
    - ZIP_WANT_TORRENTZIP
    - strlen
    - _zip_get_encryption_implementation
    - strdup
    - _zip_crypto_clear
    - ZIP_IS_RDONLY
    linkageType: ''
    returnType: ZIP_EXTERN
    signature: ZIP_EXTERN zip_file_set_encryption(zip_t *za, zip_uint64_t idx, zip_uint16_t
      method, const char *password)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/libzip/examples/in-memory.c:47,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:49,1
    - Dst: strerror
      Src: /src/libzip/examples/in-memory.c:49,1
    - Dst: fstat
      Src: /src/libzip/examples/in-memory.c:59,1
    - Dst: fileno
      Src: /src/libzip/examples/in-memory.c:59,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:60,1
    - Dst: strerror
      Src: /src/libzip/examples/in-memory.c:60,1
    - Dst: fclose
      Src: /src/libzip/examples/in-memory.c:61,1
    - Dst: malloc
      Src: /src/libzip/examples/in-memory.c:65,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:66,1
    - Dst: fclose
      Src: /src/libzip/examples/in-memory.c:67,1
    - Dst: fread
      Src: /src/libzip/examples/in-memory.c:71,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:72,1
    - Dst: strerror
      Src: /src/libzip/examples/in-memory.c:72,1
    - Dst: free
      Src: /src/libzip/examples/in-memory.c:73,1
    - Dst: fclose
      Src: /src/libzip/examples/in-memory.c:74,1
    - Dst: fclose
      Src: /src/libzip/examples/in-memory.c:78,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 3
    argNames:
    - datap
    - sizep
    - archive
    argTypes:
    - void**
    - size_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 82
    functionName: get_data
    functionSourceFile: /src/libzip/examples/in-memory.c
    functionUses: 0
    functionsReached:
    - fopen
    - fread
    - free
    - fprintf
    - fileno
    - malloc
    - fstat
    - fclose
    - strerror
    linkageType: ''
    returnType: int
    signature: int get_data(void **datap, size_t *sizep, const char *archive)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - za
    argTypes:
    - zip_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: modify_archive
    functionSourceFile: /src/libzip/examples/in-memory.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int modify_archive(zip_t *za)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: remove
      Src: /src/libzip/examples/in-memory.c:95,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:96,1
    - Dst: strerror
      Src: /src/libzip/examples/in-memory.c:96,1
    - Dst: fopen
      Src: /src/libzip/examples/in-memory.c:102,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:103,1
    - Dst: strerror
      Src: /src/libzip/examples/in-memory.c:103,1
    - Dst: fwrite
      Src: /src/libzip/examples/in-memory.c:106,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:107,1
    - Dst: strerror
      Src: /src/libzip/examples/in-memory.c:107,1
    - Dst: fclose
      Src: /src/libzip/examples/in-memory.c:108,1
    - Dst: fclose
      Src: /src/libzip/examples/in-memory.c:111,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:112,1
    - Dst: strerror
      Src: /src/libzip/examples/in-memory.c:112,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - data
    - size
    - archive
    argTypes:
    - void*
    - size_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 117
    functionName: use_data
    functionSourceFile: /src/libzip/examples/in-memory.c
    functionUses: 0
    functionsReached:
    - fopen
    - fprintf
    - fwrite
    - remove
    - fclose
    - strerror
    linkageType: ''
    returnType: int
    signature: int use_data(void *data, size_t size, const char *archive)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:129,1
    - Dst: get_data
      Src: /src/libzip/examples/in-memory.c:135,1
    - Dst: zip_error_init
      Src: /src/libzip/examples/in-memory.c:139,1
    - Dst: zip_source_buffer_create
      Src: /src/libzip/examples/in-memory.c:141,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:142,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/in-memory.c:142,1
    - Dst: free
      Src: /src/libzip/examples/in-memory.c:143,1
    - Dst: zip_error_fini
      Src: /src/libzip/examples/in-memory.c:144,1
    - Dst: zip_open_from_source
      Src: /src/libzip/examples/in-memory.c:149,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:150,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/in-memory.c:150,1
    - Dst: zip_source_free
      Src: /src/libzip/examples/in-memory.c:151,1
    - Dst: zip_error_fini
      Src: /src/libzip/examples/in-memory.c:152,1
    - Dst: zip_error_fini
      Src: /src/libzip/examples/in-memory.c:155,1
    - Dst: zip_source_keep
      Src: /src/libzip/examples/in-memory.c:158,1
    - Dst: modify_archive
      Src: /src/libzip/examples/in-memory.c:161,1
    - Dst: zip_close
      Src: /src/libzip/examples/in-memory.c:164,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:165,1
    - Dst: zip_strerror
      Src: /src/libzip/examples/in-memory.c:165,1
    - Dst: zip_source_is_deleted
      Src: /src/libzip/examples/in-memory.c:172,1
    - Dst: zip_source_stat
      Src: /src/libzip/examples/in-memory.c:179,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:180,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/in-memory.c:180,1
    - Dst: zip_source_error
      Src: /src/libzip/examples/in-memory.c:180,1
    - Dst: zip_source_open
      Src: /src/libzip/examples/in-memory.c:186,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:187,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/in-memory.c:187,1
    - Dst: zip_source_error
      Src: /src/libzip/examples/in-memory.c:187,1
    - Dst: malloc
      Src: /src/libzip/examples/in-memory.c:190,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:191,1
    - Dst: strerror
      Src: /src/libzip/examples/in-memory.c:191,1
    - Dst: zip_source_close
      Src: /src/libzip/examples/in-memory.c:192,1
    - Dst: zip_source_read
      Src: /src/libzip/examples/in-memory.c:195,1
    - Dst: fprintf
      Src: /src/libzip/examples/in-memory.c:196,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/in-memory.c:196,1
    - Dst: zip_source_error
      Src: /src/libzip/examples/in-memory.c:196,1
    - Dst: zip_source_close
      Src: /src/libzip/examples/in-memory.c:197,1
    - Dst: free
      Src: /src/libzip/examples/in-memory.c:198,1
    - Dst: zip_source_close
      Src: /src/libzip/examples/in-memory.c:201,1
    - Dst: zip_source_free
      Src: /src/libzip/examples/in-memory.c:205,1
    - Dst: use_data
      Src: /src/libzip/examples/in-memory.c:208,1
    - Dst: free
      Src: /src/libzip/examples/in-memory.c:210,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 58
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 120
    functionDepth: 5
    functionLinenumber: 120
    functionLinenumberEnd: 213
    functionName: main
    functionSourceFile: /src/libzip/examples/in-memory.c
    functionUses: 0
    functionsReached:
    - free
    - zip_error_init
    - zip_error_strerror
    - zip_source_free
    - zip_strerror
    - zip_source_read
    - get_data
    - modify_archive
    - zip_source_open
    - zip_close
    - zip_source_error
    - zip_source_keep
    - fprintf
    - zip_source_close
    - zip_source_buffer_create
    - zip_open_from_source
    - zip_error_fini
    - zip_source_is_deleted
    - strerror
    - malloc
    - use_data
    - zip_source_stat
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_discard
      Src: /src/libzip/examples/autoclose-archive.c:56,1
    - Dst: free
      Src: /src/libzip/examples/autoclose-archive.c:58,1
    - Dst: zip_source_pass_to_lower_layer
      Src: /src/libzip/examples/autoclose-archive.c:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - src
    - ud
    - data
    - length
    - command
    argTypes:
    - zip_source_t*
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 50
    functionDepth: 3
    functionLinenumber: 50
    functionLinenumberEnd: 65
    functionName: callback
    functionSourceFile: /src/libzip/examples/autoclose-archive.c
    functionUses: 6
    functionsReached:
    - free
    - zip_source_pass_to_lower_layer
    - zip_discard
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t callback(zip_source_t *src, void *ud, void *data, zip_uint64_t
      length, zip_source_cmd_t command)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/examples/autoclose-archive.c:68,1
    - Dst: zip_error_set
      Src: /src/libzip/examples/autoclose-archive.c:73,1
    - Dst: zip_source_layered_create
      Src: /src/libzip/examples/autoclose-archive.c:81,1
    - Dst: free
      Src: /src/libzip/examples/autoclose-archive.c:85,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - source
    - archive
    - error
    argTypes:
    - zip_source_t*
    - zip_t*
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 89
    functionName: create_layered_autoclose
    functionSourceFile: /src/libzip/examples/autoclose-archive.c
    functionUses: 0
    functionsReached:
    - zip_source_layered_create
    - free
    - malloc
    - zip_error_set
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *create_layered_autoclose(zip_source_t *source, zip_t
      *archive, zip_error_t *error)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/examples/autoclose-archive.c:100,1
    - Dst: zip_open
      Src: /src/libzip/examples/autoclose-archive.c:108,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/examples/autoclose-archive.c:110,1
    - Dst: fprintf
      Src: /src/libzip/examples/autoclose-archive.c:111,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/autoclose-archive.c:111,1
    - Dst: zip_error_fini
      Src: /src/libzip/examples/autoclose-archive.c:112,1
    - Dst: exit
      Src: /src/libzip/examples/autoclose-archive.c:113,1
    - Dst: zip_name_locate
      Src: /src/libzip/examples/autoclose-archive.c:116,1
    - Dst: fprintf
      Src: /src/libzip/examples/autoclose-archive.c:117,1
    - Dst: zip_strerror
      Src: /src/libzip/examples/autoclose-archive.c:117,1
    - Dst: zip_discard
      Src: /src/libzip/examples/autoclose-archive.c:118,1
    - Dst: exit
      Src: /src/libzip/examples/autoclose-archive.c:119,1
    - Dst: zip_source_zip_file
      Src: /src/libzip/examples/autoclose-archive.c:121,1
    - Dst: fprintf
      Src: /src/libzip/examples/autoclose-archive.c:122,1
    - Dst: zip_strerror
      Src: /src/libzip/examples/autoclose-archive.c:122,1
    - Dst: zip_discard
      Src: /src/libzip/examples/autoclose-archive.c:123,1
    - Dst: exit
      Src: /src/libzip/examples/autoclose-archive.c:124,1
    - Dst: create_layered_autoclose
      Src: /src/libzip/examples/autoclose-archive.c:128,1
    - Dst: fprintf
      Src: /src/libzip/examples/autoclose-archive.c:129,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/autoclose-archive.c:129,1
    - Dst: zip_source_free
      Src: /src/libzip/examples/autoclose-archive.c:130,1
    - Dst: zip_discard
      Src: /src/libzip/examples/autoclose-archive.c:131,1
    - Dst: exit
      Src: /src/libzip/examples/autoclose-archive.c:132,1
    - Dst: zip_open
      Src: /src/libzip/examples/autoclose-archive.c:135,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/examples/autoclose-archive.c:136,1
    - Dst: fprintf
      Src: /src/libzip/examples/autoclose-archive.c:137,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/autoclose-archive.c:137,1
    - Dst: zip_error_fini
      Src: /src/libzip/examples/autoclose-archive.c:138,1
    - Dst: zip_source_free
      Src: /src/libzip/examples/autoclose-archive.c:139,1
    - Dst: exit
      Src: /src/libzip/examples/autoclose-archive.c:140,1
    - Dst: zip_file_add
      Src: /src/libzip/examples/autoclose-archive.c:144,1
    - Dst: fprintf
      Src: /src/libzip/examples/autoclose-archive.c:145,1
    - Dst: zip_strerror
      Src: /src/libzip/examples/autoclose-archive.c:145,1
    - Dst: zip_source_free
      Src: /src/libzip/examples/autoclose-archive.c:146,1
    - Dst: zip_discard
      Src: /src/libzip/examples/autoclose-archive.c:147,1
    - Dst: exit
      Src: /src/libzip/examples/autoclose-archive.c:148,1
    - Dst: zip_close
      Src: /src/libzip/examples/autoclose-archive.c:151,1
    - Dst: fprintf
      Src: /src/libzip/examples/autoclose-archive.c:152,1
    - Dst: zip_strerror
      Src: /src/libzip/examples/autoclose-archive.c:152,1
    - Dst: zip_discard
      Src: /src/libzip/examples/autoclose-archive.c:153,1
    - Dst: exit
      Src: /src/libzip/examples/autoclose-archive.c:154,1
    - Dst: exit
      Src: /src/libzip/examples/autoclose-archive.c:157,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 49
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 92
    functionDepth: 5
    functionLinenumber: 92
    functionLinenumberEnd: 158
    functionName: main
    functionSourceFile: /src/libzip/examples/autoclose-archive.c
    functionUses: 0
    functionsReached:
    - zip_strerror
    - zip_file_add
    - fprintf
    - zip_name_locate
    - zip_error_strerror
    - zip_source_free
    - exit
    - zip_discard
    - create_layered_autoclose
    - zip_error_fini
    - zip_open
    - zip_close
    - zip_error_init_with_code
    - zip_source_zip_file
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libzip/examples/add-compressed-data.c:58,1
    - Dst: zip_source_pass_to_lower_layer
      Src: /src/libzip/examples/add-compressed-data.c:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 5
    argNames:
    - src
    - ud
    - data
    - length
    - command
    argTypes:
    - zip_source_t*
    - void*
    - void*
    - zip_uint64_t
    - zip_source_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 80
    functionName: callback
    functionSourceFile: /src/libzip/examples/add-compressed-data.c
    functionUses: 6
    functionsReached:
    - free
    - zip_source_pass_to_lower_layer
    linkageType: ''
    returnType: zip_int64_t
    signature: zip_int64_t callback(zip_source_t *src, void *ud, void *data, zip_uint64_t
      length, zip_source_cmd_t command)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libzip/examples/add-compressed-data.c:83,1
    - Dst: zip_error_set
      Src: /src/libzip/examples/add-compressed-data.c:88,1
    - Dst: zip_source_layered_create
      Src: /src/libzip/examples/add-compressed-data.c:98,1
    - Dst: free
      Src: /src/libzip/examples/add-compressed-data.c:102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 5
    argNames:
    - source
    - uncompressed_size
    - crc
    - compression_method
    - error
    argTypes:
    - zip_source_t*
    - zip_uint64_t
    - zip_uint32_t
    - zip_uint32_t
    - zip_error_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 106
    functionName: create_layered_compressed_source
    functionSourceFile: /src/libzip/examples/add-compressed-data.c
    functionUses: 0
    functionsReached:
    - zip_source_layered_create
    - free
    - malloc
    - zip_error_set
    linkageType: ''
    returnType: zip_source_t
    signature: zip_source_t *create_layered_compressed_source(zip_source_t *source,
      zip_uint64_t uncompressed_size, zip_uint32_t crc, zip_uint32_t compression_method,
      zip_error_t *error)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libzip/examples/add-compressed-data.c:130,1
    - Dst: zip_open
      Src: /src/libzip/examples/add-compressed-data.c:135,1
    - Dst: zip_error_init_with_code
      Src: /src/libzip/examples/add-compressed-data.c:137,1
    - Dst: fprintf
      Src: /src/libzip/examples/add-compressed-data.c:138,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/add-compressed-data.c:138,1
    - Dst: zip_error_fini
      Src: /src/libzip/examples/add-compressed-data.c:139,1
    - Dst: exit
      Src: /src/libzip/examples/add-compressed-data.c:140,1
    - Dst: zip_source_buffer
      Src: /src/libzip/examples/add-compressed-data.c:144,1
    - Dst: fprintf
      Src: /src/libzip/examples/add-compressed-data.c:145,1
    - Dst: zip_strerror
      Src: /src/libzip/examples/add-compressed-data.c:145,1
    - Dst: zip_discard
      Src: /src/libzip/examples/add-compressed-data.c:146,1
    - Dst: exit
      Src: /src/libzip/examples/add-compressed-data.c:147,1
    - Dst: create_layered_compressed_source
      Src: /src/libzip/examples/add-compressed-data.c:151,1
    - Dst: fprintf
      Src: /src/libzip/examples/add-compressed-data.c:152,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/add-compressed-data.c:152,1
    - Dst: zip_source_free
      Src: /src/libzip/examples/add-compressed-data.c:153,1
    - Dst: zip_discard
      Src: /src/libzip/examples/add-compressed-data.c:154,1
    - Dst: exit
      Src: /src/libzip/examples/add-compressed-data.c:155,1
    - Dst: zip_file_add
      Src: /src/libzip/examples/add-compressed-data.c:158,1
    - Dst: fprintf
      Src: /src/libzip/examples/add-compressed-data.c:159,1
    - Dst: zip_strerror
      Src: /src/libzip/examples/add-compressed-data.c:159,1
    - Dst: zip_source_free
      Src: /src/libzip/examples/add-compressed-data.c:160,1
    - Dst: zip_discard
      Src: /src/libzip/examples/add-compressed-data.c:161,1
    - Dst: exit
      Src: /src/libzip/examples/add-compressed-data.c:162,1
    - Dst: zip_close
      Src: /src/libzip/examples/add-compressed-data.c:165,1
    - Dst: fprintf
      Src: /src/libzip/examples/add-compressed-data.c:166,1
    - Dst: zip_strerror
      Src: /src/libzip/examples/add-compressed-data.c:166,1
    - Dst: zip_discard
      Src: /src/libzip/examples/add-compressed-data.c:167,1
    - Dst: exit
      Src: /src/libzip/examples/add-compressed-data.c:168,1
    - Dst: exit
      Src: /src/libzip/examples/add-compressed-data.c:171,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 123
    functionDepth: 5
    functionLinenumber: 123
    functionLinenumberEnd: 172
    functionName: main
    functionSourceFile: /src/libzip/examples/add-compressed-data.c
    functionUses: 0
    functionsReached:
    - zip_strerror
    - zip_file_add
    - create_layered_compressed_source
    - fprintf
    - zip_error_strerror
    - zip_source_free
    - exit
    - zip_discard
    - zip_error_fini
    - zip_open
    - zip_close
    - zip_source_buffer
    - zip_error_init_with_code
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zip_error_init
      Src: /src/libzip/examples/windows-open.c:41,1
    - Dst: zip_source_win32w_create
      Src: /src/libzip/examples/windows-open.c:43,1
    - Dst: fprintf
      Src: /src/libzip/examples/windows-open.c:44,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/windows-open.c:44,1
    - Dst: zip_error_fini
      Src: /src/libzip/examples/windows-open.c:45,1
    - Dst: zip_open_from_source
      Src: /src/libzip/examples/windows-open.c:50,1
    - Dst: fprintf
      Src: /src/libzip/examples/windows-open.c:51,1
    - Dst: zip_error_strerror
      Src: /src/libzip/examples/windows-open.c:51,1
    - Dst: zip_source_free
      Src: /src/libzip/examples/windows-open.c:52,1
    - Dst: zip_error_fini
      Src: /src/libzip/examples/windows-open.c:53,1
    - Dst: zip_error_fini
      Src: /src/libzip/examples/windows-open.c:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - name
    - flags
    argTypes:
    - wchar_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 36
    functionDepth: 3
    functionLinenumber: 36
    functionLinenumberEnd: 59
    functionName: windows_open
    functionSourceFile: /src/libzip/examples/windows-open.c
    functionUses: 0
    functionsReached:
    - fprintf
    - zip_error_init
    - zip_error_strerror
    - zip_source_free
    - zip_open_from_source
    - zip_error_fini
    - zip_source_win32w_create
    linkageType: ''
    returnType: zip_t
    signature: zip_t *windows_open(const wchar_t *name, int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libzip/examples/cmake-project/cmake-example.c:37,1
    - Dst: zip_libzip_version
      Src: /src/libzip/examples/cmake-project/cmake-example.c:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: main
    functionSourceFile: /src/libzip/examples/cmake-project/cmake-example.c
    functionUses: 0
    functionsReached:
    - printf
    - zip_libzip_version
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
Fuzzer filename: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c
Fuzzing method: LLVMFuzzerTestOneInput
included-header-files:
- errno.h
- gnutls/crypto.h
- nettle/aes.h
- bcrypt.h
- zipint.h
- time.h
- stdio.h
- sys/types.h
- strings.h
- compat.h
- getopt.h
- zstd_errors.h
- stdint.h
- openssl/hmac.h
- fcntl.h
- sys/attr.h
- zstd.h
- sys/mount.h
- zip_source_file_stdio.h
- unistd.h
- zip_read_fuzzer_common.h
- math.h
- ctype.h
- io.h
- nettle/pbkdf2.h
- CommonCrypto/CommonCrypto.h
- zip_crypto_win.h
- zlib.h
- gnutls/gnutls.h
- ziptool.c
- stdarg.h
- openssl/evp.h
- zip_crypto_gnutls.h
- sys/stat.h
- linux/fs.h
- wincrypt.h
- zip_source_file_win32.h
- zip_random.h
- sys/ioctl.h
- stddef.h
- zipconf.h
- aclapi.h
- zip_crypto_openssl.h
- stdbool.h
- zip_crypto.h
- zip_crypto_commoncrypto.h
- bzlib.h
- config.h
- fts.h
- diff_output.h
- zip_source_file.h
- zip.h
- sys/param.h
- sys/clonefile.h
- string.h
- lzma.h
- openssl/rand.h
- windows.h
- stdlib.h
- limits.h
report: name
sources:
- function_names:
  - ZIP_MIN
  - get_stdin_commands
  - add_nul
  - cancel_callback
  - cancel
  - extract_as
  - is_seekable
  - regress_fseek
  - unchange_all
  - unchange_one
  - zin_close
  - regress_fopen
  - regress_fread
  - read_hole
  - get_whence
  - read_to_memory
  - source_nul_cb
  - source_nul
  - write_memory_src_to_file
  - ziptool_open
  - ziptool_post_close
  source_file: /src/libzip/regress/programs/ziptool_regress.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPTIONS_REGRESS
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libzip/regress/programs/ziptool_regress.c
      type_or_value: '"F:Himx"'
    - item_type: preproc_def
      name: USAGE_REGRESS
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libzip/regress/programs/ziptool_regress.c
      type_or_value: '" [-Himx] [-F fragment-size]"'
    - item_type: preproc_def
      name: GETOPT_REGRESS
      pos:
        line_end: 51
        line_start: 35
        source_file: /src/libzip/regress/programs/ziptool_regress.c
      type_or_value: "case 'H':                                       \\\n        source_type
        = SOURCE_TYPE_HOLE;             \\\n        break;                                      \\\n
        \   case 'i':                                       \\\n        commands_from_stdin
        = 1;                    \\\n        break;                                      \\\n
        \   case 'm':                                       \\\n        source_type
        = SOURCE_TYPE_IN_MEMORY;        \\\n        break;                                      \\\n
        \   case 'F':                                       \\\n        fragment_size
        = strtoull(optarg, NULL, 10); \\\n        break;                                      \\\n
        \   case 'x':                                       \\\n        hex_encoded_filenames
        = 1;                  \\\n        break;"
    - item_type: preproc_def
      name: DISPATCH_REGRESS
      pos:
        line_end: 65
        line_start: 54
        source_file: /src/libzip/regress/programs/ziptool_regress.c
      type_or_value: "{\"add_nul\", 2, \"name length\", \"add NUL bytes\", add_nul},
        \\\n    {\"cancel\", 1, \"limit\", \"cancel writing archive when limit% have
        been written (calls print_progress)\", cancel}, \\\n    {\"extract_as\", 2,
        \"index name\", \"extract file data to given file name\", extract_as}, \\\n
        \   {\"fopen\", 1, \"name\", \"open archive entry\", regress_fopen}, \\\n
        \   {\"fread\", 2, \"file_index length\", \"read from fopened file and print\",
        regress_fread}, \\\n    {\"fseek\", 3, \"file_index offset whence\", \"seek
        in fopened file\", regress_fseek}, \\\n    {\"is_seekable\", 1, \"index\",
        \"report if entry is seekable\", is_seekable}, \\\n    {\"unchange\", 1, \"index\",
        \"revert changes for entry\", unchange_one}, \\\n    {\"unchange_all\", 0,
        \"\", \"revert all changes\", unchange_all}, \\\n    {\"zin_close\", 1, \"index\",
        \"close input zip_source (for internal tests)\", zin_close}"
    - item_type: preproc_def
      name: PRECLOSE_REGRESS
      pos:
        line_end: 76
        line_start: 66
        source_file: /src/libzip/regress/programs/ziptool_regress.c
      type_or_value: "do {                                                           \\\n
        \     unsigned int file_idx = 0;                                 \\\n      for
        (file_idx = 0; file_idx < z_files_count; ++file_idx) { \\\n          if (zip_fclose
        (z_files[file_idx]) != 0) {             \\\n              err = 1;                                           \\\n
        \         }                                                      \\\n      }
        \                                                         \\\n  }                                                              \\\n
        \ while (0)"
    - item_type: preproc_def
      name: MAX_STDIN_ARGC
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/libzip/regress/programs/ziptool_regress.c
      type_or_value: '128'
    - item_type: preproc_def
      name: MAX_STDIN_LENGTH
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/libzip/regress/programs/ziptool_regress.c
      type_or_value: '8192'
    - item_type: preproc_def
      name: REGRESS_PREPARE_ARGS
      pos:
        line_end: 93
        line_start: 87
        source_file: /src/libzip/regress/programs/ziptool_regress.c
      type_or_value: "if (commands_from_stdin) {       \\\n        argc = get_stdin_commands();
        \\\n        arg = 0;                     \\\n        argv = stdin_argv;           \\\n
        \   }"
    structs:
    - fields:
      - name: error
        type: zip_error_t
      - name: length
        type: zip_uint64_t
      - name: offset
        type: zip_uint64_t
      item_type: struct
      name: source_nul
      pos:
        line_end: 489
        line_start: 485
        source_file: /src/libzip/regress/programs/ziptool_regress.c
    typedefs: []
    union: []
- function_names:
  - MY_MIN
  - source_hole_create
  - buffer_free
  - buffer_from_file
  - buffer_new
  - buffer_read
  - buffer_read_file
  - buffer_seek
  - buffer_to_file
  - buffer_write
  - get_u64
  - only_nul
  - write_nuls
  - write_u64
  - hole_free
  - hole_new
  - source_hole_cb
  source_file: /src/libzip/regress/programs/source_hole.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: EFTYPE
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/libzip/regress/programs/source_hole.c
      type_or_value: EINVAL
    - item_type: preproc_def
      name: FRAGMENT_SIZE
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/libzip/regress/programs/source_hole.c
      type_or_value: (8 * 1024)
    - item_type: preproc_def
      name: MARK_BEGIN
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libzip/regress/programs/source_hole.c
      type_or_value: '"NiH0"'
    - item_type: preproc_def
      name: MARK_DATA
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/libzip/regress/programs/source_hole.c
      type_or_value: '"NiH1"'
    - item_type: preproc_def
      name: MARK_NUL
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/libzip/regress/programs/source_hole.c
      type_or_value: '"NiH2"'
    structs:
    - fields:
      - name: fragment_size
        type: zip_uint64_t
      - name: '**fragment'
        type: zip_uint8_t
      - name: nfragments
        type: zip_uint64_t
      - name: size
        type: zip_uint64_t
      - name: offset
        type: zip_uint64_t
      item_type: struct
      name: buffer
      pos:
        line_end: 65
        line_start: 59
        source_file: /src/libzip/regress/programs/source_hole.c
    - fields:
      - name: error
        type: zip_error_t
      - name: '*fname'
        type: char
      - name: '*in'
        type: buffer_t
      - name: '*out'
        type: buffer_t
      item_type: struct
      name: hole
      pos:
        line_end: 86
        line_start: 81
        source_file: /src/libzip/regress/programs/source_hole.c
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/libzip/regress/programs/fopen_unchanged.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/libzip/regress/programs/tryopen.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: TRYOPEN_USAGE
      pos:
        line_end: 50
        line_start: 43
        source_file: /src/libzip/regress/programs/tryopen.c
      type_or_value: "\"usage: %s [-cent] file\\n\\n\"       \\\n    \"\\t-c\\tcheck
        consistency\\n\"        \\\n    \"\\t-e\\texclusively open archive\\n\" \\\n
        \   \"\\t-n\\tcreate new file\\n\"          \\\n    \"\\t-s\\tprint error
        string\\n\"       \\\n    \"\\t-t\\ttruncate file to size 0\\n\""
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/libzip/regress/programs/add_from_filep.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/libzip/regress/programs/files_differ.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_secure_nonrandom
  source_file: /src/libzip/regress/programs/zip_nonrandom.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - copy_source
  - open_compressed
  - open_file
  - usage
  - main
  source_file: /src/libzip/regress/programs/hole.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - do_read
  source_file: /src/libzip/regress/programs/fread.c
  types:
    enum:
    - enumerators:
      - name: WHEN_NEVER
      - name: WHEN_OPEN
      - name: WHEN_CLOSE
      - name: WHEN_READ
      item_type: enum
      name: when
      pos:
        line_end: 49
        line_start: 44
        source_file: /src/libzip/regress/programs/fread.c
    preproc_defs:
    - item_type: preproc_def
      name: USAGE
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/libzip/regress/programs/fread.c
      type_or_value: '"usage: %s [-v] archive\n"'
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/libzip/regress/programs/fseek.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: USAGE
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libzip/regress/programs/fseek.c
      type_or_value: '"usage: %s archive index offset\n"'
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/libzip/regress/programs/can_clone_file.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: size
        type: uint32_t
      - name: capabilities
        type: vol_capabilities_attr_t
      item_type: struct
      name: volume_attributes
      pos:
        line_end: 61
        line_start: 58
        source_file: /src/libzip/regress/programs/can_clone_file.c
    typedefs: []
    union: []
- function_names:
  - BOTH_ARE_ZIPS
  - main
  - compare_zip
  - compute_crc
  - is_directory
  - list_directory
  - list_zip
  - comment_compare
  - compare_list
  - INC
  - PRINT
  - ef_read
  - ef_compare
  - ef_order
  - ef_print
  - entry_cmp
  - entry_ignore
  - entry_paranoia_checks
  - entry_print
  - entry_start_file
  - test_file
  - map_enum
  - archive_init
  - archive_deinit
  - archive_grow_entries
  - entry_init
  - entry_deinit
  source_file: /src/libzip/src/zipcmp.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PROGRAM
      pos:
        line_end: 158
        line_start: 157
        source_file: /src/libzip/src/zipcmp.c
      type_or_value: '"zipcmp"'
    - item_type: preproc_def
      name: USAGE
      pos:
        line_end: 160
        line_start: 159
        source_file: /src/libzip/src/zipcmp.c
      type_or_value: '"usage: %s [-" OPTIONS "] archive1 archive2\n"'
    - item_type: preproc_def
      name: OPTIONS
      pos:
        line_end: 182
        line_start: 181
        source_file: /src/libzip/src/zipcmp.c
      type_or_value: '"ChipqsTtVv"'
    structs:
    - fields:
      - name: '*name'
        type: char
      - name: '*za'
        type: zip_t
      - name: nentry
        type: zip_uint64_t
      - name: nentry_allocated
        type: zip_uint64_t
      - name: '*entry'
        type: struct entry
      - name: '*comment'
        type: char
      - name: comment_length
        type: size_t
      item_type: struct
      name: archive
      pos:
        line_end: 67
        line_start: 59
        source_file: /src/libzip/src/zipcmp.c
    - fields:
      - name: '*name'
        type: char
      - name: flags
        type: zip_uint16_t
      - name: id
        type: zip_uint16_t
      - name: size
        type: zip_uint16_t
      - name: '*data'
        type: zip_uint8_t
      item_type: struct
      name: ef
      pos:
        line_end: 75
        line_start: 69
        source_file: /src/libzip/src/zipcmp.c
    - fields:
      - name: '*name'
        type: char
      - name: size
        type: zip_uint64_t
      - name: crc
        type: zip_uint32_t
      - name: comp_method
        type: zip_uint32_t
      - name: last_modification_time
        type: time_t
      - name: '*extra_fields'
        type: struct ef
      - name: n_extra_fields
        type: zip_uint16_t
      - name: '*comment'
        type: char
      - name: comment_length
        type: zip_uint32_t
      item_type: struct
      name: entry
      pos:
        line_end: 87
        line_start: 77
        source_file: /src/libzip/src/zipcmp.c
    - fields:
      - name: value
        type: uint32_t
      - name: '*const name'
        type: char
      item_type: struct
      name: enum_map_t
      pos:
        line_end: 93
        line_start: 90
        source_file: /src/libzip/src/zipcmp.c
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libzip/src/getopt.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - cat_impl_backend
  - cat_impl
  - add
  - add_dir
  - add_file
  - add_from_zip
  - cat
  - cat_partial
  - count_extra
  - count_extra_by_id
  - delete
  - delete_extra
  - delete_extra_by_id
  - get_archive_comment
  - get_archive_flag
  - get_extra
  - get_extra_by_id
  - get_file_comment
  - get_num_entries
  - name_locate
  - progress_callback
  - print_progress
  - zrename
  - replace_file_contents
  - set_extra
  - set_archive_comment
  - set_archive_flag
  - set_file_comment
  - set_file_compression
  - set_file_encryption
  - set_file_dostime
  - set_file_mtime
  - set_file_mtime_all
  - set_password
  - zstat
  - parse_archive_flag
  - get_flags
  - get_compression_method
  - get_encryption_method
  - hexdump
  - read_from_file
  - dispatch
  - usage
  - ziptool_post_close
  - main
  - BIN2HEX
  - HEX2BIN
  - encode_filename
  - decode_filename
  source_file: /src/libzip/src/ziptool.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: STDIN_FILENO
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/libzip/src/ziptool.c
      type_or_value: _fileno(stdin)
    - item_type: preproc_def
      name: OPTIONS_REGRESS
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/libzip/src/ziptool.c
      type_or_value: '""'
    - item_type: preproc_def
      name: USAGE_REGRESS
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/libzip/src/ziptool.c
      type_or_value: '""'
    - item_type: preproc_def
      name: ziptool_open
      pos:
        line_end: 978
        line_start: 977
        source_file: /src/libzip/src/ziptool.c
      type_or_value: read_from_file
    - item_type: preproc_def
      name: FILENAME_BUFFER_LENGTH
      pos:
        line_end: 1101
        line_start: 1100
        source_file: /src/libzip/src/ziptool.c
      type_or_value: (2 * 64 * 1024)
    structs:
    - fields:
      - name: '*cmdline_name'
        type: char
      - name: argument_count
        type: int
      - name: '*arg_names'
        type: char
      - name: '*description'
        type: char
      - name: (*function)(char *argv[])
        type: int
      item_type: struct
      name: dispatch_table_s
      pos:
        line_end: 63
        line_start: 57
        source_file: /src/libzip/src/ziptool.c
    - fields:
      - name: percentage
        type: double
      - name: limit
        type: double
      item_type: struct
      name: progress_userdata_s
      pos:
        line_end: 444
        line_start: 441
        source_file: /src/libzip/src/ziptool.c
    typedefs: []
    union: []
- function_names:
  - main
  - confirm_replace
  - merge_zip
  - copy_file
  - copy_extra_fields
  source_file: /src/libzip/src/zipmerge.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PROGRAM
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/libzip/src/zipmerge.c
      type_or_value: '"zipmerge"'
    - item_type: preproc_def
      name: USAGE
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/libzip/src/zipmerge.c
      type_or_value: '"usage: %s [-DhIikSsV] target-zip zip...\n"'
    - item_type: preproc_def
      name: OPTIONS
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/libzip/src/zipmerge.c
      type_or_value: '"hVDiIksS"'
    - item_type: preproc_def
      name: CONFIRM_ALL_YES
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/libzip/src/zipmerge.c
      type_or_value: '0x001'
    - item_type: preproc_def
      name: CONFIRM_ALL_NO
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/libzip/src/zipmerge.c
      type_or_value: '0x002'
    - item_type: preproc_def
      name: CONFIRM_SAME_YES
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/libzip/src/zipmerge.c
      type_or_value: '0x010'
    - item_type: preproc_def
      name: CONFIRM_SAME_NO
      pos:
        line_end: 78
        line_start: 77
        source_file: /src/libzip/src/zipmerge.c
      type_or_value: '0x020'
    structs: []
    typedefs: []
    union: []
- function_names:
  - getopt
  source_file: /src/libzip/src/getopt.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BADCH
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libzip/src/getopt.c
      type_or_value: (int)'?'
    - item_type: preproc_def
      name: BADARG
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/libzip/src/getopt.c
      type_or_value: (int)':'
    - item_type: preproc_def
      name: EMSG
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/libzip/src/getopt.c
      type_or_value: '""'
    structs: []
    typedefs: []
    union: []
- function_names:
  - ensure_header
  - diff_output_init
  - diff_output_start_file
  - diff_output_end_file
  - diff_output
  - diff_output_file
  - diff_output_data
  source_file: /src/libzip/src/diff_output.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_BYTES
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/libzip/src/diff_output.c
      type_or_value: '64'
    structs: []
    typedefs: []
    union: []
- function_names:
  - PRINTF_LIKE
  source_file: /src/libzip/src/diff_output.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*archive_names[2]'
        type: char
      - name: '*file_name'
        type: char
      - name: file_size
        type: zip_uint64_t
      - name: file_crc
        type: zip_uint32_t
      - name: file_mtime
        type: zip_uint64_t
      - name: verbose
        type: int
      item_type: struct
      name: diff_output_t
      pos:
        line_end: 12
        line_start: 5
        source_file: /src/libzip/src/diff_output.h
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/libzip/ossfuzz/zip_write_encrypt_aes256_file_fuzzer.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/libzip/ossfuzz/zip_write_encrypt_pkware_file_fuzzer.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - u8
  - u16
  - take
  - LLVMFuzzerTestOneInput
  source_file: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*p'
        type: uint8_t
      - name: len
        type: size_t
      - name: pos
        type: size_t
      item_type: struct
      name: stream_t
      pos:
        line_end: 43
        line_start: 39
        source_file: /src/libzip/ossfuzz/zip_write_roundtrip_fuzzer.c
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/libzip/ossfuzz/zip_read_file_fuzzer.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - fuzzer_read
  source_file: /src/libzip/ossfuzz/zip_read_fuzzer_common.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/libzip/ossfuzz/fuzz_main.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: N_PROBE_IDS
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libzip/ossfuzz/zip_read_metadata_fuzzer.c
      type_or_value: (sizeof(PROBE_IDS) / sizeof(PROBE_IDS[0]))
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/libzip/ossfuzz/zip_read_fuzzer.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_buffer_data
  - _zip_buffer_free
  - _zip_buffer_eof
  - _zip_buffer_get
  - _zip_buffer_get_16
  - _zip_buffer_get_32
  - _zip_buffer_get_64
  - _zip_buffer_get_8
  - _zip_buffer_left
  - _zip_buffer_read
  - _zip_buffer_new
  - _zip_buffer_new_from_source
  - _zip_buffer_offset
  - _zip_buffer_ok
  - _zip_buffer_peek
  - _zip_buffer_put
  - _zip_buffer_put_16
  - _zip_buffer_put_32
  - _zip_buffer_put_64
  - _zip_buffer_put_8
  - _zip_buffer_set_offset
  - _zip_buffer_skip
  - _zip_buffer_size
  source_file: /src/libzip/lib/zip_buffer.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_open
  - zip_open_from_source
  - _is_truncated_zip
  - _zip_open
  - _zip_set_open_error
  - _zip_read_cdir
  - check_magic
  - _zip_checkcons
  - _zip_headercomp
  - _zip_allocate_new
  - _zip_file_exists
  - _zip_find_central_dir
  - find_eocd
  - _zip_read_eocd
  - check_eocd
  - _zip_read_eocd64
  - decode_hex
  - zip_check_torrentzip
  source_file: /src/libzip/lib/zip_open.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_fclose
  source_file: /src/libzip/lib/zip_fclose.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_t *zip_source_file(zip_t *za, const char *fname, zip_uint64_t start,
    zip_int64_t len)
  - zip_source_t *zip_source_file_create(const char *fname, zip_uint64_t start, zip_int64_t
    length, zip_error_t *error)
  source_file: /src/libzip/lib/zip_source_file_win32_utf8.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_error_code_system
  - zip_error_code_zip
  - zip_error_fini
  - zip_error_init
  - zip_error_init_with_code
  - zip_error_system_type
  - _zip_error_clear
  - _zip_error_copy
  - _zip_error_get
  - zip_error_set
  - zip_error_set_from_source
  - zip_error_to_data
  source_file: /src/libzip/lib/zip_error.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libzip/lib/zip_source_file_win32.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _WIN32_WINNT
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libzip/lib/zip_source_file_win32.h
      type_or_value: '0x0501'
    structs:
    - fields:
      - name: '*(*allocate_tempname)(const char *name, size_t extra_chars, size_t
          *lengthp)'
        type: char
      - name: (*make_tempname)(char *buf, size_t len, const char *name, zip_uint32_t
          i)
        type: void
      - name: '*(*string_duplicate)(const char *string)'
        type: char
      item_type: struct
      name: zip_win32_file_operations
      pos:
        line_end: 62
        line_start: 51
        source_file: /src/libzip/lib/zip_source_file_win32.h
    typedefs:
    - item_type: typedef
      name: zip_win32_file_operations_t
      pos:
        line_end: 64
        line_start: 64
        source_file: /src/libzip/lib/zip_source_file_win32.h
      type: zip_win32_file_operations
    union: []
- function_names:
  - free_list
  - hash_string
  - hash_resize
  - size_for_capacity
  - _zip_hash_new
  - _zip_hash_free
  - _zip_hash_add
  - _zip_hash_delete
  - _zip_hash_lookup
  - _zip_hash_reserve_capacity
  - _zip_hash_revert
  source_file: /src/libzip/lib/zip_hash.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: HASH_MULTIPLIER
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libzip/lib/zip_hash.c
      type_or_value: '33'
    - item_type: preproc_def
      name: HASH_START
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/libzip/lib/zip_hash.c
      type_or_value: '5381'
    - item_type: preproc_def
      name: HASH_MAX_FILL
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/libzip/lib/zip_hash.c
      type_or_value: '.75'
    - item_type: preproc_def
      name: HASH_MIN_FILL
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/libzip/lib/zip_hash.c
      type_or_value: '.01'
    - item_type: preproc_def
      name: HASH_MIN_SIZE
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/libzip/lib/zip_hash.c
      type_or_value: '256'
    - item_type: preproc_def
      name: HASH_MAX_SIZE
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/libzip/lib/zip_hash.c
      type_or_value: 0x80000000ul
    structs:
    - fields:
      - name: '*name'
        type: zip_uint8_t
      - name: orig_index
        type: zip_int64_t
      - name: current_index
        type: zip_int64_t
      - name: '*next'
        type: struct zip_hash_entry
      - name: hash_value
        type: zip_uint32_t
      item_type: struct
      name: zip_hash_entry
      pos:
        line_end: 55
        line_start: 49
        source_file: /src/libzip/lib/zip_hash.c
    - fields:
      - name: table_size
        type: zip_uint32_t
      - name: nentries
        type: zip_uint64_t
      - name: '**table'
        type: zip_hash_entry_t
      item_type: struct
      name: zip_hash
      pos:
        line_end: 62
        line_start: 58
        source_file: /src/libzip/lib/zip_hash.c
    typedefs:
    - item_type: typedef
      name: zip_hash_entry_t
      pos:
        line_end: 56
        line_start: 56
        source_file: /src/libzip/lib/zip_hash.c
      type: zip_hash_entry
    union: []
- function_names:
  - zip_unchange
  - _zip_unchange
  source_file: /src/libzip/lib/zip_unchange.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_set_default_password
  source_file: /src/libzip/lib/zip_set_default_password.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_set_archive_flag
  source_file: /src/libzip/lib/zip_set_archive_flag.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_stat_init
  - _zip_stat_merge
  source_file: /src/libzip/lib/zip_stat_init.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_int64_t::zip_add
  source_file: /src/libzip/lib/zip_add.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_file_set_external_attributes
  source_file: /src/libzip/lib/zip_file_set_external_attributes.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_t *zip_source_file(zip_t *za, const char *fname, zip_uint64_t start,
    zip_int64_t len)
  - zip_source_t *zip_source_file_create(const char *fname, zip_uint64_t start, zip_int64_t
    length, zip_error_t *error)
  - _zip_stdio_op_commit_write
  - _zip_stdio_op_create_temp_output
  - _zip_stdio_op_create_temp_output_cloning
  - _zip_stdio_op_open
  - _zip_stdio_op_remove
  - _zip_stdio_op_rollback_write
  - _zip_stdio_op_strdup
  - _zip_stdio_op_write
  - create_temp_file
  - _zip_fopen_close_on_exec
  source_file: /src/libzip/lib/zip_source_file_stdio_named.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_secure_random
  - zip_random_uint32
  source_file: /src/libzip/lib/zip_random_win32.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_get_archive_flag
  source_file: /src/libzip/lib/zip_get_archive_flag.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_file_stat_init
  - zip_source_file_common_new
  - read_file
  source_file: /src/libzip/lib/zip_source_file_common.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_secure_random
  - zip_random_uint32
  - zip_secure_random
  - zip_random_uint32
  source_file: /src/libzip/lib/zip_random_unix.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: srandom
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/libzip/lib/zip_random_unix.c
      type_or_value: srand
    - item_type: preproc_def
      name: random
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/libzip/lib/zip_random_unix.c
      type_or_value: rand
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_unchange_all
  source_file: /src/libzip/lib/zip_unchange_all.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_set_file_compression
  source_file: /src/libzip/lib/zip_set_file_compression.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_int64_t::zip_dir_add
  source_file: /src/libzip/lib/zip_dir_add.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_fopen_index_encrypted
  - _zip_file_new
  source_file: /src/libzip/lib/zip_fopen_index_encrypted.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_t *zip_source_win32a(zip_t *za, const char *fname, zip_uint64_t start,
    zip_int64_t len)
  - zip_source_t *zip_source_win32a_create(const char *fname, zip_uint64_t start,
    zip_int64_t length, zip_error_t *error)
  - ansi_allocate_tempname
  - ansi_create_file
  - ansi_delete_file
  - ansi_get_file_attributes
  - ansi_get_file_attributes_ex
  - ansi_make_tempname
  - ansi_move_file
  - ansi_set_file_attributes
  - ansi_find_first_file
  source_file: /src/libzip/lib/zip_source_file_win32_ansi.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_secure_random
  - zip_random_uint32
  source_file: /src/libzip/lib/zip_random_uwp.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_t *zip_source_filep(zip_t *za, FILE *file, zip_uint64_t start, zip_int64_t
    len)
  - zip_source_t *zip_source_filep_create(FILE *file, zip_uint64_t start, zip_int64_t
    length, zip_error_t *error)
  - _zip_stdio_op_close
  - _zip_stdio_op_read
  - _zip_stdio_op_seek
  - _zip_stdio_op_stat
  - _zip_stdio_op_tell
  source_file: /src/libzip/lib/zip_source_file_stdio.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: S_IWUSR
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/libzip/lib/zip_source_file_stdio.c
      type_or_value: _S_IWRITE
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_pkware_encode
  - encrypt_header
  - pkware_encrypt
  - trad_pkware_new
  - trad_pkware_free
  source_file: /src/libzip/lib/zip_source_pkware_encode.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*password'
        type: char
      - name: keys
        type: zip_pkware_keys_t
      - name: '*buffer'
        type: zip_buffer_t
      - name: eof
        type: bool
      - name: dostime
        type: zip_dostime_t
      - name: error
        type: zip_error_t
      item_type: struct
      name: trad_pkware
      pos:
        line_end: 47
        line_start: 40
        source_file: /src/libzip/lib/zip_source_pkware_encode.c
    typedefs: []
    union: []
- function_names:
  - zip_unchange_archive
  source_file: /src/libzip/lib/zip_unchange_archive.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_get_num_files
  source_file: /src/libzip/lib/zip_get_num_files.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_discard
  source_file: /src/libzip/lib/zip_discard.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - hmac_new
  - hmac_free
  - _zip_crypto_aes_new
  - _zip_crypto_aes_free
  - _zip_crypto_aes_encrypt_block
  - _zip_crypto_hmac_new
  - _zip_crypto_hmac_free
  - _zip_crypto_hmac_output
  - zip_secure_random
  source_file: /src/libzip/lib/zip_crypto_openssl.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_crypto_pbkdf2
  - hmacFree
  - hmacPrecomputeDigest
  - hmacInit
  - hmacCalculateInternal
  - hmacCalculate
  - myxor
  - pbkdf2
  - _zip_crypto_pbkdf2
  - _zip_crypto_aes_new
  - _zip_crypto_aes_free
  - _zip_crypto_aes_encrypt_block
  - _zip_crypto_hmac_new
  - _zip_crypto_hmac_free
  - _zip_crypto_hmac
  - _zip_crypto_hmac_output
  - zip_secure_random
  source_file: /src/libzip/lib/zip_crypto_win.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: DIGEST_SIZE
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/libzip/lib/zip_crypto_win.c
      type_or_value: '20'
    - item_type: preproc_def
      name: BLOCK_SIZE
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/libzip/lib/zip_crypto_win.c
      type_or_value: '64'
    structs:
    - fields:
      - name: hAlgorithm
        type: BCRYPT_ALG_HANDLE
      - name: hInnerHash
        type: BCRYPT_HASH_HANDLE
      - name: hOuterHash
        type: BCRYPT_HASH_HANDLE
      - name: cbHashObject
        type: ULONG
      - name: pbInnerHash
        type: PUCHAR
      - name: pbOuterHash
        type: PUCHAR
      item_type: struct
      name: PRF_CTX
      pos:
        line_end: 115
        line_start: 108
        source_file: /src/libzip/lib/zip_crypto_win.c
    - fields:
      - name: hAlgorithm
        type: BCRYPT_ALG_HANDLE
      - name: hKey
        type: BCRYPT_KEY_HANDLE
      - name: cbKeyObject
        type: ULONG
      - name: pbKeyObject
        type: PUCHAR
      item_type: struct
      name: _zip_crypto_aes_s
      pos:
        line_end: 300
        line_start: 295
        source_file: /src/libzip/lib/zip_crypto_win.c
    - fields:
      - name: hAlgorithm
        type: BCRYPT_ALG_HANDLE
      - name: hHash
        type: BCRYPT_HASH_HANDLE
      - name: cbHashObject
        type: DWORD
      - name: pbHashObject
        type: PUCHAR
      - name: cbHash
        type: DWORD
      - name: pbHash
        type: PUCHAR
      item_type: struct
      name: _zip_crypto_hmac_s
      pos:
        line_end: 376
        line_start: 369
        source_file: /src/libzip/lib/zip_crypto_win.c
    typedefs: []
    union: []
- function_names:
  - zip_replace
  source_file: /src/libzip/lib/zip_replace.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_file_get_offset
  - _zip_file_get_end
  source_file: /src/libzip/lib/zip_file_get_offset.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_file_strerror
  source_file: /src/libzip/lib/zip_file_strerror.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libzip/lib/zip_source_file_stdio.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_progress_end
  - _zip_progress_free
  - _zip_progress_new
  - _zip_progress_free_progress_callback
  - _zip_progress_free_cancel_callback
  - _zip_progress_set_progress_callback
  - _zip_progress_set_cancel_callback
  - _zip_progress_start
  - _zip_progress_subrange
  - _zip_progress_update
  - zip_register_progress_callback_with_state
  - zip_register_cancel_callback_with_state
  - _zip_legacy_progress_callback
  - zip_register_progress_callback
  source_file: /src/libzip/lib/zip_progress.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*za'
        type: zip_t
      - name: callback_progress
        type: zip_progress_callback
      - name: (*ud_progress_free)(void *)
        type: void
      - name: '*ud_progress'
        type: void
      - name: callback_cancel
        type: zip_cancel_callback
      - name: (*ud_cancel_free)(void *)
        type: void
      - name: '*ud_cancel'
        type: void
      - name: precision
        type: double
      - name: last_update
        type: double
      - name: start
        type: double
      - name: end
        type: double
      item_type: struct
      name: zip_progress
      pos:
        line_end: 58
        line_start: 40
        source_file: /src/libzip/lib/zip_progress.c
    - fields:
      - name: callback
        type: zip_progress_callback_t
      item_type: struct
      name: legacy_ud
      pos:
        line_end: 253
        line_start: 251
        source_file: /src/libzip/lib/zip_progress.c
    typedefs: []
    union: []
- function_names:
  - zip_source_t *zip_source_window_create(zip_source_t *src, zip_uint64_t start,
    zip_int64_t len, zip_error_t *error)
  - _zip_source_window_new
  - _zip_source_set_source_archive
  - _zip_source_invalidate
  - window_read
  - _zip_deregister_source
  - _zip_register_source
  source_file: /src/libzip/lib/zip_source_window.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: start
        type: zip_uint64_t
      - name: end
        type: zip_uint64_t
      - name: end_valid
        type: bool
      - name: '*source_archive'
        type: zip_t
      - name: source_index
        type: zip_uint64_t
      - name: offset
        type: zip_uint64_t
      - name: stat
        type: zip_stat_t
      - name: stat_invalid
        type: zip_uint64_t
      - name: attributes
        type: zip_file_attributes_t
      - name: dostime
        type: zip_dostime_t
      - name: dostime_valid
        type: bool
      - name: error
        type: zip_error_t
      - name: supports
        type: zip_int64_t
      - name: needs_seek
        type: bool
      item_type: struct
      name: window
      pos:
        line_end: 57
        line_start: 38
        source_file: /src/libzip/lib/zip_source_window.c
    typedefs: []
    union: []
- function_names:
  - zip_source_is_deleted
  source_file: /src/libzip/lib/zip_source_is_deleted.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_int64_t::zip_source_tell_write
  source_file: /src/libzip/lib/zip_source_tell_write.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_guess_encoding
  - _zip_unicode_to_utf8_len
  - _zip_unicode_to_utf8
  - _zip_cp437_to_utf8
  source_file: /src/libzip/lib/zip_utf-8.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: UTF_8_LEN_2_MASK
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/libzip/lib/zip_utf-8.c
      type_or_value: '0xe0'
    - item_type: preproc_def
      name: UTF_8_LEN_2_MATCH
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/libzip/lib/zip_utf-8.c
      type_or_value: '0xc0'
    - item_type: preproc_def
      name: UTF_8_LEN_3_MASK
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/libzip/lib/zip_utf-8.c
      type_or_value: '0xf0'
    - item_type: preproc_def
      name: UTF_8_LEN_3_MATCH
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/libzip/lib/zip_utf-8.c
      type_or_value: '0xe0'
    - item_type: preproc_def
      name: UTF_8_LEN_4_MASK
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/libzip/lib/zip_utf-8.c
      type_or_value: '0xf8'
    - item_type: preproc_def
      name: UTF_8_LEN_4_MATCH
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/libzip/lib/zip_utf-8.c
      type_or_value: '0xf0'
    - item_type: preproc_def
      name: UTF_8_CONTINUE_MASK
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/libzip/lib/zip_utf-8.c
      type_or_value: '0xc0'
    - item_type: preproc_def
      name: UTF_8_CONTINUE_MATCH
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/libzip/lib/zip_utf-8.c
      type_or_value: '0x80'
    structs: []
    typedefs: []
    union: []
- function_names:
  - aes_crypt
  - _zip_winzip_aes_new
  - _zip_winzip_aes_encrypt
  - _zip_winzip_aes_decrypt
  - _zip_winzip_aes_finish
  - _zip_winzip_aes_free
  source_file: /src/libzip/lib/zip_winzip_aes.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_KEY_LENGTH
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libzip/lib/zip_winzip_aes.c
      type_or_value: '256'
    - item_type: preproc_def
      name: PBKDF2_ITERATIONS
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/libzip/lib/zip_winzip_aes.c
      type_or_value: '1000'
    structs:
    - fields:
      - name: '*aes'
        type: _zip_crypto_aes_t
      - name: '*hmac'
        type: _zip_crypto_hmac_t
      - name: counter[ZIP_CRYPTO_AES_BLOCK_LENGTH]
        type: zip_uint8_t
      - name: pad[ZIP_CRYPTO_AES_BLOCK_LENGTH]
        type: zip_uint8_t
      - name: pad_offset
        type: int
      item_type: struct
      name: _zip_winzip_aes
      pos:
        line_end: 50
        line_start: 44
        source_file: /src/libzip/lib/zip_winzip_aes.c
    typedefs: []
    union: []
- function_names:
  - maximum_compressed_size
  - allocate
  - compress_allocate
  - decompress_allocate
  - deallocate
  - general_purpose_bit_flags
  - map_error
  - start
  - end
  - input
  - end_of_input
  - process
  source_file: /src/libzip/lib/zip_algorithm_xz.c
  types:
    enum:
    - enumerators:
      - name: INCOMPLETE
      - name: DONE
      - name: OUTPUT
      item_type: enum
      name: header_state
      pos:
        line_end: 45
        line_start: 41
        source_file: /src/libzip/lib/zip_algorithm_xz.c
    preproc_defs:
    - item_type: preproc_def
      name: HEADER_BYTES_ZIP
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/libzip/lib/zip_algorithm_xz.c
      type_or_value: '9'
    - item_type: preproc_def
      name: HEADER_MAGIC_LENGTH
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/libzip/lib/zip_algorithm_xz.c
      type_or_value: '4'
    - item_type: preproc_def
      name: HEADER_MAGIC1_OFFSET
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libzip/lib/zip_algorithm_xz.c
      type_or_value: '0'
    - item_type: preproc_def
      name: HEADER_MAGIC2_OFFSET
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/libzip/lib/zip_algorithm_xz.c
      type_or_value: '2'
    - item_type: preproc_def
      name: HEADER_SIZE_OFFSET
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/libzip/lib/zip_algorithm_xz.c
      type_or_value: '9'
    - item_type: preproc_def
      name: HEADER_SIZE_LENGTH
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/libzip/lib/zip_algorithm_xz.c
      type_or_value: '8'
    - item_type: preproc_def
      name: HEADER_PARAMETERS_LENGTH
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/libzip/lib/zip_algorithm_xz.c
      type_or_value: '5'
    - item_type: preproc_def
      name: HEADER_LZMA_ALONE_LENGTH
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libzip/lib/zip_algorithm_xz.c
      type_or_value: (HEADER_PARAMETERS_LENGTH + HEADER_SIZE_LENGTH)
    structs:
    - fields:
      - name: '*error'
        type: zip_error_t
      - name: compress
        type: bool
      - name: compression_flags
        type: zip_uint32_t
      - name: end_of_input
        type: bool
      - name: zstr
        type: lzma_stream
      - name: method
        type: zip_uint16_t
      - name: header[HEADER_MAGIC_LENGTH + HEADER_LZMA_ALONE_LENGTH]
        type: zip_uint8_t
      - name: header_bytes_offset
        type: zip_uint8_t
      - name: header_state
        type: enum header_state
      - name: uncompresssed_size
        type: zip_uint64_t
      item_type: struct
      name: ctx
      pos:
        line_end: 85
        line_start: 56
        source_file: /src/libzip/lib/zip_algorithm_xz.c
    typedefs: []
    union: []
- function_names:
  - zip_libzip_version
  source_file: /src/libzip/lib/zip_libzip_version.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_file_rename
  source_file: /src/libzip/lib/zip_file_rename.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_strerror
  source_file: /src/libzip/lib/zip_strerror.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_int64_t::zip_file_add
  source_file: /src/libzip/lib/zip_file_add.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_remove
  source_file: /src/libzip/lib/zip_source_remove.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _snwprintf_s
  - ftello
  - zip_localtime
  - zip_localtime
  - memcpy_s
  - snprintf_s
  - strncpy_s
  - strerrorlen_s
  - strerror_s
  - strerrorlen_s
  - S_ISDIR
  - S_ISREG
  source_file: /src/libzip/lib/compat.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: __STDC_WANT_LIB_EXT1__
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/libzip/lib/compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: ZIP_EXTERN
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libzip/lib/compat.h
      type_or_value: __declspec(dllexport)
    - item_type: preproc_def
      name: 'true'
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/libzip/lib/compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: 'false'
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/libzip/lib/compat.h
      type_or_value: '0'
    - item_type: preproc_def
      name: EOPNOTSUPP
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/libzip/lib/compat.h
      type_or_value: EINVAL
    - item_type: preproc_def
      name: EOVERFLOW
      pos:
        line_end: 78
        line_start: 77
        source_file: /src/libzip/lib/compat.h
      type_or_value: EFBIG
    - item_type: preproc_def
      name: O_CLOEXEC
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/libzip/lib/compat.h
      type_or_value: '0'
    - item_type: preproc_def
      name: close
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/libzip/lib/compat.h
      type_or_value: _close
    - item_type: preproc_def
      name: dup
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/libzip/lib/compat.h
      type_or_value: _dup
    - item_type: preproc_def
      name: fdopen
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/libzip/lib/compat.h
      type_or_value: _fdopen
    - item_type: preproc_def
      name: fileno
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/libzip/lib/compat.h
      type_or_value: _fileno
    - item_type: preproc_def
      name: snprintf
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/libzip/lib/compat.h
      type_or_value: _snprintf
    - item_type: preproc_def
      name: strdup
      pos:
        line_end: 111
        line_start: 110
        source_file: /src/libzip/lib/compat.h
      type_or_value: _strdup
    - item_type: preproc_def
      name: _setmode
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/libzip/lib/compat.h
      type_or_value: setmode
    - item_type: preproc_def
      name: strtoll
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/libzip/lib/compat.h
      type_or_value: _strtoi64
    - item_type: preproc_def
      name: strtoull
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/libzip/lib/compat.h
      type_or_value: _strtoui64
    - item_type: preproc_def
      name: unlink
      pos:
        line_end: 124
        line_start: 123
        source_file: /src/libzip/lib/compat.h
      type_or_value: _unlink
    - item_type: preproc_def
      name: zip_os_stat
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/libzip/lib/compat.h
      type_or_value: _stat64
    - item_type: preproc_def
      name: zip_os_fstat
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/libzip/lib/compat.h
      type_or_value: _fstat64
    - item_type: preproc_def
      name: zip_os_fseek
      pos:
        line_end: 135
        line_start: 134
        source_file: /src/libzip/lib/compat.h
      type_or_value: _fseeki64
    - item_type: preproc_def
      name: zip_os_ftell
      pos:
        line_end: 136
        line_start: 135
        source_file: /src/libzip/lib/compat.h
      type_or_value: _ftelli64
    - item_type: preproc_def
      name: ZIP_FSEEK_MAX
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_INT64_MAX
    - item_type: preproc_def
      name: ZIP_FSEEK_MIN
      pos:
        line_end: 138
        line_start: 137
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_INT64_MIN
    - item_type: preproc_def
      name: zip_os_fstat
      pos:
        line_end: 143
        line_start: 142
        source_file: /src/libzip/lib/compat.h
      type_or_value: fstat
    - item_type: preproc_def
      name: zip_os_stat
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/libzip/lib/compat.h
      type_or_value: stat
    - item_type: preproc_def
      name: ZIP_OFF_MAX
      pos:
        line_end: 150
        line_start: 149
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_INT64_MAX
    - item_type: preproc_def
      name: ZIP_OFF_MIN
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_INT64_MIN
    - item_type: preproc_def
      name: ZIP_OFF_MAX
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_INT32_MAX
    - item_type: preproc_def
      name: ZIP_OFF_MIN
      pos:
        line_end: 154
        line_start: 153
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_INT32_MIN
    - item_type: preproc_def
      name: ZIP_OFF_MAX
      pos:
        line_end: 156
        line_start: 155
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_INT16_MAX
    - item_type: preproc_def
      name: ZIP_OFF_MIN
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_INT16_MIN
    - item_type: preproc_def
      name: ZIP_FSEEK_MAX
      pos:
        line_end: 162
        line_start: 161
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_OFF_MAX
    - item_type: preproc_def
      name: ZIP_FSEEK_MIN
      pos:
        line_end: 163
        line_start: 162
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_OFF_MIN
    - item_type: preproc_def
      name: zip_os_fseek
      pos:
        line_end: 165
        line_start: 164
        source_file: /src/libzip/lib/compat.h
      type_or_value: fseeko
    - item_type: preproc_def
      name: zip_os_ftell
      pos:
        line_end: 166
        line_start: 165
        source_file: /src/libzip/lib/compat.h
      type_or_value: ftello
    - item_type: preproc_def
      name: ZIP_FSEEK_MAX
      pos:
        line_end: 172
        line_start: 171
        source_file: /src/libzip/lib/compat.h
      type_or_value: LONG_MAX
    - item_type: preproc_def
      name: ZIP_FSEEK_MIN
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/libzip/lib/compat.h
      type_or_value: LONG_MIN
    - item_type: preproc_def
      name: zip_os_fseek
      pos:
        line_end: 175
        line_start: 174
        source_file: /src/libzip/lib/compat.h
      type_or_value: fseek
    - item_type: preproc_def
      name: zip_os_ftell
      pos:
        line_end: 176
        line_start: 175
        source_file: /src/libzip/lib/compat.h
      type_or_value: ftell
    - item_type: preproc_def
      name: zip_localtime
      pos:
        line_end: 191
        line_start: 190
        source_file: /src/libzip/lib/compat.h
      type_or_value: localtime_s
    - item_type: preproc_def
      name: zip_localtime
      pos:
        line_end: 195
        line_start: 194
        source_file: /src/libzip/lib/compat.h
      type_or_value: localtime_r
    - item_type: preproc_def
      name: snprintf_s
      pos:
        line_end: 209
        line_start: 208
        source_file: /src/libzip/lib/compat.h
      type_or_value: snprintf
    - item_type: preproc_def
      name: strcasecmp
      pos:
        line_end: 215
        line_start: 214
        source_file: /src/libzip/lib/compat.h
      type_or_value: _stricmp
    - item_type: preproc_def
      name: strcasecmp
      pos:
        line_end: 217
        line_start: 216
        source_file: /src/libzip/lib/compat.h
      type_or_value: stricmp
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 237
        line_start: 236
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_INT64_MAX
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 239
        line_start: 238
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_INT32_MAX
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 241
        line_start: 240
        source_file: /src/libzip/lib/compat.h
      type_or_value: ZIP_INT16_MAX
    - item_type: preproc_def
      name: PRId64
      pos:
        line_end: 249
        line_start: 248
        source_file: /src/libzip/lib/compat.h
      type_or_value: '"I64d"'
    - item_type: preproc_def
      name: PRId64
      pos:
        line_end: 251
        line_start: 250
        source_file: /src/libzip/lib/compat.h
      type_or_value: '"lld"'
    - item_type: preproc_def
      name: PRIu64
      pos:
        line_end: 257
        line_start: 256
        source_file: /src/libzip/lib/compat.h
      type_or_value: '"I64u"'
    - item_type: preproc_def
      name: PRIu64
      pos:
        line_end: 259
        line_start: 258
        source_file: /src/libzip/lib/compat.h
      type_or_value: '"llu"'
    structs: []
    typedefs:
    - item_type: typedef
      name: bool
      pos:
        line_end: 59
        line_start: 59
        source_file: /src/libzip/lib/compat.h
      type: char
    - item_type: typedef
      name: zip_off_t
      pos:
        line_end: 130
        line_start: 130
        source_file: /src/libzip/lib/compat.h
      type: zip_int64_t
    - item_type: typedef
      name: zip_os_stat_t
      pos:
        line_end: 131
        line_start: 131
        source_file: /src/libzip/lib/compat.h
      type: _stat64
    - item_type: typedef
      name: zip_os_stat_t
      pos:
        line_end: 141
        line_start: 141
        source_file: /src/libzip/lib/compat.h
      type: stat
    - item_type: typedef
      name: zip_off_t
      pos:
        line_end: 147
        line_start: 147
        source_file: /src/libzip/lib/compat.h
      type: off_t
    - item_type: typedef
      name: zip_off_t
      pos:
        line_end: 169
        line_start: 169
        source_file: /src/libzip/lib/compat.h
      type: long
    union: []
- function_names:
  - zip_get_name
  - _zip_get_name
  source_file: /src/libzip/lib/zip_get_name.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_error_clear
  source_file: /src/libzip/lib/zip_error_clear.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_close
  source_file: /src/libzip/lib/zip_source_close.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - update_keys
  - crypt_byte
  - _zip_pkware_keys_reset
  - _zip_pkware_encrypt
  - _zip_pkware_decrypt
  source_file: /src/libzip/lib/zip_pkware.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PKWARE_KEY0
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/libzip/lib/zip_pkware.c
      type_or_value: '305419896'
    - item_type: preproc_def
      name: PKWARE_KEY1
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/libzip/lib/zip_pkware.c
      type_or_value: '591751049'
    - item_type: preproc_def
      name: PKWARE_KEY2
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libzip/lib/zip_pkware.c
      type_or_value: '878082192'
    structs: []
    typedefs: []
    union: []
- function_names:
  - ZIP_DEPRECATED
  - ZIP_DEPRECATED
  - ZIP_SOURCE_MAKE_COMMAND_BITMASK
  - ZIP_SOURCE_CHECK_SUPPORTED
  - ZIP_SOURCE_GET_ARGS
  source_file: /src/libzip/lib/zip.h
  types:
    enum:
    - enumerators:
      - name: ZIP_SOURCE_READ
      - name: ZIP_SOURCE_STAT
      - name: ZIP_SOURCE_FREE
      - name: ZIP_SOURCE_TELL
      - name: ZIP_SOURCE_COMMIT_WRITE
      - name: ZIP_SOURCE_TELL_WRITE
      - name: ZIP_SOURCE_BEGIN_WRITE_CLONING
      - name: ZIP_SOURCE_WRITE
      - name: ZIP_SOURCE_REMOVE
      - name: ZIP_SOURCE_GET_FILE_ATTRIBUTES
      - name: ZIP_SOURCE_GET_DOS_TIME
      - name: ZIP_SOURCE_SUPPORTS_REOPEN
      - name: ZIP_SOURCE_OPEN
      - name: ZIP_SOURCE_CLOSE
      - name: ZIP_SOURCE_ERROR
      - name: ZIP_SOURCE_SEEK
      - name: ZIP_SOURCE_BEGIN_WRITE
      - name: ZIP_SOURCE_SUPPORTS
      - name: ZIP_SOURCE_ACCEPT_EMPTY
      - name: ZIP_SOURCE_SEEK_WRITE
      - name: ZIP_SOURCE_RESERVED_1
      - name: ZIP_SOURCE_ROLLBACK_WRITE
      item_type: enum
      name: zip_source_cmd
      pos:
        line_end: 271
        line_start: 248
        source_file: /src/libzip/lib/zip.h
    preproc_defs:
    - item_type: preproc_def
      name: ZIP_EXTERN
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/libzip/lib/zip.h
      type_or_value: __declspec(dllimport)
    - item_type: preproc_def
      name: ZIP_EXTERN
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/libzip/lib/zip.h
      type_or_value: __attribute__((visibility("default")))
    - item_type: preproc_def
      name: ZIP_CREATE
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/libzip/lib/zip.h
      type_or_value: '1'
    - item_type: preproc_def
      name: ZIP_EXCL
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/libzip/lib/zip.h
      type_or_value: '2'
    - item_type: preproc_def
      name: ZIP_CHECKCONS
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/libzip/lib/zip.h
      type_or_value: '4'
    - item_type: preproc_def
      name: ZIP_TRUNCATE
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/libzip/lib/zip.h
      type_or_value: '8'
    - item_type: preproc_def
      name: ZIP_RDONLY
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/libzip/lib/zip.h
      type_or_value: '16'
    - item_type: preproc_def
      name: ZIP_FL_NOCASE
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/libzip/lib/zip.h
      type_or_value: '1u     '
    - item_type: preproc_def
      name: ZIP_FL_NODIR
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/libzip/lib/zip.h
      type_or_value: '2u      '
    - item_type: preproc_def
      name: ZIP_FL_COMPRESSED
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/libzip/lib/zip.h
      type_or_value: '4u '
    - item_type: preproc_def
      name: ZIP_FL_UNCHANGED
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/libzip/lib/zip.h
      type_or_value: '8u  '
    - item_type: preproc_def
      name: ZIP_FL_ENCRYPTED
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/libzip/lib/zip.h
      type_or_value: '32u   '
    - item_type: preproc_def
      name: ZIP_FL_ENC_GUESS
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0u    '
    - item_type: preproc_def
      name: ZIP_FL_ENC_RAW
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/libzip/lib/zip.h
      type_or_value: '64u     '
    - item_type: preproc_def
      name: ZIP_FL_ENC_STRICT
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/libzip/lib/zip.h
      type_or_value: '128u '
    - item_type: preproc_def
      name: ZIP_FL_LOCAL
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/libzip/lib/zip.h
      type_or_value: '256u      '
    - item_type: preproc_def
      name: ZIP_FL_CENTRAL
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/libzip/lib/zip.h
      type_or_value: '512u    '
    - item_type: preproc_def
      name: ZIP_FL_ENC_UTF_8
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/libzip/lib/zip.h
      type_or_value: '2048u '
    - item_type: preproc_def
      name: ZIP_FL_ENC_CP437
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/libzip/lib/zip.h
      type_or_value: '4096u '
    - item_type: preproc_def
      name: ZIP_FL_OVERWRITE
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/libzip/lib/zip.h
      type_or_value: '8192u '
    - item_type: preproc_def
      name: ZIP_AFL_RDONLY
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/libzip/lib/zip.h
      type_or_value: '2u                                 '
    - item_type: preproc_def
      name: ZIP_AFL_IS_TORRENTZIP
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/libzip/lib/zip.h
      type_or_value: '4u                          '
    - item_type: preproc_def
      name: ZIP_AFL_WANT_TORRENTZIP
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/libzip/lib/zip.h
      type_or_value: '8u                        '
    - item_type: preproc_def
      name: ZIP_AFL_CREATE_OR_KEEP_FILE_FOR_EMPTY_ARCHIVE
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/libzip/lib/zip.h
      type_or_value: '16u '
    - item_type: preproc_def
      name: ZIP_EXTRA_FIELD_ALL
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/libzip/lib/zip.h
      type_or_value: ZIP_UINT16_MAX
    - item_type: preproc_def
      name: ZIP_EXTRA_FIELD_NEW
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/libzip/lib/zip.h
      type_or_value: ZIP_UINT16_MAX
    - item_type: preproc_def
      name: ZIP_LENGTH_TO_END
      pos:
        line_end: 126
        line_start: 125
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0'
    - item_type: preproc_def
      name: ZIP_LENGTH_UNCHECKED
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/libzip/lib/zip.h
      type_or_value: '(-2) '
    - item_type: preproc_def
      name: ZIP_ER_OK
      pos:
        line_end: 131
        line_start: 130
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0               '
    - item_type: preproc_def
      name: ZIP_ER_MULTIDISK
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/libzip/lib/zip.h
      type_or_value: '1        '
    - item_type: preproc_def
      name: ZIP_ER_RENAME
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/libzip/lib/zip.h
      type_or_value: '2           '
    - item_type: preproc_def
      name: ZIP_ER_CLOSE
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/libzip/lib/zip.h
      type_or_value: '3            '
    - item_type: preproc_def
      name: ZIP_ER_SEEK
      pos:
        line_end: 135
        line_start: 134
        source_file: /src/libzip/lib/zip.h
      type_or_value: '4             '
    - item_type: preproc_def
      name: ZIP_ER_READ
      pos:
        line_end: 136
        line_start: 135
        source_file: /src/libzip/lib/zip.h
      type_or_value: '5             '
    - item_type: preproc_def
      name: ZIP_ER_WRITE
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/libzip/lib/zip.h
      type_or_value: '6            '
    - item_type: preproc_def
      name: ZIP_ER_CRC
      pos:
        line_end: 138
        line_start: 137
        source_file: /src/libzip/lib/zip.h
      type_or_value: '7              '
    - item_type: preproc_def
      name: ZIP_ER_ZIPCLOSED
      pos:
        line_end: 139
        line_start: 138
        source_file: /src/libzip/lib/zip.h
      type_or_value: '8        '
    - item_type: preproc_def
      name: ZIP_ER_NOENT
      pos:
        line_end: 140
        line_start: 139
        source_file: /src/libzip/lib/zip.h
      type_or_value: '9            '
    - item_type: preproc_def
      name: ZIP_ER_EXISTS
      pos:
        line_end: 141
        line_start: 140
        source_file: /src/libzip/lib/zip.h
      type_or_value: '10          '
    - item_type: preproc_def
      name: ZIP_ER_OPEN
      pos:
        line_end: 142
        line_start: 141
        source_file: /src/libzip/lib/zip.h
      type_or_value: '11            '
    - item_type: preproc_def
      name: ZIP_ER_TMPOPEN
      pos:
        line_end: 143
        line_start: 142
        source_file: /src/libzip/lib/zip.h
      type_or_value: '12         '
    - item_type: preproc_def
      name: ZIP_ER_ZLIB
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/libzip/lib/zip.h
      type_or_value: '13            '
    - item_type: preproc_def
      name: ZIP_ER_MEMORY
      pos:
        line_end: 145
        line_start: 144
        source_file: /src/libzip/lib/zip.h
      type_or_value: '14          '
    - item_type: preproc_def
      name: ZIP_ER_CHANGED
      pos:
        line_end: 146
        line_start: 145
        source_file: /src/libzip/lib/zip.h
      type_or_value: '15         '
    - item_type: preproc_def
      name: ZIP_ER_COMPNOTSUPP
      pos:
        line_end: 147
        line_start: 146
        source_file: /src/libzip/lib/zip.h
      type_or_value: '16     '
    - item_type: preproc_def
      name: ZIP_ER_EOF
      pos:
        line_end: 148
        line_start: 147
        source_file: /src/libzip/lib/zip.h
      type_or_value: '17             '
    - item_type: preproc_def
      name: ZIP_ER_INVAL
      pos:
        line_end: 149
        line_start: 148
        source_file: /src/libzip/lib/zip.h
      type_or_value: '18           '
    - item_type: preproc_def
      name: ZIP_ER_NOZIP
      pos:
        line_end: 150
        line_start: 149
        source_file: /src/libzip/lib/zip.h
      type_or_value: '19           '
    - item_type: preproc_def
      name: ZIP_ER_INTERNAL
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/libzip/lib/zip.h
      type_or_value: '20        '
    - item_type: preproc_def
      name: ZIP_ER_INCONS
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/libzip/lib/zip.h
      type_or_value: '21          '
    - item_type: preproc_def
      name: ZIP_ER_REMOVE
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/libzip/lib/zip.h
      type_or_value: '22          '
    - item_type: preproc_def
      name: ZIP_ER_DELETED
      pos:
        line_end: 154
        line_start: 153
        source_file: /src/libzip/lib/zip.h
      type_or_value: '23         '
    - item_type: preproc_def
      name: ZIP_ER_ENCRNOTSUPP
      pos:
        line_end: 155
        line_start: 154
        source_file: /src/libzip/lib/zip.h
      type_or_value: '24     '
    - item_type: preproc_def
      name: ZIP_ER_RDONLY
      pos:
        line_end: 156
        line_start: 155
        source_file: /src/libzip/lib/zip.h
      type_or_value: '25          '
    - item_type: preproc_def
      name: ZIP_ER_NOPASSWD
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/libzip/lib/zip.h
      type_or_value: '26        '
    - item_type: preproc_def
      name: ZIP_ER_WRONGPASSWD
      pos:
        line_end: 158
        line_start: 157
        source_file: /src/libzip/lib/zip.h
      type_or_value: '27     '
    - item_type: preproc_def
      name: ZIP_ER_OPNOTSUPP
      pos:
        line_end: 159
        line_start: 158
        source_file: /src/libzip/lib/zip.h
      type_or_value: '28       '
    - item_type: preproc_def
      name: ZIP_ER_INUSE
      pos:
        line_end: 160
        line_start: 159
        source_file: /src/libzip/lib/zip.h
      type_or_value: '29           '
    - item_type: preproc_def
      name: ZIP_ER_TELL
      pos:
        line_end: 161
        line_start: 160
        source_file: /src/libzip/lib/zip.h
      type_or_value: '30            '
    - item_type: preproc_def
      name: ZIP_ER_COMPRESSED_DATA
      pos:
        line_end: 162
        line_start: 161
        source_file: /src/libzip/lib/zip.h
      type_or_value: '31 '
    - item_type: preproc_def
      name: ZIP_ER_CANCELLED
      pos:
        line_end: 163
        line_start: 162
        source_file: /src/libzip/lib/zip.h
      type_or_value: '32       '
    - item_type: preproc_def
      name: ZIP_ER_DATA_LENGTH
      pos:
        line_end: 164
        line_start: 163
        source_file: /src/libzip/lib/zip.h
      type_or_value: '33     '
    - item_type: preproc_def
      name: ZIP_ER_NOT_ALLOWED
      pos:
        line_end: 165
        line_start: 164
        source_file: /src/libzip/lib/zip.h
      type_or_value: '34     '
    - item_type: preproc_def
      name: ZIP_ER_TRUNCATED_ZIP
      pos:
        line_end: 166
        line_start: 165
        source_file: /src/libzip/lib/zip.h
      type_or_value: '35   '
    - item_type: preproc_def
      name: ZIP_ER_EF_TOO_LARGE
      pos:
        line_end: 167
        line_start: 166
        source_file: /src/libzip/lib/zip.h
      type_or_value: '36    '
    - item_type: preproc_def
      name: ZIP_ET_NONE
      pos:
        line_end: 171
        line_start: 170
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0   '
    - item_type: preproc_def
      name: ZIP_ET_SYS
      pos:
        line_end: 172
        line_start: 171
        source_file: /src/libzip/lib/zip.h
      type_or_value: '1    '
    - item_type: preproc_def
      name: ZIP_ET_ZLIB
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/libzip/lib/zip.h
      type_or_value: '2   '
    - item_type: preproc_def
      name: ZIP_ET_LIBZIP
      pos:
        line_end: 174
        line_start: 173
        source_file: /src/libzip/lib/zip.h
      type_or_value: '3 '
    - item_type: preproc_def
      name: ZIP_CM_DEFAULT
      pos:
        line_end: 178
        line_start: 177
        source_file: /src/libzip/lib/zip.h
      type_or_value: '-1 '
    - item_type: preproc_def
      name: ZIP_CM_STORE
      pos:
        line_end: 179
        line_start: 178
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0    '
    - item_type: preproc_def
      name: ZIP_CM_SHRINK
      pos:
        line_end: 180
        line_start: 179
        source_file: /src/libzip/lib/zip.h
      type_or_value: '1   '
    - item_type: preproc_def
      name: ZIP_CM_REDUCE_1
      pos:
        line_end: 181
        line_start: 180
        source_file: /src/libzip/lib/zip.h
      type_or_value: '2 '
    - item_type: preproc_def
      name: ZIP_CM_REDUCE_2
      pos:
        line_end: 182
        line_start: 181
        source_file: /src/libzip/lib/zip.h
      type_or_value: '3 '
    - item_type: preproc_def
      name: ZIP_CM_REDUCE_3
      pos:
        line_end: 183
        line_start: 182
        source_file: /src/libzip/lib/zip.h
      type_or_value: '4 '
    - item_type: preproc_def
      name: ZIP_CM_REDUCE_4
      pos:
        line_end: 184
        line_start: 183
        source_file: /src/libzip/lib/zip.h
      type_or_value: '5 '
    - item_type: preproc_def
      name: ZIP_CM_IMPLODE
      pos:
        line_end: 185
        line_start: 184
        source_file: /src/libzip/lib/zip.h
      type_or_value: '6  '
    - item_type: preproc_def
      name: ZIP_CM_DEFLATE
      pos:
        line_end: 187
        line_start: 186
        source_file: /src/libzip/lib/zip.h
      type_or_value: '8         '
    - item_type: preproc_def
      name: ZIP_CM_DEFLATE64
      pos:
        line_end: 188
        line_start: 187
        source_file: /src/libzip/lib/zip.h
      type_or_value: '9       '
    - item_type: preproc_def
      name: ZIP_CM_PKWARE_IMPLODE
      pos:
        line_end: 189
        line_start: 188
        source_file: /src/libzip/lib/zip.h
      type_or_value: '10 '
    - item_type: preproc_def
      name: ZIP_CM_BZIP2
      pos:
        line_end: 191
        line_start: 190
        source_file: /src/libzip/lib/zip.h
      type_or_value: '12 '
    - item_type: preproc_def
      name: ZIP_CM_LZMA
      pos:
        line_end: 193
        line_start: 192
        source_file: /src/libzip/lib/zip.h
      type_or_value: '14 '
    - item_type: preproc_def
      name: ZIP_CM_TERSE
      pos:
        line_end: 195
        line_start: 194
        source_file: /src/libzip/lib/zip.h
      type_or_value: '18 '
    - item_type: preproc_def
      name: ZIP_CM_LZ77
      pos:
        line_end: 196
        line_start: 195
        source_file: /src/libzip/lib/zip.h
      type_or_value: '19  '
    - item_type: preproc_def
      name: ZIP_CM_LZMA2
      pos:
        line_end: 198
        line_start: 197
        source_file: /src/libzip/lib/zip.h
      type_or_value: '33'
    - item_type: preproc_def
      name: ZIP_CM_ZSTD
      pos:
        line_end: 199
        line_start: 198
        source_file: /src/libzip/lib/zip.h
      type_or_value: '93    '
    - item_type: preproc_def
      name: ZIP_CM_XZ
      pos:
        line_end: 200
        line_start: 199
        source_file: /src/libzip/lib/zip.h
      type_or_value: '95      '
    - item_type: preproc_def
      name: ZIP_CM_JPEG
      pos:
        line_end: 201
        line_start: 200
        source_file: /src/libzip/lib/zip.h
      type_or_value: '96    '
    - item_type: preproc_def
      name: ZIP_CM_WAVPACK
      pos:
        line_end: 202
        line_start: 201
        source_file: /src/libzip/lib/zip.h
      type_or_value: '97 '
    - item_type: preproc_def
      name: ZIP_CM_PPMD
      pos:
        line_end: 203
        line_start: 202
        source_file: /src/libzip/lib/zip.h
      type_or_value: '98    '
    - item_type: preproc_def
      name: ZIP_EM_NONE
      pos:
        line_end: 207
        line_start: 206
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0         '
    - item_type: preproc_def
      name: ZIP_EM_TRAD_PKWARE
      pos:
        line_end: 208
        line_start: 207
        source_file: /src/libzip/lib/zip.h
      type_or_value: '1  '
    - item_type: preproc_def
      name: ZIP_EM_DES
      pos:
        line_end: 210
        line_start: 209
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x6601     '
    - item_type: preproc_def
      name: ZIP_EM_RC2_OLD
      pos:
        line_end: 211
        line_start: 210
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x6602 '
    - item_type: preproc_def
      name: ZIP_EM_3DES_168
      pos:
        line_end: 212
        line_start: 211
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x6603'
    - item_type: preproc_def
      name: ZIP_EM_3DES_112
      pos:
        line_end: 213
        line_start: 212
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x6609'
    - item_type: preproc_def
      name: ZIP_EM_PKZIP_AES_128
      pos:
        line_end: 214
        line_start: 213
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x660e'
    - item_type: preproc_def
      name: ZIP_EM_PKZIP_AES_192
      pos:
        line_end: 215
        line_start: 214
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x660f'
    - item_type: preproc_def
      name: ZIP_EM_PKZIP_AES_256
      pos:
        line_end: 216
        line_start: 215
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x6610'
    - item_type: preproc_def
      name: ZIP_EM_RC2
      pos:
        line_end: 217
        line_start: 216
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x6702 '
    - item_type: preproc_def
      name: ZIP_EM_RC4
      pos:
        line_end: 218
        line_start: 217
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x6801'
    - item_type: preproc_def
      name: ZIP_EM_AES_128
      pos:
        line_end: 220
        line_start: 219
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x0101 '
    - item_type: preproc_def
      name: ZIP_EM_AES_192
      pos:
        line_end: 221
        line_start: 220
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x0102'
    - item_type: preproc_def
      name: ZIP_EM_AES_256
      pos:
        line_end: 222
        line_start: 221
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0x0103'
    - item_type: preproc_def
      name: ZIP_EM_UNKNOWN
      pos:
        line_end: 223
        line_start: 222
        source_file: /src/libzip/lib/zip.h
      type_or_value: '0xffff '
    - item_type: preproc_def
      name: ZIP_OPSYS_DOS
      pos:
        line_end: 225
        line_start: 224
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x00u
    - item_type: preproc_def
      name: ZIP_OPSYS_AMIGA
      pos:
        line_end: 226
        line_start: 225
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x01u
    - item_type: preproc_def
      name: ZIP_OPSYS_OPENVMS
      pos:
        line_end: 227
        line_start: 226
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x02u
    - item_type: preproc_def
      name: ZIP_OPSYS_UNIX
      pos:
        line_end: 228
        line_start: 227
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x03u
    - item_type: preproc_def
      name: ZIP_OPSYS_VM_CMS
      pos:
        line_end: 229
        line_start: 228
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x04u
    - item_type: preproc_def
      name: ZIP_OPSYS_ATARI_ST
      pos:
        line_end: 230
        line_start: 229
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x05u
    - item_type: preproc_def
      name: ZIP_OPSYS_OS_2
      pos:
        line_end: 231
        line_start: 230
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x06u
    - item_type: preproc_def
      name: ZIP_OPSYS_MACINTOSH
      pos:
        line_end: 232
        line_start: 231
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x07u
    - item_type: preproc_def
      name: ZIP_OPSYS_Z_SYSTEM
      pos:
        line_end: 233
        line_start: 232
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x08u
    - item_type: preproc_def
      name: ZIP_OPSYS_CPM
      pos:
        line_end: 234
        line_start: 233
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x09u
    - item_type: preproc_def
      name: ZIP_OPSYS_WINDOWS_NTFS
      pos:
        line_end: 235
        line_start: 234
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0au
    - item_type: preproc_def
      name: ZIP_OPSYS_MVS
      pos:
        line_end: 236
        line_start: 235
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0bu
    - item_type: preproc_def
      name: ZIP_OPSYS_VSE
      pos:
        line_end: 237
        line_start: 236
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0cu
    - item_type: preproc_def
      name: ZIP_OPSYS_ACORN_RISC
      pos:
        line_end: 238
        line_start: 237
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0du
    - item_type: preproc_def
      name: ZIP_OPSYS_VFAT
      pos:
        line_end: 239
        line_start: 238
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0eu
    - item_type: preproc_def
      name: ZIP_OPSYS_ALTERNATE_MVS
      pos:
        line_end: 240
        line_start: 239
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0fu
    - item_type: preproc_def
      name: ZIP_OPSYS_BEOS
      pos:
        line_end: 241
        line_start: 240
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x10u
    - item_type: preproc_def
      name: ZIP_OPSYS_TANDEM
      pos:
        line_end: 242
        line_start: 241
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x11u
    - item_type: preproc_def
      name: ZIP_OPSYS_OS_400
      pos:
        line_end: 243
        line_start: 242
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x12u
    - item_type: preproc_def
      name: ZIP_OPSYS_OS_X
      pos:
        line_end: 244
        line_start: 243
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x13u
    - item_type: preproc_def
      name: ZIP_OPSYS_DEFAULT
      pos:
        line_end: 246
        line_start: 245
        source_file: /src/libzip/lib/zip.h
      type_or_value: ZIP_OPSYS_UNIX
    - item_type: preproc_def
      name: ZIP_SOURCE_SUPPORTS_READABLE
      pos:
        line_end: 286
        line_start: 280
        source_file: /src/libzip/lib/zip.h
      type_or_value: "(ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_OPEN) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_READ) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_CLOSE) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_STAT) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_ERROR) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_FREE))"
    - item_type: preproc_def
      name: ZIP_SOURCE_SUPPORTS_SEEKABLE
      pos:
        line_end: 291
        line_start: 287
        source_file: /src/libzip/lib/zip.h
      type_or_value: "(ZIP_SOURCE_SUPPORTS_READABLE \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_SEEK) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_TELL) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_SUPPORTS))"
    - item_type: preproc_def
      name: ZIP_SOURCE_SUPPORTS_WRITABLE
      pos:
        line_end: 300
        line_start: 292
        source_file: /src/libzip/lib/zip.h
      type_or_value: "(ZIP_SOURCE_SUPPORTS_SEEKABLE \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_BEGIN_WRITE) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_COMMIT_WRITE) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_ROLLBACK_WRITE) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_WRITE) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_SEEK_WRITE) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_TELL_WRITE) \\\n                                         |
        ZIP_SOURCE_MAKE_COMMAND_BITMASK(ZIP_SOURCE_REMOVE))"
    - item_type: preproc_def
      name: ZIP_STAT_NAME
      pos:
        line_end: 322
        line_start: 321
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0001u
    - item_type: preproc_def
      name: ZIP_STAT_INDEX
      pos:
        line_end: 323
        line_start: 322
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0002u
    - item_type: preproc_def
      name: ZIP_STAT_SIZE
      pos:
        line_end: 324
        line_start: 323
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0004u
    - item_type: preproc_def
      name: ZIP_STAT_COMP_SIZE
      pos:
        line_end: 325
        line_start: 324
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0008u
    - item_type: preproc_def
      name: ZIP_STAT_MTIME
      pos:
        line_end: 326
        line_start: 325
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0010u
    - item_type: preproc_def
      name: ZIP_STAT_CRC
      pos:
        line_end: 327
        line_start: 326
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0020u
    - item_type: preproc_def
      name: ZIP_STAT_COMP_METHOD
      pos:
        line_end: 328
        line_start: 327
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0040u
    - item_type: preproc_def
      name: ZIP_STAT_ENCRYPTION_METHOD
      pos:
        line_end: 329
        line_start: 328
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0080u
    - item_type: preproc_def
      name: ZIP_STAT_FLAGS
      pos:
        line_end: 330
        line_start: 329
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0100u
    - item_type: preproc_def
      name: ZIP_FILE_ATTRIBUTES_HOST_SYSTEM
      pos:
        line_end: 361
        line_start: 360
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0001u
    - item_type: preproc_def
      name: ZIP_FILE_ATTRIBUTES_ASCII
      pos:
        line_end: 362
        line_start: 361
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0002u
    - item_type: preproc_def
      name: ZIP_FILE_ATTRIBUTES_VERSION_NEEDED
      pos:
        line_end: 363
        line_start: 362
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0004u
    - item_type: preproc_def
      name: ZIP_FILE_ATTRIBUTES_EXTERNAL_FILE_ATTRIBUTES
      pos:
        line_end: 364
        line_start: 363
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0008u
    - item_type: preproc_def
      name: ZIP_FILE_ATTRIBUTES_GENERAL_PURPOSE_BIT_FLAGS
      pos:
        line_end: 365
        line_start: 364
        source_file: /src/libzip/lib/zip.h
      type_or_value: 0x0010u
    - item_type: preproc_def
      name: ZIP_FL_RECOMPRESS
      pos:
        line_end: 387
        line_start: 386
        source_file: /src/libzip/lib/zip.h
      type_or_value: '16u '
    structs:
    - fields:
      - name: offset
        type: zip_int64_t
      - name: whence
        type: int
      item_type: struct
      name: zip_source_args_seek
      pos:
        line_end: 307
        line_start: 304
        source_file: /src/libzip/lib/zip.h
    - fields:
      - name: zip_err
        type: int
      - name: sys_err
        type: int
      - name: '*_Nullable'
        type: char
      item_type: struct
      name: zip_error
      pos:
        line_end: 319
        line_start: 315
        source_file: /src/libzip/lib/zip.h
    - fields:
      - name: valid
        type: zip_uint64_t
      - name: '*_Nullable'
        type: char
      - name: index
        type: zip_uint64_t
      - name: size
        type: zip_uint64_t
      - name: comp_size
        type: zip_uint64_t
      - name: mtime
        type: time_t
      - name: crc
        type: zip_uint32_t
      - name: comp_method
        type: zip_uint16_t
      - name: encryption_method
        type: zip_uint16_t
      - name: flags
        type: zip_uint32_t
      item_type: struct
      name: zip_stat
      pos:
        line_end: 342
        line_start: 331
        source_file: /src/libzip/lib/zip.h
    - fields:
      - name: '*_Nonnull data'
        type: zip_uint8_t
      - name: length
        type: zip_uint64_t
      item_type: struct
      name: zip_buffer_fragment
      pos:
        line_end: 347
        line_start: 344
        source_file: /src/libzip/lib/zip.h
    - fields:
      - name: valid
        type: zip_uint64_t
      - name: version
        type: zip_uint8_t
      - name: host_system
        type: zip_uint8_t
      - name: ascii
        type: zip_uint8_t
      - name: version_needed
        type: zip_uint8_t
      - name: external_file_attributes
        type: zip_uint32_t
      - name: general_purpose_bit_flags
        type: zip_uint16_t
      - name: general_purpose_bit_mask
        type: zip_uint16_t
      item_type: struct
      name: zip_file_attributes
      pos:
        line_end: 358
        line_start: 349
        source_file: /src/libzip/lib/zip.h
    typedefs:
    - item_type: typedef
      name: zip_source_cmd_t
      pos:
        line_end: 272
        line_start: 272
        source_file: /src/libzip/lib/zip.h
      type: zip_source_cmd
    - item_type: typedef
      name: zip_source_args_seek_t
      pos:
        line_end: 309
        line_start: 309
        source_file: /src/libzip/lib/zip.h
      type: zip_source_args_seek
    - item_type: typedef
      name: zip_t
      pos:
        line_end: 370
        line_start: 370
        source_file: /src/libzip/lib/zip.h
      type: zip
    - item_type: typedef
      name: zip_error_t
      pos:
        line_end: 371
        line_start: 371
        source_file: /src/libzip/lib/zip.h
      type: zip_error
    - item_type: typedef
      name: zip_file_t
      pos:
        line_end: 372
        line_start: 372
        source_file: /src/libzip/lib/zip.h
      type: zip_file
    - item_type: typedef
      name: zip_file_attributes_t
      pos:
        line_end: 373
        line_start: 373
        source_file: /src/libzip/lib/zip.h
      type: zip_file_attributes
    - item_type: typedef
      name: zip_source_t
      pos:
        line_end: 374
        line_start: 374
        source_file: /src/libzip/lib/zip.h
      type: zip_source
    - item_type: typedef
      name: zip_stat_t
      pos:
        line_end: 375
        line_start: 375
        source_file: /src/libzip/lib/zip.h
      type: zip_stat
    - item_type: typedef
      name: zip_buffer_fragment_t
      pos:
        line_end: 376
        line_start: 376
        source_file: /src/libzip/lib/zip.h
      type: zip_buffer_fragment
    - item_type: typedef
      name: zip_flags_t
      pos:
        line_end: 378
        line_start: 378
        source_file: /src/libzip/lib/zip.h
      type: zip_uint32_t
    - item_type: typedef
      name: (*zip_source_callback)(void *_Nullable, void *_Nullable, zip_uint64_t,
        zip_source_cmd_t)
      pos:
        line_end: 380
        line_start: 380
        source_file: /src/libzip/lib/zip.h
      type: zip_int64_t
    - item_type: typedef
      name: (*zip_source_layered_callback)(zip_source_t *_Nonnull, void *_Nullable,
        void *_Nullable, zip_uint64_t, enum zip_source_cmd)
      pos:
        line_end: 381
        line_start: 381
        source_file: /src/libzip/lib/zip.h
      type: zip_int64_t
    - item_type: typedef
      name: (*zip_progress_callback)(zip_t *_Nonnull, double, void *_Nullable)
      pos:
        line_end: 382
        line_start: 382
        source_file: /src/libzip/lib/zip.h
      type: void
    - item_type: typedef
      name: (*zip_cancel_callback)(zip_t *_Nonnull, void *_Nullable)
      pos:
        line_end: 383
        line_start: 383
        source_file: /src/libzip/lib/zip.h
      type: int
    - item_type: typedef
      name: (*zip_progress_callback_t)(double)
      pos:
        line_end: 388
        line_start: 388
        source_file: /src/libzip/lib/zip.h
      type: void
    union: []
- function_names:
  - zip_fdopen
  source_file: /src/libzip/lib/zip_fdopen.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_int64_t::zip_get_num_entries
  source_file: /src/libzip/lib/zip_get_num_entries.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_fopen
  source_file: /src/libzip/lib/zip_fopen.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_cdir_free
  - _zip_cdir_new
  - _zip_cdir_grow
  - _zip_cdir_write
  - _zip_dirent_clone
  - _zip_dirent_finalize
  - _zip_dirent_free
  - _zip_dirent_merge
  - _zip_dirent_init
  - _zip_dirent_needs_zip64
  - _zip_dirent_new
  - _zip_dirent_read
  - zip_dirent_process_ef_zip64
  - _zip_dirent_process_ef_utf_8
  - _zip_dirent_process_winzip_aes
  - _zip_dirent_size
  - _zip_dirent_write
  - _zip_d2u_time
  - _zip_ef_utf8
  - _zip_get_dirent
  - _zip_u2d_time
  - _zip_dirent_apply_attributes
  - zip_dirent_torrentzip_normalize
  - zip_dirent_check_consistency
  - zip_dirent_get_last_mod_mtime
  source_file: /src/libzip/lib/zip_dirent.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_fseek
  - zip_file_is_seekable
  source_file: /src/libzip/lib/zip_fseek.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_seek
  - zip_source_seek_compute_offset
  source_file: /src/libzip/lib/zip_source_seek.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_get_encryption_implementation
  - zip_encryption_method_supported
  source_file: /src/libzip/lib/zip_get_encryption_implementation.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_t *zip_source_zip_file(zip_t *za, zip_t *srcza, zip_uint64_t srcidx,
    zip_flags_t flags, zip_uint64_t start, zip_int64_t len, const char *password)
  - zip_source_t *zip_source_zip_file_create(zip_t *srcza, zip_uint64_t srcidx, zip_flags_t
    flags, zip_uint64_t start, zip_int64_t len, const char *password, zip_error_t
    *error)
  - _zip_file_attributes_from_dirent
  source_file: /src/libzip/lib/zip_source_zip_new.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_begin_write_cloning
  source_file: /src/libzip/lib/zip_source_begin_write_cloning.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_int64_t::zip_name_locate
  - _zip_name_locate
  source_file: /src/libzip/lib/zip_name_locate.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_get_file_comment
  source_file: /src/libzip/lib/zip_get_file_comment.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_file_set_comment
  source_file: /src/libzip/lib/zip_file_set_comment.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_crypto_aes_new
  - _zip_crypto_aes_encrypt_block
  - _zip_crypto_aes_free
  - _zip_crypto_hmac_new
  - _zip_crypto_hmac_free
  - zip_secure_random
  source_file: /src/libzip/lib/zip_crypto_gnutls.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_stat
  source_file: /src/libzip/lib/zip_stat.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_close
  - add_data
  - copy_data
  - copy_source
  - write_cdir
  - _zip_changed
  - write_data_descriptor
  - torrentzip_compare_names
  source_file: /src/libzip/lib/zip_close.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libzip/lib/zip_random.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: zip_secure_random
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/libzip/lib/zip_random.h
      type_or_value: zip_secure_nonrandom
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_commit_write
  source_file: /src/libzip/lib/zip_source_commit_write.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_file_error_get
  source_file: /src/libzip/lib/zip_file_error_get.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_crypto_hmac
  - _zip_crypto_hmac_output
  - _zip_crypto_pbkdf2
  source_file: /src/libzip/lib/zip_crypto_commoncrypto.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _zip_crypto_aes_t
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libzip/lib/zip_crypto_commoncrypto.h
      type_or_value: struct _CCCryptor
    - item_type: preproc_def
      name: _zip_crypto_hmac_t
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/libzip/lib/zip_crypto_commoncrypto.h
      type_or_value: CCHmacContext
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_memdup
  source_file: /src/libzip/lib/zip_memdup.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_rename
  source_file: /src/libzip/lib/zip_rename.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_int64_t::zip_ftell
  source_file: /src/libzip/lib/zip_ftell.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_realloc
  source_file: /src/libzip/lib/zip_realloc.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_file_attributes_init
  - zip_source_get_file_attributes
  source_file: /src/libzip/lib/zip_source_get_file_attributes.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_delete
  source_file: /src/libzip/lib/zip_delete.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_t *zip_source_zip_create(zip_t *srcza, zip_uint64_t srcidx, zip_flags_t
    flags, zip_uint64_t start, zip_int64_t len, zip_error_t *error)
  - zip_source_t *zip_source_zip(zip_t *za, zip_t *srcza, zip_uint64_t srcidx, zip_flags_t
    flags, zip_uint64_t start, zip_int64_t len)
  source_file: /src/libzip/lib/zip_source_zip.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - buffer_capacity
  - buffer_size
  - zip_source_t *zip_source_buffer(zip_t *za, const void *data, zip_uint64_t len,
    int freep)
  - zip_source_t *zip_source_buffer_create(const void *data, zip_uint64_t len, int
    freep, zip_error_t *error)
  - zip_source_buffer_with_attributes_create
  - zip_source_t *zip_source_buffer_fragment(zip_t *za, const zip_buffer_fragment_t
    *fragments, zip_uint64_t nfragments, int freep)
  - zip_source_t *zip_source_buffer_fragment_create(const zip_buffer_fragment_t *fragments,
    zip_uint64_t nfragments, int freep, zip_error_t *error)
  - zip_source_buffer_fragment_with_attributes_create
  - zip_source_buffer_with_attributes
  - read_data
  - buffer_clone
  - buffer_find_fragment
  - buffer_free
  - buffer_grow_fragments
  - buffer_new
  - buffer_read
  - buffer_seek
  - buffer_write
  source_file: /src/libzip/lib/zip_source_buffer.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: WRITE_FRAGMENT_SIZE
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/libzip/lib/zip_source_buffer.c
      type_or_value: (64 * 1024)
    structs:
    - fields:
      - name: '*fragments'
        type: zip_buffer_fragment_t
      - name: '*fragment_offsets'
        type: zip_uint64_t
      - name: nfragments
        type: zip_uint64_t
      - name: fragments_capacity
        type: zip_uint64_t
      - name: first_owned_fragment
        type: zip_uint64_t
      - name: shared_fragments
        type: zip_uint64_t
      - name: '*shared_buffer'
        type: struct buffer
      - name: size
        type: zip_uint64_t
      - name: offset
        type: zip_uint64_t
      - name: current_fragment
        type: zip_uint64_t
      item_type: struct
      name: buffer
      pos:
        line_end: 56
        line_start: 42
        source_file: /src/libzip/lib/zip_source_buffer.c
    - fields:
      - name: error
        type: zip_error_t
      - name: mtime
        type: time_t
      - name: attributes
        type: zip_file_attributes_t
      - name: '*in'
        type: buffer_t
      - name: '*out'
        type: buffer_t
      item_type: struct
      name: read_data
      pos:
        line_end: 66
        line_start: 60
        source_file: /src/libzip/lib/zip_source_buffer.c
    typedefs:
    - item_type: typedef
      name: buffer_t
      pos:
        line_end: 58
        line_start: 58
        source_file: /src/libzip/lib/zip_source_buffer.c
      type: buffer
    union: []
- function_names:
  - zip_file_error_clear
  source_file: /src/libzip/lib/zip_file_error_clear.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_t *zip_source_win32handle(zip_t *za, HANDLE h, zip_uint64_t start,
    zip_int64_t len)
  - zip_source_t *zip_source_win32handle_create(HANDLE h, zip_uint64_t start, zip_int64_t
    length, zip_error_t *error)
  - _zip_win32_op_close
  - _zip_win32_op_read
  - _zip_win32_op_seek
  - _zip_win32_op_stat
  - _zip_win32_op_tell
  - _zip_win32_error_to_errno
  - _zip_stat_win32
  - _zip_filetime_to_time_t
  source_file: /src/libzip/lib/zip_source_file_win32.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_rollback_write
  source_file: /src/libzip/lib/zip_source_rollback_write.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - maximum_compressed_size
  - allocate
  - compress_allocate
  - decompress_allocate
  - deallocate
  - general_purpose_bit_flags
  - start
  - end
  - input
  - end_of_input
  - process
  source_file: /src/libzip/lib/zip_algorithm_deflate.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*error'
        type: zip_error_t
      - name: compress
        type: bool
      - name: level
        type: int
      - name: mem_level
        type: int
      - name: end_of_input
        type: bool
      - name: zstr
        type: z_stream
      item_type: struct
      name: ctx
      pos:
        line_end: 46
        line_start: 39
        source_file: /src/libzip/lib/zip_algorithm_deflate.c
    typedefs: []
    union: []
- function_names:
  - zip_source_get_dos_time
  source_file: /src/libzip/lib/zip_source_get_dostime.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_open
  source_file: /src/libzip/lib/zip_source_open.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_free
  source_file: /src/libzip/lib/zip_source_free.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_add_entry
  source_file: /src/libzip/lib/zip_add_entry.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_stat_index
  source_file: /src/libzip/lib/zip_stat_index.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_winzip_aes_encode
  - encrypt_header
  - winzip_aes_encrypt
  - winzip_aes_free
  - winzip_aes_new
  source_file: /src/libzip/lib/zip_source_winzip_aes_encode.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*password'
        type: char
      - name: encryption_method
        type: zip_uint16_t
      - name: data[ZIP_MAX(WINZIP_AES_MAX_HEADER_LENGTH, ZIP_CRYPTO_SHA1_LENGTH)]
        type: zip_uint8_t
      - name: '*buffer'
        type: zip_buffer_t
      - name: '*aes_ctx'
        type: zip_winzip_aes_t
      - name: eof
        type: bool
      - name: error
        type: zip_error_t
      item_type: struct
      name: winzip_aes
      pos:
        line_end: 53
        line_start: 43
        source_file: /src/libzip/lib/zip_source_winzip_aes_encode.c
    typedefs: []
    union: []
- function_names:
  - zip_source_pass_to_lower_layer
  source_file: /src/libzip/lib/zip_source_pass_to_lower_layer.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_seek_write
  source_file: /src/libzip/lib/zip_source_seek_write.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libzip/lib/zip_crypto_win.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: _zip_crypto_aes_t
      pos:
        line_end: 38
        line_start: 38
        source_file: /src/libzip/lib/zip_crypto_win.h
      type: _zip_crypto_aes_s
    - item_type: typedef
      name: _zip_crypto_hmac_t
      pos:
        line_end: 39
        line_start: 39
        source_file: /src/libzip/lib/zip_crypto_win.h
      type: _zip_crypto_hmac_s
    union: []
- function_names:
  - _zip_read
  - _zip_read_data
  - _zip_read_string
  - _zip_write
  source_file: /src/libzip/lib/zip_io_util.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_file_set_time
  - zip_file_set_dostime
  - zip_file_set_mtime
  source_file: /src/libzip/lib/zip_file_set_mtime.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_file_replace
  - _zip_file_replace
  source_file: /src/libzip/lib/zip_file_replace.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_source_call
  source_file: /src/libzip/lib/zip_source_call.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_new
  source_file: /src/libzip/lib/zip_new.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_set_archive_comment
  source_file: /src/libzip/lib/zip_set_archive_comment.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_fopen_encrypted
  source_file: /src/libzip/lib/zip_fopen_encrypted.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_get_compression_algorithm
  - zip_compression_method_supported
  - zip_source_compress
  - zip_source_decompress
  - compression_source_new
  - context_new
  - context_free
  - compress_read
  - compress_callback
  source_file: /src/libzip/lib/zip_source_compress.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: error
        type: zip_error_t
      - name: end_of_input
        type: bool
      - name: end_of_stream
        type: bool
      - name: can_store
        type: bool
      - name: is_stored
        type: bool
      - name: compress
        type: bool
      - name: check_consistency
        type: bool
      - name: method
        type: zip_int32_t
      - name: size
        type: zip_uint64_t
      - name: first_read
        type: zip_int64_t
      - name: buffer[BUFSIZE]
        type: zip_uint8_t
      - name: '*algorithm'
        type: zip_compression_algorithm_t
      - name: '*ud'
        type: void
      item_type: struct
      name: context
      pos:
        line_end: 55
        line_start: 38
        source_file: /src/libzip/lib/zip_source_compress.c
    - fields:
      - name: method
        type: zip_uint16_t
      - name: '*compress'
        type: zip_compression_algorithm_t
      - name: '*decompress'
        type: zip_compression_algorithm_t
      item_type: struct
      name: implementation
      pos:
        line_end: 62
        line_start: 58
        source_file: /src/libzip/lib/zip_source_compress.c
    typedefs: []
    union: []
- function_names:
  - zip_source_stat
  source_file: /src/libzip/lib/zip_source_stat.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - maximum_compressed_size
  - allocate
  - compress_allocate
  - decompress_allocate
  - deallocate
  - general_purpose_bit_flags
  - map_error
  - start
  - end
  - input
  - end_of_input
  - process
  source_file: /src/libzip/lib/zip_algorithm_zstd.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*error'
        type: zip_error_t
      - name: compress
        type: bool
      - name: compression_flags
        type: int
      - name: end_of_input
        type: bool
      - name: '*zdstream'
        type: ZSTD_DStream
      - name: '*zcstream'
        type: ZSTD_CStream
      - name: out
        type: ZSTD_outBuffer
      - name: in
        type: ZSTD_inBuffer
      item_type: struct
      name: ctx
      pos:
        line_end: 48
        line_start: 39
        source_file: /src/libzip/lib/zip_algorithm_zstd.c
    typedefs: []
    union: []
- function_names:
  - zip_file_extra_field_delete
  - zip_file_extra_field_delete_by_id
  - zip_uint8_t *zip_file_extra_field_get(zip_t *za, zip_uint64_t idx, zip_uint16_t
    ef_idx, zip_uint16_t *idp, zip_uint16_t *lenp, zip_flags_t flags)
  - zip_uint8_t *zip_file_extra_field_get_by_id(zip_t *za, zip_uint64_t idx, zip_uint16_t
    ef_id, zip_uint16_t ef_idx, zip_uint16_t *lenp, zip_flags_t flags)
  - zip_int16_t::zip_file_extra_fields_count
  - zip_int16_t::zip_file_extra_fields_count_by_id
  - zip_file_extra_field_set
  - _zip_file_extra_field_prepare_for_change
  source_file: /src/libzip/lib/zip_extra_field_api.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_fopen_index
  source_file: /src/libzip/lib/zip_fopen_index.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_int64_t::zip_fread
  source_file: /src/libzip/lib/zip_fread.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_crc_create
  - crc_read
  source_file: /src/libzip/lib/zip_source_crc.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: validate
        type: int
      - name: crc_complete
        type: int
      - name: error
        type: zip_error_t
      - name: size
        type: zip_uint64_t
      - name: position
        type: zip_uint64_t
      - name: crc_position
        type: zip_uint64_t
      - name: crc
        type: zip_uint32_t
      item_type: struct
      name: crc_context
      pos:
        line_end: 48
        line_start: 40
        source_file: /src/libzip/lib/zip_source_crc.c
    typedefs: []
    union: []
- function_names:
  - zip_source_winzip_aes_decode
  - decrypt_header
  - verify_hmac
  - winzip_aes_decrypt
  - winzip_aes_free
  - winzip_aes_new
  source_file: /src/libzip/lib/zip_source_winzip_aes_decode.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*password'
        type: char
      - name: encryption_method
        type: zip_uint16_t
      - name: data_length
        type: zip_uint64_t
      - name: current_position
        type: zip_uint64_t
      - name: '*aes_ctx'
        type: zip_winzip_aes_t
      - name: error
        type: zip_error_t
      item_type: struct
      name: winzip_aes
      pos:
        line_end: 50
        line_start: 41
        source_file: /src/libzip/lib/zip_source_winzip_aes_decode.c
    typedefs: []
    union: []
- function_names:
  - zip_error_get_sys_type
  source_file: /src/libzip/lib/zip_error_get_sys_type.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_get_archive_comment
  source_file: /src/libzip/lib/zip_get_archive_comment.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_string_crc32
  - _zip_string_equal
  - _zip_string_free
  - _zip_string_get
  - _zip_string_is_ascii
  - _zip_string_length
  - _zip_string_new
  - _zip_string_write
  source_file: /src/libzip/lib/zip_string.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_supports
  - zip_source_supports_reopen
  - zip_int64_t::zip_source_make_command_bitmap
  - zip_source_is_seekable
  source_file: /src/libzip/lib/zip_source_supports.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_crypto_hmac
  - _zip_crypto_hmac
  - _zip_crypto_pbkdf2
  source_file: /src/libzip/lib/zip_crypto_openssl.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _zip_crypto_aes_t
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libzip/lib/zip_crypto_openssl.h
      type_or_value: EVP_CIPHER_CTX
    - item_type: preproc_def
      name: _zip_crypto_hmac_t
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/libzip/lib/zip_crypto_openssl.h
      type_or_value: HMAC_CTX
    structs:
    - fields:
      - name: '*mac'
        type: EVP_MAC
      - name: '*ctx'
        type: EVP_MAC_CTX
      item_type: struct
      name: _zip_crypto_hmac_t
      pos:
        line_end: 54
        line_start: 51
        source_file: /src/libzip/lib/zip_crypto_openssl.h
    typedefs:
    - item_type: typedef
      name: _zip_crypto_hmac_t
      pos:
        line_end: 55
        line_start: 55
        source_file: /src/libzip/lib/zip_crypto_openssl.h
      type: _zip_crypto_hmac_t
    union: []
- function_names:
  - zip_source_read
  - _zip_source_eof
  source_file: /src/libzip/lib/zip_source_read.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libzip/lib/zip_source_file.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: size
        type: zip_uint64_t
      - name: mtime
        type: time_t
      - name: exists
        type: bool
      - name: regular_file
        type: bool
      item_type: struct
      name: zip_source_file_stat
      pos:
        line_end: 41
        line_start: 36
        source_file: /src/libzip/lib/zip_source_file.h
    - fields:
      - name: error
        type: zip_error_t
      - name: supports
        type: zip_int64_t
      - name: '*fname'
        type: char
      - name: '*f'
        type: void
      - name: st
        type: zip_stat_t
      - name: attributes
        type: zip_file_attributes_t
      - name: stat_error
        type: zip_error_t
      - name: start
        type: zip_uint64_t
      - name: len
        type: zip_uint64_t
      - name: offset
        type: zip_uint64_t
      - name: '*tmpname'
        type: char
      - name: '*fout'
        type: void
      - name: '*ops'
        type: zip_source_file_operations_t
      - name: '*ops_userdata'
        type: void
      item_type: struct
      name: zip_source_file_context
      pos:
        line_end: 67
        line_start: 47
        source_file: /src/libzip/lib/zip_source_file.h
    - fields:
      - name: (*close)(zip_source_file_context_t *ctx)
        type: void
      - name: (*commit_write)(zip_source_file_context_t *ctx)
        type: zip_int64_t
      - name: (*create_temp_output)(zip_source_file_context_t *ctx)
        type: zip_int64_t
      - name: (*create_temp_output_cloning)(zip_source_file_context_t *ctx, zip_uint64_t
          len)
        type: zip_int64_t
      - name: (*open)(zip_source_file_context_t *ctx)
        type: bool
      - name: (*read)(zip_source_file_context_t *ctx, void *buf, zip_uint64_t len)
        type: zip_int64_t
      - name: (*remove)(zip_source_file_context_t *ctx)
        type: zip_int64_t
      - name: (*rollback_write)(zip_source_file_context_t *ctx)
        type: void
      - name: (*seek)(zip_source_file_context_t *ctx, void *f, zip_int64_t offset,
          int whence)
        type: bool
      - name: (*stat)(zip_source_file_context_t *ctx, zip_source_file_stat_t *st)
        type: bool
      - name: '*(*string_duplicate)(zip_source_file_context_t *ctx, const char *)'
        type: char
      - name: (*tell)(zip_source_file_context_t *ctx, void *f)
        type: zip_int64_t
      - name: (*write)(zip_source_file_context_t *ctx, const void *data, zip_uint64_t
          len)
        type: zip_int64_t
      item_type: struct
      name: zip_source_file_operations
      pos:
        line_end: 90
        line_start: 76
        source_file: /src/libzip/lib/zip_source_file.h
    typedefs:
    - item_type: typedef
      name: zip_source_file_context_t
      pos:
        line_end: 43
        line_start: 43
        source_file: /src/libzip/lib/zip_source_file.h
      type: zip_source_file_context
    - item_type: typedef
      name: zip_source_file_operations_t
      pos:
        line_end: 44
        line_start: 44
        source_file: /src/libzip/lib/zip_source_file.h
      type: zip_source_file_operations
    - item_type: typedef
      name: zip_source_file_stat_t
      pos:
        line_end: 45
        line_start: 45
        source_file: /src/libzip/lib/zip_source_file.h
      type: zip_source_file_stat
    union: []
- function_names:
  - _zip_win32_named_op_commit_write
  - _zip_win32_named_op_create_temp_output
  - _zip_win32_named_op_open
  - _zip_win32_named_op_remove
  - _zip_win32_named_op_rollback_write
  - _zip_win32_named_op_stat
  - _zip_win32_named_op_string_duplicate
  - _zip_win32_named_op_write
  - win32_named_open
  source_file: /src/libzip/lib/zip_source_file_win32_named.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_file_get_external_attributes
  source_file: /src/libzip/lib/zip_file_get_external_attributes.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_set_name
  source_file: /src/libzip/lib/zip_set_name.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SALT_LENGTH
  - ZIP_CM_ACTUAL
  - ZIP_EF_IS_INTERNAL
  - ZIP_MAX
  - ZIP_MIN
  - ZIP_REALLOC
  - MAKE_DETAIL_WITH_INDEX
  - GET_INDEX_FROM_DETAIL
  - GET_ERROR_FROM_DETAIL
  - ADD_INDEX_TO_DETAIL
  - ZIP_SOURCE_IS_OPEN_READING
  - ZIP_SOURCE_IS_OPEN_WRITING
  - ZIP_SOURCE_IS_LAYERED
  - DEFINE_BYTE_ARRAY
  - byte_array_init
  - byte_array_fini
  - DEFINE_BYTE_ARRAY
  - byte_array_init
  - byte_array_fini
  - ZIP_CHECK_ADD_OVERFLOW
  - ZIP_MAX
  - ZIP_MIN
  - ZIP_ENTRY_CHANGED
  - ZIP_ENTRY_DATA_CHANGED
  - ZIP_ENTRY_HAS_CHANGES
  - ZIP_IS_RDONLY
  - ZIP_IS_TORRENTZIP
  - ZIP_WANT_TORRENTZIP
  - _zip_crypto_clear
  - _zip_crypto_clear
  - _zip_crypto_clear
  source_file: /src/libzip/lib/zipint.h
  types:
    enum:
    - enumerators:
      - name: ZIP_COMPRESSION_OK
      - name: ZIP_COMPRESSION_ERROR
      - name: ZIP_COMPRESSION_NEED_DATA
      - name: ZIP_COMPRESSION_END
      item_type: enum
      name: zip_compression_status
      pos:
        line_end: 125
        line_start: 120
        source_file: /src/libzip/lib/zipint.h
    - enumerators:
      - name: ZIP_LES_NONE
      - name: ZIP_LES_INVAL
      - name: ZIP_LES_UPPER
      - name: ZIP_LES_LOWER
      item_type: enum
      name: zip_les
      pos:
        line_end: 197
        line_start: 192
        source_file: /src/libzip/lib/zipint.h
    - enumerators:
      - name: ZIP_ENCODING_UNKNOWN
      - name: ZIP_ENCODING_CP437
      - name: ZIP_ENCODING_UTF8_GUESSED
      - name: ZIP_ENCODING_ASCII
      - name: ZIP_ENCODING_UTF8_KNOWN
      - name: ZIP_ENCODING_ERROR
      item_type: enum
      name: zip_encoding_type
      pos:
        line_end: 274
        line_start: 267
        source_file: /src/libzip/lib/zipint.h
    - enumerators:
      - name: ZIP_SOURCE_WRITE_CLOSED
      - name: ZIP_SOURCE_WRITE_FAILED
      - name: ZIP_SOURCE_WRITE_OPEN
      - name: ZIP_SOURCE_WRITE_REMOVED
      item_type: enum
      name: zip_source_write_state
      pos:
        line_end: 409
        line_start: 404
        source_file: /src/libzip/lib/zipint.h
    preproc_defs:
    - item_type: preproc_def
      name: CENTRAL_MAGIC
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '"PK\1\2"'
    - item_type: preproc_def
      name: LOCAL_MAGIC
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '"PK\3\4"'
    - item_type: preproc_def
      name: EOCD_MAGIC
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '"PK\5\6"'
    - item_type: preproc_def
      name: DATADES_MAGIC
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '"PK\7\10"'
    - item_type: preproc_def
      name: EOCD64LOC_MAGIC
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '"PK\6\7"'
    - item_type: preproc_def
      name: EOCD64_MAGIC
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '"PK\6\6"'
    - item_type: preproc_def
      name: MAGIC_LEN
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '4'
    - item_type: preproc_def
      name: CDENTRYSIZE
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/libzip/lib/zipint.h
      type_or_value: 46u
    - item_type: preproc_def
      name: LENTRYSIZE
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '30'
    - item_type: preproc_def
      name: MAXCOMLEN
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '65536'
    - item_type: preproc_def
      name: MAXEXTLEN
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '65536'
    - item_type: preproc_def
      name: EOCDLEN
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '22'
    - item_type: preproc_def
      name: EOCD64LOCLEN
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '20'
    - item_type: preproc_def
      name: EOCD64LEN
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '56'
    - item_type: preproc_def
      name: CDBUFSIZE
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/libzip/lib/zipint.h
      type_or_value: (MAXCOMLEN + EOCDLEN + EOCD64LOCLEN)
    - item_type: preproc_def
      name: BUFSIZE
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '8192'
    - item_type: preproc_def
      name: EFZIP64SIZE
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '28'
    - item_type: preproc_def
      name: EF_WINZIP_AES_SIZE
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '7'
    - item_type: preproc_def
      name: MAX_DATA_DESCRIPTOR_LENGTH
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '24'
    - item_type: preproc_def
      name: TORRENTZIP_SIGNATURE
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '"TORRENTZIPPED-"'
    - item_type: preproc_def
      name: TORRENTZIP_SIGNATURE_LENGTH
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '14'
    - item_type: preproc_def
      name: TORRENTZIP_CRC_LENGTH
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '8'
    - item_type: preproc_def
      name: TORRENTZIP_MEM_LEVEL
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '8'
    - item_type: preproc_def
      name: TORRENTZIP_COMPRESSION_FLAGS
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/libzip/lib/zipint.h
      type_or_value: ZIP_UINT16_MAX
    - item_type: preproc_def
      name: ZIP_CRYPTO_PKWARE_HEADERLEN
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '12'
    - item_type: preproc_def
      name: ZIP_CM_WINZIP_AES
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '99 '
    - item_type: preproc_def
      name: WINZIP_AES_PASSWORD_VERIFY_LENGTH
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '2'
    - item_type: preproc_def
      name: WINZIP_AES_MAX_HEADER_LENGTH
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/libzip/lib/zipint.h
      type_or_value: (16 + WINZIP_AES_PASSWORD_VERIFY_LENGTH)
    - item_type: preproc_def
      name: AES_BLOCK_SIZE
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '16'
    - item_type: preproc_def
      name: HMAC_LENGTH
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '10'
    - item_type: preproc_def
      name: ZIP_EF_UTF_8_COMMENT
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0x6375'
    - item_type: preproc_def
      name: ZIP_EF_UTF_8_NAME
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0x7075'
    - item_type: preproc_def
      name: ZIP_EF_WINZIP_AES
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0x9901'
    - item_type: preproc_def
      name: ZIP_EF_ZIP64
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0x0001'
    - item_type: preproc_def
      name: ZIP_EXT_ATTRIB_DEFAULT
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/libzip/lib/zipint.h
      type_or_value: (0100666u << 16)
    - item_type: preproc_def
      name: ZIP_EXT_ATTRIB_DEFAULT_DIR
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/libzip/lib/zipint.h
      type_or_value: (0040777u << 16)
    - item_type: preproc_def
      name: ZIP_FILE_ATTRIBUTES_GENERAL_PURPOSE_BIT_FLAGS_ALLOWED_MASK
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0x083e'
    - item_type: preproc_def
      name: ZIP_CODEC_DECODE
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0 '
    - item_type: preproc_def
      name: ZIP_CODEC_ENCODE
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '1 '
    - item_type: preproc_def
      name: ZIP_DETAIL_ET_GLOBAL
      pos:
        line_end: 200
        line_start: 199
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0'
    - item_type: preproc_def
      name: ZIP_DETAIL_ET_ENTRY
      pos:
        line_end: 201
        line_start: 200
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '1'
    - item_type: preproc_def
      name: MAX_DETAIL_INDEX
      pos:
        line_end: 214
        line_start: 213
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0x7fffff'
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_NO_DETAIL
      pos:
        line_end: 221
        line_start: 220
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0                         '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_CDIR_OVERLAPS_EOCD
      pos:
        line_end: 222
        line_start: 221
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '1                '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_COMMENT_LENGTH_INVALID
      pos:
        line_end: 223
        line_start: 222
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '2            '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_CDIR_LENGTH_INVALID
      pos:
        line_end: 224
        line_start: 223
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '3               '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_CDIR_ENTRY_INVALID
      pos:
        line_end: 225
        line_start: 224
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '4                '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_CDIR_WRONG_ENTRIES_COUNT
      pos:
        line_end: 226
        line_start: 225
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '5          '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_ENTRY_HEADER_MISMATCH
      pos:
        line_end: 227
        line_start: 226
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '6             '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_EOCD_LENGTH_INVALID
      pos:
        line_end: 228
        line_start: 227
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '7               '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_EOCD64_OVERLAPS_EOCD
      pos:
        line_end: 229
        line_start: 228
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '8              '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_EOCD64_WRONG_MAGIC
      pos:
        line_end: 230
        line_start: 229
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '9                '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_EOCD64_MISMATCH
      pos:
        line_end: 231
        line_start: 230
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '10                  '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_CDIR_INVALID
      pos:
        line_end: 232
        line_start: 231
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '11                     '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_VARIABLE_SIZE_OVERFLOW
      pos:
        line_end: 233
        line_start: 232
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '12           '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_INVALID_UTF8_IN_FILENAME
      pos:
        line_end: 234
        line_start: 233
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '13         '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_INVALID_UTF8_IN_COMMENT
      pos:
        line_end: 235
        line_start: 234
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '14          '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_INVALID_ZIP64_EF
      pos:
        line_end: 236
        line_start: 235
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '15                 '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_INVALID_WINZIPAES_EF
      pos:
        line_end: 237
        line_start: 236
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '16             '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_EF_TRAILING_GARBAGE
      pos:
        line_end: 238
        line_start: 237
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '17              '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_INVALID_EF_LENGTH
      pos:
        line_end: 239
        line_start: 238
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '18                '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_INVALID_FILE_LENGTH
      pos:
        line_end: 240
        line_start: 239
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '19              '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_STORED_SIZE_MISMATCH
      pos:
        line_end: 241
        line_start: 240
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '20             '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_DATA_DESCRIPTOR_MISMATCH
      pos:
        line_end: 242
        line_start: 241
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '21         '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_EOCD64_LOCATOR_MISMATCH
      pos:
        line_end: 243
        line_start: 242
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '22          '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_UTF8_FILENAME_MISMATCH
      pos:
        line_end: 244
        line_start: 243
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '23           '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_UTF8_COMMENT_MISMATCH
      pos:
        line_end: 245
        line_start: 244
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '24            '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_COMPRESSED_DATA_TRAILING_GARBAGE
      pos:
        line_end: 246
        line_start: 245
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '25 '
    - item_type: preproc_def
      name: ZIP_ER_DETAIL_NUL_IN_FILENAME
      pos:
        line_end: 247
        line_start: 246
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '26                  '
    - item_type: preproc_def
      name: ZIP_GPBF_ENCRYPTED
      pos:
        line_end: 251
        line_start: 250
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0x0001u         '
    - item_type: preproc_def
      name: ZIP_GPBF_DATA_DESCRIPTOR
      pos:
        line_end: 252
        line_start: 251
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0x0008u   '
    - item_type: preproc_def
      name: ZIP_GPBF_STRONG_ENCRYPTION
      pos:
        line_end: 253
        line_start: 252
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0x0040u '
    - item_type: preproc_def
      name: ZIP_GPBF_ENCODING_UTF_8
      pos:
        line_end: 254
        line_start: 253
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '0x0800u    '
    - item_type: preproc_def
      name: ZIP_EF_LOCAL
      pos:
        line_end: 258
        line_start: 257
        source_file: /src/libzip/lib/zipint.h
      type_or_value: 'ZIP_FL_LOCAL                   '
    - item_type: preproc_def
      name: ZIP_EF_CENTRAL
      pos:
        line_end: 259
        line_start: 258
        source_file: /src/libzip/lib/zipint.h
      type_or_value: 'ZIP_FL_CENTRAL               '
    - item_type: preproc_def
      name: ZIP_EF_BOTH
      pos:
        line_end: 260
        line_start: 259
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '(ZIP_EF_LOCAL | ZIP_EF_CENTRAL) '
    - item_type: preproc_def
      name: ZIP_FL_FORCE_ZIP64
      pos:
        line_end: 262
        line_start: 261
        source_file: /src/libzip/lib/zipint.h
      type_or_value: '1024 '
    - item_type: preproc_def
      name: ZIP_FL_ENCODING_ALL
      pos:
        line_end: 264
        line_start: 263
        source_file: /src/libzip/lib/zipint.h
      type_or_value: (ZIP_FL_ENC_GUESS | ZIP_FL_ENC_CP437 | ZIP_FL_ENC_UTF_8)
    - item_type: preproc_def
      name: ZIP_DIRENT_COMP_METHOD
      pos:
        line_end: 333
        line_start: 332
        source_file: /src/libzip/lib/zipint.h
      type_or_value: 0x0001u
    - item_type: preproc_def
      name: ZIP_DIRENT_FILENAME
      pos:
        line_end: 334
        line_start: 333
        source_file: /src/libzip/lib/zipint.h
      type_or_value: 0x0002u
    - item_type: preproc_def
      name: ZIP_DIRENT_COMMENT
      pos:
        line_end: 335
        line_start: 334
        source_file: /src/libzip/lib/zipint.h
      type_or_value: 0x0004u
    - item_type: preproc_def
      name: ZIP_DIRENT_EXTRA_FIELD
      pos:
        line_end: 336
        line_start: 335
        source_file: /src/libzip/lib/zipint.h
      type_or_value: 0x0008u
    - item_type: preproc_def
      name: ZIP_DIRENT_ATTRIBUTES
      pos:
        line_end: 337
        line_start: 336
        source_file: /src/libzip/lib/zipint.h
      type_or_value: 0x0010u
    - item_type: preproc_def
      name: ZIP_DIRENT_LAST_MOD
      pos:
        line_end: 338
        line_start: 337
        source_file: /src/libzip/lib/zipint.h
      type_or_value: 0x0020u
    - item_type: preproc_def
      name: ZIP_DIRENT_ENCRYPTION_METHOD
      pos:
        line_end: 339
        line_start: 338
        source_file: /src/libzip/lib/zipint.h
      type_or_value: 0x0040u
    - item_type: preproc_def
      name: ZIP_DIRENT_PASSWORD
      pos:
        line_end: 340
        line_start: 339
        source_file: /src/libzip/lib/zipint.h
      type_or_value: 0x0080u
    - item_type: preproc_def
      name: ZIP_DIRENT_ALL
      pos:
        line_end: 341
        line_start: 340
        source_file: /src/libzip/lib/zipint.h
      type_or_value: ZIP_UINT32_MAX
    structs:
    - fields:
      - name: (*maximum_compressed_size)(zip_uint64_t uncompressed_size)
        type: zip_uint64_t
      - name: '*(*allocate)(zip_uint16_t method, zip_uint32_t compression_flags, zip_error_t
          *error)'
        type: void
      - name: (*deallocate)(void *ctx)
        type: void
      - name: (*general_purpose_bit_flags)(void *ctx)
        type: zip_uint16_t
      - name: version_needed
        type: zip_uint8_t
      - name: (*start)(void *ctx, zip_stat_t *st, zip_file_attributes_t *attributes)
        type: bool
      - name: (*end)(void *ctx)
        type: bool
      - name: (*input)(void *ctx, zip_uint8_t *data, zip_uint64_t length)
        type: bool
      - name: (*end_of_input)(void *ctx)
        type: bool
      - name: (*process)(void *ctx, zip_uint8_t *data, zip_uint64_t *length)
        type: zip_compression_status_t
      item_type: struct
      name: zip_compression_algorithm
      pos:
        line_end: 155
        line_start: 128
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: type
        type: int
      - name: '*description'
        type: char
      item_type: struct
      name: _zip_err_info
      pos:
        line_end: 205
        line_start: 202
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: '*src'
        type: zip_source_t
      - name: open_flags
        type: unsigned int
      - name: error
        type: zip_error_t
      - name: flags
        type: unsigned int
      - name: ch_flags
        type: unsigned int
      - name: '*default_password'
        type: char
      - name: '*comment_orig'
        type: zip_string_t
      - name: '*comment_changes'
        type: zip_string_t
      - name: comment_changed
        type: bool
      - name: nentry
        type: zip_uint64_t
      - name: nentry_alloc
        type: zip_uint64_t
      - name: '*entry'
        type: zip_entry_t
      - name: nopen_source
        type: zip_uint64_t
      - name: nopen_source_alloc
        type: zip_uint64_t
      - name: '**open_source'
        type: zip_source_t
      - name: '*names'
        type: zip_hash_t
      - name: '*progress'
        type: zip_progress_t
      - name: '*write_crc'
        type: zip_uint32_t
      - name: torrent_mtime
        type: time_t
      item_type: struct
      name: zip
      pos:
        line_end: 321
        line_start: 293
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: error
        type: zip_error_t
      - name: '*src'
        type: zip_source_t
      item_type: struct
      name: zip_file
      pos:
        line_end: 328
        line_start: 325
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: time
        type: zip_uint16_t
      - name: date
        type: zip_uint16_t
      item_type: struct
      name: zip_dostime
      pos:
        line_end: 345
        line_start: 342
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: changed
        type: zip_uint32_t
      - name: local_extra_fields_read
        type: bool
      - name: cloned
        type: bool
      - name: crc_valid
        type: bool
      - name: last_mod_mtime_valid
        type: bool
      - name: version_madeby
        type: zip_uint16_t
      - name: version_needed
        type: zip_uint16_t
      - name: bitflags
        type: zip_uint16_t
      - name: comp_method
        type: zip_int32_t
      - name: last_mod
        type: zip_dostime_t
      - name: crc
        type: zip_uint32_t
      - name: comp_size
        type: zip_uint64_t
      - name: uncomp_size
        type: zip_uint64_t
      - name: '*filename'
        type: zip_string_t
      - name: '*extra_fields'
        type: zip_extra_field_t
      - name: '*comment'
        type: zip_string_t
      - name: disk_number
        type: zip_uint32_t
      - name: int_attrib
        type: zip_uint16_t
      - name: ext_attrib
        type: zip_uint32_t
      - name: offset
        type: zip_uint64_t
      - name: compression_level
        type: zip_uint32_t
      - name: encryption_method
        type: zip_uint16_t
      - name: '*password'
        type: char
      - name: last_mod_mtime
        type: time_t
      item_type: struct
      name: zip_dirent
      pos:
        line_end: 376
        line_start: 347
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: '*entry'
        type: zip_entry_t
      - name: nentry
        type: zip_uint64_t
      - name: nentry_alloc
        type: zip_uint64_t
      - name: this_disk
        type: zip_uint32_t
      - name: eocd_disk
        type: zip_uint32_t
      - name: disk_entries
        type: zip_uint64_t
      - name: num_entries
        type: zip_uint64_t
      - name: size
        type: zip_uint64_t
      - name: offset
        type: zip_uint64_t
      - name: eocd_offset
        type: zip_uint64_t
      - name: '*comment'
        type: zip_string_t
      - name: is_zip64
        type: bool
      item_type: struct
      name: zip_cdir
      pos:
        line_end: 394
        line_start: 380
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: '*next'
        type: zip_extra_field_t
      - name: flags
        type: zip_flags_t
      - name: id
        type: zip_uint16_t
      - name: size
        type: zip_uint16_t
      - name: '*data'
        type: zip_uint8_t
      item_type: struct
      name: zip_extra_field
      pos:
        line_end: 402
        line_start: 396
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: '*src'
        type: zip_source_t
      - name: cb
        type: "union {\n        zip_source_callback f;\n        zip_source_layered_callback
          l;\n    }"
      - name: '*ud'
        type: void
      - name: error
        type: zip_error_t
      - name: supports
        type: zip_int64_t
      - name: open_count
        type: unsigned int
      - name: write_state
        type: zip_source_write_state_t
      - name: source_closed
        type: bool
      - name: '*source_archive'
        type: zip_t
      - name: refcount
        type: unsigned int
      - name: eof
        type: bool
      - name: had_read_error
        type: bool
      - name: bytes_read
        type: zip_uint64_t
      item_type: struct
      name: zip_source
      pos:
        line_end: 429
        line_start: 412
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: '*orig'
        type: zip_dirent_t
      - name: '*changes'
        type: zip_dirent_t
      - name: '*source'
        type: zip_source_t
      - name: deleted
        type: bool
      item_type: struct
      name: zip_entry
      pos:
        line_end: 442
        line_start: 437
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: '*raw'
        type: zip_uint8_t
      - name: length
        type: zip_uint16_t
      - name: encoding
        type: enum zip_encoding_type
      - name: '*converted'
        type: zip_uint8_t
      - name: converted_length
        type: zip_uint32_t
      item_type: struct
      name: zip_string
      pos:
        line_end: 453
        line_start: 447
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: ok
        type: bool
      - name: free_data
        type: bool
      - name: '*data'
        type: zip_uint8_t
      - name: size
        type: zip_uint64_t
      - name: offset
        type: zip_uint64_t
      item_type: struct
      name: zip_buffer
      pos:
        line_end: 482
        line_start: 475
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: idx
        type: zip_uint64_t
      - name: '*name'
        type: char
      item_type: struct
      name: zip_filelist
      pos:
        line_end: 489
        line_start: 486
        source_file: /src/libzip/lib/zipint.h
    - fields:
      - name: key[3]
        type: zip_uint32_t
      item_type: struct
      name: _zip_pkware_keys
      pos:
        line_end: 498
        line_start: 496
        source_file: /src/libzip/lib/zipint.h
    typedefs:
    - item_type: typedef
      name: '*(*zip_encryption_implementation)(zip_t *, zip_source_t *, zip_uint16_t,
        int, const char *)'
      pos:
        line_end: 116
        line_start: 116
        source_file: /src/libzip/lib/zipint.h
      type: zip_source_t
    - item_type: typedef
      name: zip_compression_status_t
      pos:
        line_end: 126
        line_start: 126
        source_file: /src/libzip/lib/zipint.h
      type: zip_compression_status
    - item_type: typedef
      name: zip_compression_algorithm_t
      pos:
        line_end: 156
        line_start: 156
        source_file: /src/libzip/lib/zipint.h
      type: zip_compression_algorithm
    - item_type: typedef
      name: zip_encoding_type_t
      pos:
        line_end: 276
        line_start: 276
        source_file: /src/libzip/lib/zipint.h
      type: zip_encoding_type
    - item_type: typedef
      name: zip_cdir_t
      pos:
        line_end: 281
        line_start: 281
        source_file: /src/libzip/lib/zipint.h
      type: zip_cdir
    - item_type: typedef
      name: zip_dostime_t
      pos:
        line_end: 282
        line_start: 282
        source_file: /src/libzip/lib/zipint.h
      type: zip_dostime
    - item_type: typedef
      name: zip_dirent_t
      pos:
        line_end: 283
        line_start: 283
        source_file: /src/libzip/lib/zipint.h
      type: zip_dirent
    - item_type: typedef
      name: zip_entry_t
      pos:
        line_end: 284
        line_start: 284
        source_file: /src/libzip/lib/zipint.h
      type: zip_entry
    - item_type: typedef
      name: zip_extra_field_t
      pos:
        line_end: 285
        line_start: 285
        source_file: /src/libzip/lib/zipint.h
      type: zip_extra_field
    - item_type: typedef
      name: zip_string_t
      pos:
        line_end: 286
        line_start: 286
        source_file: /src/libzip/lib/zipint.h
      type: zip_string
    - item_type: typedef
      name: zip_buffer_t
      pos:
        line_end: 287
        line_start: 287
        source_file: /src/libzip/lib/zipint.h
      type: zip_buffer
    - item_type: typedef
      name: zip_hash_t
      pos:
        line_end: 288
        line_start: 288
        source_file: /src/libzip/lib/zipint.h
      type: zip_hash
    - item_type: typedef
      name: zip_progress_t
      pos:
        line_end: 289
        line_start: 289
        source_file: /src/libzip/lib/zipint.h
      type: zip_progress
    - item_type: typedef
      name: zip_source_write_state_t
      pos:
        line_end: 410
        line_start: 410
        source_file: /src/libzip/lib/zipint.h
      type: zip_source_write_state
    - item_type: typedef
      name: zip_filelist_t
      pos:
        line_end: 491
        line_start: 491
        source_file: /src/libzip/lib/zipint.h
      type: zip_filelist
    - item_type: typedef
      name: zip_winzip_aes_t
      pos:
        line_end: 494
        line_start: 494
        source_file: /src/libzip/lib/zipint.h
      type: _zip_winzip_aes
    - item_type: typedef
      name: zip_pkware_keys_t
      pos:
        line_end: 499
        line_start: 499
        source_file: /src/libzip/lib/zipint.h
      type: _zip_pkware_keys
    union: []
- function_names:
  - zip_file_get_comment
  source_file: /src/libzip/lib/zip_file_get_comment.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_begin_write
  source_file: /src/libzip/lib/zip_source_begin_write.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_error_get
  - zip_error_t *zip_get_error(zip_t *za)
  - zip_error_t *zip_file_get_error(zip_file_t *f)
  source_file: /src/libzip/lib/zip_error_get.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_pkware_decode
  - decrypt_header
  - pkware_decrypt
  - trad_pkware_new
  - trad_pkware_free
  source_file: /src/libzip/lib/zip_source_pkware_decode.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*password'
        type: char
      - name: keys
        type: zip_pkware_keys_t
      - name: error
        type: zip_error_t
      item_type: struct
      name: trad_pkware
      pos:
        line_end: 43
        line_start: 39
        source_file: /src/libzip/lib/zip_source_pkware_decode.c
    typedefs: []
    union: []
- function_names:
  - _zip_unchange_data
  source_file: /src/libzip/lib/zip_unchange_data.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_set_file_comment
  source_file: /src/libzip/lib/zip_set_file_comment.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_error
  - _zip_source_had_error
  source_file: /src/libzip/lib/zip_source_error.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_int64_t::zip_source_write
  source_file: /src/libzip/lib/zip_source_write.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_t *zip_source_win32w(zip_t *za, const wchar_t *fname, zip_uint64_t
    start, zip_int64_t len)
  - zip_source_t *zip_source_win32w_create(const wchar_t *fname, zip_uint64_t start,
    zip_int64_t length, zip_error_t *error)
  - utf16_allocate_tempname
  - utf16_create_file
  - utf16_delete_file
  - utf16_get_file_attributes
  - utf16_get_file_attributes_ex
  - utf16_make_tempname
  - utf16_move_file
  - utf16_set_file_attributes
  - utf16_strdup
  - utf16_find_first_file
  source_file: /src/libzip/lib/zip_source_file_win32_utf16.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_int64_t::zip_source_tell
  source_file: /src/libzip/lib/zip_source_tell.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libzip/lib/zip_crypto.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ZIP_CRYPTO_SHA1_LENGTH
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/libzip/lib/zip_crypto.h
      type_or_value: '20'
    - item_type: preproc_def
      name: ZIP_CRYPTO_AES_BLOCK_LENGTH
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/libzip/lib/zip_crypto.h
      type_or_value: '16'
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_crypto_hmac
  - _zip_crypto_hmac_output
  - _zip_crypto_pbkdf2
  source_file: /src/libzip/lib/zip_crypto_gnutls.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _zip_crypto_hmac_t
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libzip/lib/zip_crypto_gnutls.h
      type_or_value: gnutls_hmac_hd_t
    structs:
    - fields:
      - name: ctx
        type: "union {\n        struct aes128_ctx ctx_128;\n        struct aes192_ctx
          ctx_192;\n        struct aes256_ctx ctx_256;\n    }"
      - name: key_size
        type: zip_uint16_t
      item_type: struct
      name: _zip_crypto_aes_t
      pos:
        line_end: 52
        line_start: 45
        source_file: /src/libzip/lib/zip_crypto_gnutls.h
    typedefs: []
    union: []
- function_names:
  - _zip_crypto_aes_free
  - _zip_crypto_aes_encrypt_block
  - _zip_crypto_aes_new
  - _zip_crypto_hmac_free
  - _zip_crypto_hmac_new
  source_file: /src/libzip/lib/zip_crypto_commoncrypto.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - maximum_compressed_size
  - allocate
  - compress_allocate
  - decompress_allocate
  - deallocate
  - general_purpose_bit_flags
  - map_error
  - start
  - end
  - input
  - end_of_input
  - process
  source_file: /src/libzip/lib/zip_algorithm_bzip2.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*error'
        type: zip_error_t
      - name: compress
        type: bool
      - name: compression_flags
        type: int
      - name: end_of_input
        type: bool
      - name: zstr
        type: bz_stream
      item_type: struct
      name: ctx
      pos:
        line_end: 45
        line_start: 39
        source_file: /src/libzip/lib/zip_algorithm_bzip2.c
    typedefs: []
    union: []
- function_names:
  - _zip_entry_finalize
  - _zip_entry_init
  source_file: /src/libzip/lib/zip_entry.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_int64_t::zip_add_dir
  source_file: /src/libzip/lib/zip_add_dir.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_layered
  - zip_source_layered_create
  source_file: /src/libzip/lib/zip_source_layered.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_error_strerror
  source_file: /src/libzip/lib/zip_error_strerror.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _zip_ef_clone
  - _zip_ef_delete_by_id
  - _zip_ef_free
  - _zip_ef_get_by_id
  - _zip_ef_merge
  - _zip_ef_new
  - _zip_ef_parse
  - _zip_ef_remove_internal
  - _zip_ef_size
  - _zip_ef_write
  - _zip_read_local_ef
  source_file: /src/libzip/lib/zip_extra_field.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_t *zip_source_function(zip_t *za, zip_source_callback zcb, void *ud)
  - zip_source_t *zip_source_function_create(zip_source_callback zcb, void *ud, zip_error_t
    *error)
  - zip_source_keep
  - _zip_source_new
  source_file: /src/libzip/lib/zip_source_function.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_error_to_str
  source_file: /src/libzip/lib/zip_error_to_str.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_source_accept_empty
  source_file: /src/libzip/lib/zip_source_accept_empty.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - zip_file_set_encryption
  source_file: /src/libzip/lib/zip_file_set_encryption.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - get_data
  - modify_archive
  - use_data
  - main
  source_file: /src/libzip/examples/in-memory.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - callback
  - create_layered_autoclose
  - main
  source_file: /src/libzip/examples/autoclose-archive.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*archive'
        type: zip_t
      item_type: struct
      name: ctx
      pos:
        line_end: 47
        line_start: 45
        source_file: /src/libzip/examples/autoclose-archive.c
    typedefs: []
    union: []
- function_names:
  - callback
  - create_layered_compressed_source
  - main
  source_file: /src/libzip/examples/add-compressed-data.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: uncompressed_size
        type: zip_uint64_t
      - name: crc
        type: zip_uint32_t
      - name: compression_method
        type: zip_uint32_t
      item_type: struct
      name: ctx
      pos:
        line_end: 49
        line_start: 45
        source_file: /src/libzip/examples/add-compressed-data.c
    typedefs: []
    union: []
- function_names:
  - windows_open
  source_file: /src/libzip/examples/windows-open.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/libzip/examples/cmake-project/cmake-example.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
