zzip_disk_entry_to_data(3) | zziplib Function List | zzip_disk_entry_to_data(3) |
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_data function returns a pointer into
disk->buffer or 0 on error (errno).
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_to_file_header function returns a pointer into
disk->buffer or 0 on error (errno).
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_name function returns a new string buffer,
or null on error. If no name can be found then an empty string is
returned.
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.
The zzip_disk_entry_strdup_comment function returns a new string
buffer, or null on error (errno). If no name can be found then an empty
string is returned.
Guido Draheim <guidod@gmx.de>
Copyright (c)Guido Draheim, use under copyleft (LGPL,MPL)
0.13.72 | zziplib |