zip_source_win32handle_create(3)

zip_source_win32handle_create3

Create data source from a windows file handle

Part of zip_source_win32handle(3).

Usage

#include <zip.h>

zip_source_t *

zip_source_win32handle(zip_t *archive, 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 len, zip_error_t *error);

Library

libzip (-lzip)

Overview

The functions zip_source_win32handle() and zip_source_win32handle_create() create a zip source from a Windows file handle. They read len bytes from offset start from it. If len is 0 or -1, the whole file (starting from start) is used.

If the file supports seek, the source can be used to open a zip archive from.

The file is opened and read when the data from the source is used, usually by zip_close() or zip_open_from_source().

Return values

Upon successful completion, the created source is returned. Otherwise, NULL is returned and the error code in archive or error is set to indicate the error.

Errors

zip_source_w32handle() and zip_source_w32handle_create() fail if:

[ZIP_ER_INVAL]

h, start, or len are invalid.

[ZIP_ER_MEMORY]

Required memory could not be allocated.

Releases

6 releases since Debian 9 (Stretch); the text changed 4 times.

  1. 9
  2. 10
  3. 11–12
  4. 13
  5. Arch

History

zip_source_win32handle() and zip_source_win32handle_create() were added in libzip 1.0.

Authors

Dieter Baron ⟨[email protected]⟩ and Thomas Klausner ⟨[email protected]⟩

From libzip 1.11.4-1 in Arch Linux 2026-11-01. Parsed by carta from the page's mdoc source.