Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
zzip_entry_fopen(3)	     zziplib Function List	   zzip_entry_fopen(3)

NAME
       zzip_entry_fopen, zzip_entry_ffile, zzip_entry_fread,
       zzip_entry_fclose, zzip_entry_feof -  open a file within	a zip disk for
       reading

SYNOPSIS
       #include	<zzip/fseeko.h>

       zzip__new__ ZZIP_ENTRY_FILE*
       zzip_entry_fopen(ZZIP_ENTRY* entry, int takeover)

       zzip__new__ ZZIP_ENTRY_FILE*
       zzip_entry_ffile(FILE* disk, char* filename)

       zzip_size_t
       zzip_entry_fread(void* ptr, zzip_size_t sized, zzip_size_t nmemb, ZZIP_ENTRY_FILE* file)

       int
       zzip_entry_fclose(ZZIP_ENTRY_FILE* file)

       int
       zzip_entry_feof(ZZIP_ENTRY_FILE*	file)

DESCRIPTION
	The zzip_entry_fopen function does take	an "entry" argument and	copies
       it (or just takes it over as owner) to a	new ZZIP_ENTRY_FILE handle
       structure. That structure contains also a zlib buffer for decoding. The
       zzip_entry_fopen	function does seek to the file_header of the given
       "entry" and validates it	for the	data buffer following it. We do	also
       prefetch	some data from the data	buffer thereby trying to match the
       disk pagesize for faster	access later. The zzip_entry_fread will	then
       read in chunks of pagesizes which is the	size of	the internal readahead
       buffer. If an error occurs then null is returned.

	The zzip_entry_ffile function opens a file found by name, so it	does a
       search into the zip central directory with zzip_entry_findfile and
       whatever	is found first is given	to zzip_entry_fopen

	The zzip_entry_fread function reads more bytes into the	output buffer
       specified as arguments. The return value	is null	on eof or error, the
       stdio-like interface can	not distinguish	between	these so you need to
       check with zzip_entry_feof for the difference.

	The zzip_entry_fclose function releases	any zlib decoder info needed
       for decompression and dumps the ZZIP_ENTRY_FILE struct then.

	The zzip_entry_feof function allows to distinguish an error from an
       eof condition. Actually,	if we found an error but we did	already	reach
       eof then	we just	keep on	saying that it was an eof, so the app can just
       continue.

AUTHOR
	Guido Draheim <guidod@gmx.de>

COPYRIGHT
	Copyright (c) Guido Draheim, use under copyleft	(LGPL,MPL)

zziplib				    0.13.78		   zzip_entry_fopen(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=zzip_entry_ffile&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help