Provided by: libzzip-dev_0.13.62-3.2_amd64 bug


       zzip_disk_entry_to_data, zzip_disk_entry_to_file_header, zzip_disk_entry_strdup_name,
       zzip_disk_entry_strdup_comment - helper functions for (mmapped) zip access api


       #include <zzip/mmapped.h>

       zzip_byte_t * zzip_disk_entry_to_data((ZZIP_DISK * disk, struct zzip_disk_entry * entry));

       struct zzip_file_header *
                                                                zzip_disk_entry_to_file_header((ZZIP_DISK * disk, struct zzip_disk_entry *entry));

       zzip__new__ char *
                                                      zzip_disk_entry_strdup_name((ZZIP_DISK * disk, struct zzip_disk_entry *entry));

       zzip__new__ char *
                                                         zzip_disk_entry_strdup_comment((ZZIP_DISK * disk, struct zzip_disk_entry *entry));


       The zzip_disk_entry_to_data function augments the other zzip_disk_entry_* helpers: here we
       move a disk_entry pointer (as returned by _find* functions) into a pointer to the data
       block right after the file_header. Only disk->buffer would be needed to perform the seek
       but we check the mmapped range end as well.

       The zzip_disk_entry_to_file_header function does half the job of zzip_disk_entry_to_data
       where it can augment with zzip_file_header_to_data helper from format/fetch.h

       The zzip_disk_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.

       The zzip_disk_entry_strdup_comment function is similar creating a reference to a zero
       terminated string but it can only exist in the zip central directory entry.


       ยท   Guido Draheim <>


       Copyright (c) 2003,2004,2006 Guido Draheim All rights reserved, use under the restrictions
       of the Lesser GNU General Public License or alternatively the restrictions of the Mozilla
       Public License 1.1