logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

zzip_entry_data_offset, zzip_entry_fread_file_header, zzip_entry_strdup_name - helper functions for

Author

        Guido Draheim <guidod@gmx.de>

Description

        The zzip_entry_data_offset functions returns the seekval offset of the data portion of the file
       referenced by the given zzip_entry. It requires an intermediate check of the file_header structure (i.e.
       it reads it from disk). After this call, the contained diskfile readposition is already set to the
       data_offset returned here.

       The zzip_entry_data_offset function Returns -1 on error. (errno = EINVAL|EBADMSG)

        The zzip_entry_fread_file_header functions read the correspoding struct zzip_file_header from the zip
       disk of the given "entry". The returned off_t points to the end of the file_header where the current
       fseek pointer has stopped. This is used to immediately parse out any filename/extras block following the
       file_header.

       The zzip_entry_fread_file_header function Returns zero on error. (errno = EINVAL|EBADMSG|EBADF|EIO)

        The zzip_entry_strdup_name function is a big helper despite its little name: in a zip file the encoded
       filenames are usually NOT zero-terminated but for common usage with libc we need it that way. Secondly,
       the filename SHOULD be present in the zip central directory but if not then we fallback to the filename
       given in the file_header of each compressed data portion.

        returns: new string buffer, null on error (errno = EINVAL|ENOMEM|EBADMSG)

Name

       zzip_entry_data_offset, zzip_entry_fread_file_header, zzip_entry_strdup_name -  helper functions for
       (fseeko) zip access api

Synopsis

#include<zzip/fseeko.h>

       zzip_off_t
       zzip_entry_data_offset(ZZIP_ENTRY* entry)

       static zzip_off_t
       zzip_entry_fread_file_header(ZZIP_ENTRY* entry, struct zzip_file_header* file_header)

       zzip__new__ char*
       zzip_entry_strdup_name(ZZIP_ENTRY* entry)

See Also