(64on32.htm body.htm configs.htm copying.htm developer.htm download.htm faq.htm fseeko.htm future.htm history.htm memdisk.htm mmapped.htm referentials.htm sfx-make.htm site.htm zzip-api.htm zzip-basics.htm zzip-crypt.htm zzip-cryptoid.htm zzip-extio.htm zzip-extras.htm zzip-file.htm zzip-index.htm zzip-parse.htm zzip-sdl-rwops.htm zzip-xor.htm zzip-zip.htm zziplib-master.dbk)
+<section> <date> 13. Aug 2003 </date>
<h2> 64on32 largefile information </h2>
-<!--border--> <date> 13. Aug 2003 </date>
-
+<section><!--border-->
<h3> largefile problems </h3>
<P>
its wrapped files) can not be larger than 2 Gigabyte anyway.
I would to refer you for deeper information to my website
about this problem-space at
-<P>
+</P>
<p><center><big>
- <a href="http://ac-archive.sf.net/largefile">
+ <a href="http://ac-archive.sf.net/largefile" remap="url">
ac-archive.sf.net/largefile </a>
</big></center></p>
+</section><section>
<h3> zziplib related </h3>
<P>
overridden then surely problems will arise.
</P>
+</section><section>
<h3> zziplib mixedmode option </h3>
<P>
current design.
</P>
+</section><section>
<h3> Implementation details </h3>
<P>
of the seekvalue.
</P>
+</section><section>
<h3> rpm extras and pkg-config </h3>
<P>
zzipwrap zzipwrap - Callback Wrappers for ZZipLib
zzip-zlib-config zzip-zlib-config - ZLib Config (for ZZipLib)
</pre></P>
+</section></section>
<html><head><title>zziplib <!--$title?--> </title>
+<link rel="stylesheet" type="text/css" href="sdocbook.css" />
<style>
a:link { text-decoration : none ; color : #000080 ; }
a:visited { text-decoration : none ; color : #200060 ; }
formatted by <a href="http://zziplib.sf.net/mksite">mksite.sh</a>
</p>
+<p><b>as xml:</b></p>
+<hr><a href="zzip-index.xml">Library</a>
+<br>-<a href="64on32.xml"> 64on32 extras</a>
+<br>-<a href="future.xml"> Next To Come</a> <br> <>
</td><td>
</td></tr></table></body></html>
+<section> <date> February 2003 </date>
<h2> Configuration </h2> of other projects using zziplib
-<!--border--> <date> February 2003 </date>
+<!--border-->
<P>
If using the zziplib with other project then you can use a number
usually less than 20k)
</P>
+<section>
<h3> pkg-config --libs </h3>
<P>
LIBS = -Wl,-E `pkg-config zziplib --libs`
my_prog.o : my_prog.c
- $(CC) $(CFLAGS) $< -o $@
+ $(CC) $(CFLAGS) $< -o $@
my_prog : my_prog.o
- $(LINK) $< $(LIBS)
+ $(LINK) $< $(LIBS)
</pre>
</P>
<P>
</pre>
</P>
+</section><section>
<h3> zzip-config </h3>
<P>
The pkg-config ".pc" files are relativly young in the history of
LIBS = -Wl,-E `zzip-config --libs`
my_prog.o : my_prog.c
- $(CC) $(CFLAGS) $< -o $@
+ $(CC) $(CFLAGS) $< -o $@
my_prog : my_prog.o
- $(LINK) $< $(LIBS)
+ $(LINK) $< $(LIBS)
</pre>
</P>
<P>
on the zziplib-devel/zziplib-dev part.
</P>
+</section><section>
<h3> autoconf macro </h3>
<P>
want to have. If it is only zziplib, than you could simply
use this in your configure.ac:
<pre>
- <b>PKG_CHECK_MODULES</b>([<b>ZZIP</b>],[zziplib >= 0.10.75])
+ <b>PKG_CHECK_MODULES</b>([<b>ZZIP</b>],[zziplib >= 0.10.75])
</pre>
</P><P>
which will provide you with two autoconf/automake variables
as well, <code>ZZIP_CFLAGS</code> and <code>ZZIP_LIBS</code>
</P>
+</section></section>
+<section> <date> 2004 </date>
<h2> COPYING - license information </h2> the public license terms
<P>
<em>"3.7 Larger Works"</em> here. Or read a lawyer text on
the legal result of the whole license.
</P>
+
+</section>
-<date> 2004-05-18 </date>
+<section> <date> 2004-05-18 </date>
<H2> Developer </H2> sourceforge CVS area
<center>
Looking forward to hear from <em>YOU</em>.
- <a href="mailto:guidod@gmx.de?subject=zzip:">guidod@gmx.de</a>
</P>
+</section>
-<date> 2004-05-18 </date>
-<H2> Download </H2> sourceforge file area
+<section> <date> 2004-05-18 </date>
+<H2> Download </H2> what to get to get it
+
+<section>
+<H4>Sourceforge File Area</H4>
<center>
<a href="http://sourceforge.net/project/showfiles.php?group_id=6389">
with highest bandwith in all corners of the world.
</P>
+</section><section>
<H4> Which Version To Download </H4>
<P>
been preparing zziplib for win32 using the gcc/mingw compile suite.
Please check also the <a href="developer.html">developer pages</a>.
</P>
+</section></section>
+<section> <date> 2004 </date>
<H2> FAQ </H2> (non)frequently asked questions
<BLOCKQUOTE>
a list of these notes for your information. Keep it up.
</BLOCKQUOTE>
<ul>
-<li><a href="#latin-1">extended ascii characters in names of zipped files </a>
-<li><a href="#utf-8">unicode support for names of zipped files </a>
-<li><a href="#timestamps">timestamps of zipped files </a>
-<li><a href="#install">installation instructions </a>
-<li><a href="#php">php zip module installation </a>
-<li><a href="#license">commercial support </a>
+<li> <a href="#latin-1">extended ascii characters in names of zipped files </a>
+</li>
+<li> <a href="#utf-8">unicode support for names of zipped files </a>
+</li>
+<li> <a href="#timestamps">timestamps of zipped files </a>
+</li>
+<li> <a href="#install">installation instructions </a>
+</li>
+<li> <a href="#php">php zip module installation </a>
+</li>
+<li> <a href="#license">commercial support </a>
+</li>
</ul>
<DL>
-<DT><a name="latin-1">
- zziplib does not support extended ascii characaters, winzip does </a></DT>
+<DT><a name="latin-1" />
+ zziplib does not support extended ascii characaters, winzip does</DT>
<DD><P>
That's somehow incorrect - the ascii range is the 7bit lower plane of
an 8bit character encoding. The upper plane had been non-standard for
However one might want to put a layer on top of the structure decoding
of zziplib that does the necessary detection of character encodings and
re-coding of name entries. Such a layer has not been written so far.
-</P>
-</DD>
-<DT><a name="utf-8">
- zziplib does not support any unicode plane for filenames </DT></a>
+</P></DD>
+<DT><a name="utf-8" />
+ zziplib does not support any unicode plane for filenames </DT>
<DD><P>
The pkware's appnote.text has an extra info block (id-8) for the
unicode name of the file entry but it was never actually being
as well and take advantage of filename matches in that encoding.
This will make it so there is not mismatch in character encoding
and implicit re-coding being needed.
-</P>
-</DD>
-<DT><a name="timestamps">
- zziplib does not return stat values for file timestamps </a></DT>
+</P></DD>
+<DT><a name="timestamps" />
+ zziplib does not return stat values for file timestamps </DT>
<DD><P>
That's correct and again a re-coding problem. The original
timestamp in each file entry is in DOS format (i.e. old-FAT).
out the DOS file timestamp and re-code it on their own. It's
just that zziplib does not provide that re-coding originally.
</P></DD>
-<DT><a name="install">
- how can one install the zziplib package </a></DT>
+<DT><a name="install" />
+ how can one install the zziplib package </DT>
<DD><P>
The zziplib project is opensource which effectly gives two ways of
installing the package: one can download the source archive and use
archives (rpm). Many vendors of unix compatible systems provide
precompiled binary packages of zziplib on their own.
</P></DD>
-<DT><a name="php">
- after installing zziplib the php zip module still does not work </a></DT>
+<DT><a name="php" />
+ after installing zziplib the php zip module still does not work </DT>
<DD><P>
Now that is one of <b>the most</b> frequently asked questions that
I do receive. There is just one major problem with it: I did not
installation fails, so that I could post it here. Where are you?
Yours desperatly... ;-)
</P></DD>
-<DT><a name="license">
- how to obtain a license and support contract for a commercial project
-</a></DT>
+<DT><a name="license" />
+ how to obtain a license and support contract for a commercial project </DT>
<DD><P>
The zziplib has been created as a spare time project and it is put
under a very easy free public license. Even for commercial projects
</DL>
<P> and as always - <em> Patches are welcome </em> - </P>
+</section>
+<section> <date> 2005 </date>
<H2> zzip/fseeko </H2> zip access for stdio handle
<BLOCKQUOTE>
parse the structure, find files and return a decoded bytestream.
</BLOCKQUOTE>
+<section>
<H3> stdio disk handle </H3>
<P>
}
</PRE>
+</section><section>
<H3> find a zipped file </H3>
<P>
}
</PRE>
+</section><section>
<H3> reading bytes </H3>
<P>
root of the zip disk <code>FILE</code>.
</P>
+</section><section>
<H3> ZZIP_ENTRY inspection </H3>
<P>
extern zzip_size_t zzip_disk_entry_sizeto_end( zzip_disk_entry* entry);
extern char* zzip_disk_entry_skipto_end( zzip_disk_entry* entry);
</PRE>
+</section></section>
-<h2> ZZIP Future </h2> What next to come.
-
-<!--border--> <date> 15. July 2002 </date>
+<?xml-stylesheet type="text/css" href="sdocbook.css" ?>
+<section> <date> 15. July 2002 </date>
+<h2> ZZIP Future </h2> What next to come.
+<section><!--border-->
<h3> ZIP-Write </h3>
<P>
standalone zip command utilities.
</P>
+</section><section>
<h3> readdir for subdir inside zip magicdir </h3>
<P>
to do it and send me patches for free.
</P>
+</section><section>
<h3> obfuscation example project </h3>
<P>
amount of work for it! (otherwise a great student project).
</P>
+</section><section>
<h3> zip/unzip tool </h3>
<P>
amount of work for it, I guess 40..80 hours as there is a lot
of fine-tuning needed to match the infozip model.
</P>
+</section>
+</section>
+<section><date>created 1.Jun.2000, last updated 25.Apr.2002 </date>
<h2> History and Links </h2> plus Installation and Contact Hints
<!--border-->
-<date>created 1.Jun.2000, last updated 25.Apr.2002 </date>
-
+<section>
<h3> A Bit Of History </h3>
<P>
today including PPP packet compression and PNG picture compression.
</P>
+</section><section>
<h3> Installation </h3>
<P>
easy to be derived from the <a href="Makefile.am">Makefile.am</a>
</P>
+</section><section>
<h3> Contact </h3>
<P>
comments and sourcecode.
</P>
+</section><section>
<h3> Links </h3>
<P>
<a href="http://zipios.sourceforge.net">zipios++</a> that
mangles zip access into C++ iostream facilities.
</P>
+
+</section></section>
+<section> <date> 2005 </date>
<H2> zzip/memdisk </H2> zip cache for mmapped views
<BLOCKQUOTE>
to any host-local format as required.
</BLOCKQUOTE>
+<section>
<H3> zzip disk handle </H3>
<P>
leaves the handles intact.
</P>
+</section><section>
<H3> reading the central directory </H3>
<P>
zzip_mem_disk_fclose (ZZIP_DISK_FILE* file);
inline int
zzip_mem_disk_feof (ZZIP_DISK_FILE* file);
+</PRE>
+</section></section>
+<section> <date> 2005 </date>
<H2> zzip/mmapped </H2> zip access for mmapped views
<BLOCKQUOTE>
parse the structure, find files and return a decoded bytestream.
</BLOCKQUOTE>
+<section>
<H3> zzip disk handle </H3>
<P>
char* buffer, zzip_size_t buflen);
</PRE>
+</section><section>
<H3> reading the central directory </H3>
<P>
}
</PRE>
+</section><section>
<H3> find a zipped file </H3>
<P>
}
</PRE>
+</section><section>
<H3> reading bytes </H3>
<P>
root of the zip disk <code>FILE</code>.
</P>
+</section><section>
<H3> ZZIP_DISK_ENTRY inspection </H3>
<P>
struct zzip_disk_entry* entry);
</PRE>
+</section></section>
+<section><date> 15. July 2002 </date>
<h2> ZZIP Referentials </h2> Where is it used.
-<!--noborder--><date> 15. July 2002 </date>
+<!--noborder-->
+<section>
<h3> GPL Rant </h3>
-<P><blockquote>
+<BLOCKQUOTE>
The GPL/LGPL do not have a clause like MPL and others to notify the
original author about certain usages of the library - that's a pity
since I do not get to know many of the areas where zziplib has come
than a handful of people wrote to me - mostly for having found a bug
or having a feature request. Be nice, and write even if you have had
successfully implanted zziplib in your project... I love to hear that ;-)
-</blockquote></P>
+</BLOCKQUOTE>
+</section><section>
<h3> opensource games </h3>
-<P><blockquote>
+<BLOCKQUOTE>
Although the library has not been written focusing on game data,
it has it greatest success just there. The SDL-rwops example did
further it by great amounts, people just like it to have the
thousand of small bitmaps to be assembled into one big dat file,
and put the AI scripts just next to them.
-</blockquote></P>
+</BLOCKQUOTE>
<ul><li> Underworld Adventures: <br>
<a href="http://uwadv.sourceforge.net">
http://uwadv.sourceforge.net</a>
</li></ul>
+</section><section>
<h3> opensource apps/libs </h3>
-<P><blockquote>
+<BLOCKQUOTE>
Here the most important feature has been the smalls size of this
library and the possible to use its autoconf script and even for
those who don't, it is easy to make a custom configuration. The
source code is easy to understand and therefore to customize for
the needs of the app/lib that wants to use the functionality.
-</blockquote></P>
+</BLOCKQUOTE>
<ul><li> PHP ZIP Module <br>
<a href="http://www.php.net/manual/en/ref.zip.php">
http://www.php.net/manual/en/ref.zip.php</a>
</li></ul>
+</section><section>
<h3> commercial usage </h3>
-<P><blockquote>
+<BLOCKQUOTE>
For commercial usage, you can bind many small files into a zip
file for easier handling. Obfuscation and io-wrapping help
greatly to implant it in areas even far from posix-io grounds.
-</blockquote></P>
+</BLOCKQUOTE>
<ul><li> Media Portal Backside <br>
<a href="http://www.appwares.com">
http://www.appwares.com</a>
</li></ul>
+</section></section>
+<section> <date> February 2003 </date>
<h2> SFX-Make </h2> combining an EXE with a ZIP archive
-<!--border--> <date> February 2003 </date>
+<!--border-->
+<section>
<h3> How To </h3>
<P>
In this section we walk you through the steps of combining an EXE
magic (from the exe info header).
</P>
+</section><section>
<h3> Step 1: Creating The Zip Combination </h3>
<P>
Choose your exe file (example.exe) and wrap that file into a
the same task.
</P>
+</section><section>
<h3> Step 2: Accessing The Data From The Program </h3>
<P>
parts of your program.
</P>
+</section><section>
<h3> Step 3: Using Obfuscation Along </h3>
<P>
static zzip_ssize_t xor_read (int f, void* p, zzip_size_t l)
{
zzip_ssize_t r = read(f, p, l);
- zzip_ssize_t x; char* q; for (x=0, q=p; x < r; x++) q[x] ^= xor_value;
+ zzip_ssize_t x; char* q; for (x=0, q=p; x < r; x++) q[x] ^= xor_value;
return r;
}
the zziplib-shipped tool `zzipxorcopy` does know an option to just
set the xor-value with which to obfuscate the data.
</P>
+</section></section>
</b></big></big></big>
<br><big><b> <!--VERSION--> </b></big>
</center>
-<hr> <a alt="zzip-index - Overview"
- href="zzip-index.html">Library</a>
-<br>-<a alt="zzip-zip - Accessing Zip Archives with ZLib Decompression"
- href="zzip-zip.html">ZIP Access</a>
-<br>-<a alt="zzip-file - Using Zipped Files Transparently"
- href="zzip-file.html">Transparently</a>
-<br>-<a alt="zzip-sdl-rwops - Example to make an SDL_rwops Inteface"
- href="zzip-sdl-rwops.html">SDLrwops Example</a>
-<br>-<a alt="zzip-extio - Customizing the file access"
- href="zzip-extio.html">ext/io Customization</a>
-<br>-<a alt="zzip-xor - Using obfuscations like xor"
- href="zzip-xor.html">xor/io Obfuscation</a>
-<br>-<a alt="zzip-api - The complete API description"
- href="zzip-api.html">Library API</a>
-<br>-<a alt="zzip-parse - About zip parsing internals"
- href="zzip-parse.html">Parsing ZIPs</a>
-<br>-<a alt="64on32 - About largefile problems"
- href="64on32.html">64on32 extras</a>
-<br>-<a alt="future - What next to come"
- href="future.html">Next To Come</a>
-<br>-<a alt="configs - To Configure Your zziplib-based software"
- href="configs.html">Config Helpers</a>
-<br>-<a alt="sfx-make - to combine an EXE with a ZIP archive"
- href="sfx-make.html">Making a zip/exe</a>
-<br>-<a alt="history - Hints And Links"
- href="history.html">Hints And Links</a>
-<br>-<a alt="referentials - Where it is used"
- href="referentials.html">Referentials</a>
-<br> -<a alt="zziplib - The Functions List (autogenerated)"
- href="zziplib.html">Functions List #</a>
+<hr> <a href="zzip-index.html">Library</a>
+<br>-<a href="zzip-zip.html">ZIP Access</a>
+<br>-<a href="zzip-file.html">Transparently</a>
+<br>-<a href="zzip-sdl-rwops.html">SDLrwops Example</a>
+<br>-<a href="zzip-extio.html">ext/io Customization</a>
+<br>-<a href="zzip-xor.html">xor/io Obfuscation</a>
+<br>-<a href="zzip-api.html">Library API</a>
+<br>-<a href="zzip-parse.html">Parsing ZIPs</a>
+<br>-<a href="64on32.html">64on32 extras</a>
+<br>-<a href="future.html">Next To Come</a>
+<br>-<a href="configs.html">Config Helpers</a>
+<br>-<a href="sfx-make.html">Making a zip/exe</a>
+<br>-<a href="history.html">Hints And Links</a>
+<br>-<a href="referentials.html">Referentials</a>
+<br> -<a href="zziplib.html">Functions List #</a>
<!--START-->
-<br> -<a alt="zzip/man - The Manual Pages (autogenerated)"
- href="man/index.html">The Manual Pages #</a>
+<br> -<a href="man/index.html">The Manual Pages #</a>
<!--ENDS-->
<br>    <small>(# autogenerated)</small>
+<section> <date> 20. July 2002 </date>
<h2> ZZIP Programmers Interface </h2> The complete API description.
-<!--border--> <date> 20. July 2002 </date>
+<!--border-->
<P>
The zzip library was orginally developped by Tomi Ollila as a
<dt> <a href="zzip-extras.html">Extras</a> </dt>
<dd> ext/io init, StdC calls, Error defs, ReOpen, FileStat </dd>
</dl>
+</section>
+<section> <date> 20. July 2002 </date>
<h2> ZZIP API Basics </h2> The open/close API description.
-<!--border--> <date> 20. July 2002 </date>
+<!--border-->
+<section>
<h3> Basics </h3>
<P>
it is a magic wrapper that can automagically handle both real
files/directories or zip-contained files. This includes:
</P>
-<table cellpadding=10 width=100%><tr><td><table border=1 width=100%>
+<table cellpadding=10 width=100%><tr><td><table width=100% border=1>
<tr><td width=50%> zzip_opendir </td><td width=50%> opendir </td></tr>
<tr><td width=50%> zzip_readdir </td><td width=50%> readdir </td></tr>
<tr><td width=50%> zzip_closedir </td><td width=50%> closedir </td></tr>
an initial subpath of "test" and let zzip_readdir skip all entries
that do not start with "test/"). This is left for excercie ;-)
</P>
+</section></section>
+<section> <date> 15. July 2002 </date>
<h2> ZIP Std Encryption </h2> Standard Zip Encryption is Weak!
-<!--border--> <date> 15. July 2002 </date>
+<!--border-->
+<section>
<h3> Some rationale </h3>
<P>
zziplib - if you need real encryption, use real encryption
software and its fileformat that supports it, not zip files.
</P>
+</section></section>
+<section> <date> 11. May 2004 </date>
<h2> ZIP Ext Encryption </h2> ext/io used for cryptoid plugins
-<!--border--> <date> 11. May 2004 </date>
+<!--border-->
+<section>
<h3> Stronger Obfuscation For ZZip </h3>
<P>
usually named "tell(fd)". Since this call is not mandated by
posix, you can emulate it with the posix lseek() call which
returns the resulting offset after the operation was performed,
- so we just seek by a zero offset:
-<br><code> <> <> <> <> #define tell(fd) lseek(fd,0,SEEK_CUR)
+ so we just seek by a zero offset: <br><code>
+ <> <> <> <> #define tell(fd) lseek(fd,0,SEEK_CUR)
+</code>
</P>
<P>
}
</pre>
+</section></section>
+<section> <date>15. July 2002 </date>
<h2> ZZIP-EXT/IO </h2> Customizing the file access
-<!--border--><date>15. July 2002 </date>
+<!--border-->
+<section>
<h3> The EXT/IO calls </h3>
<P>
these calls - and it only needs to declare them on opening a zipped file.
</P>
+</section><section>
<h3> The EXT stringlist </h3>
<P>
in the place of the original zip.
</P>
+</section><section>
<h3> The IO handlers </h3>
<P>
</pre>
</P>
+</section><section>
<h3> Finally </h3>
<P>
idea, write today... or next week.
</P>
-
-
-
-
+</section></section>
+<section><date> 20. July 2002 </date>
<h2> ZZIP API extras </h2> The check/init API description.
-<!--border--> <date> 20. July 2002 </date>
+<!--border-->
+<section>
<h3> Extras </h3>
<P>
and instead just shares the ZZIP_DIR if possible</td></tr>
</table></td></tr></table>
+</section></section>
+<section> <date> 1. June 2000 </date>
<h2> ZIP File Access </h2> Using Zipped Files Transparently
-<!--border--> <date> 1. June 2000 </date>
+<!--border-->
+<section>
<h3>The Typedef</h3>
<P>
whereas the real file is used in preference.
</P>
+</section><section>
<h3>Zipped File</h3>
<P>
decompressed on the fly.
</P>
+</section><section>
<h3>Zip Directory</h3>
<P>
of the zip-file.
</P>
+</section><section>
<h3>Differences</h3>
<P>
<nobr><tt>`cd $(dir) && zip -D ../$(dir).zip *`</tt></nobr>.
</P>
+</section><section>
<h3>Advantages</h3>
<P>
next to the zip-archive that contains the original</em>.
</P>
+</section><section>
<h3>Issues</h3>
<P>
will stand up to implement that functionality someday.
</P>
+</section></section>
+<section> <date> created 1.Jun.2000, last updated 09.Feb.2003 </date>
<h2> The Library </h2> Overview
<!--border-->
-<date> created 1.Jun.2000, last updated 09.Feb.2003 </date>
<!-- 1. section of zzip-zip.html -->
zlib algorithm</a> which is actually used by the <tt>zip/unzip</tt> tools.
</P>
-<p align="center"><span align="center">
+<center>
The library allows reading zip archives in a number of ways,
-</span></p><dl>
+</center><dl>
<dt>archive mode:</dt>
<dd> reading the zip directory and extracting files from it.
This is the traditional mode as seen with unzip-utilities.
given as well.
</dd>
</dl>
-
+</section>
+<section> <date> 17. December 2002 </date>
<h2> ZIP Format </h2> About Zip Parsing Internals...
-<!--border--> <date> 17. December 2002 </date>
+<!--border-->
+<section>
<h3> ZIP Trailer Block </h3>
<P>
and the second value tells us the byte size of the central directory.
</P>
+</section><section>
<h3> ZIP Central Directory </h3>
<P>
directory entry - just to be able to get to the next entry.
</P>
+</section><section>
<h3> Internal Directory </h3>
<P>
parallel in the zip's central directory.
</P>
+</section><section>
<h3> File Entry </h3>
<P>
as that.
</P>
+</section><section>
<h3> ZZIP_DIR / ZZIP_FILE </h3>
<P>
is only used if that is actually possible.
</P>
+</section></section>
+<section> <date> 19. Aug 2001 </date>
<h2> SDL rwops </h2> Example to make an SDL_rwops interface.
<p><small> some <b>MSVC</b> help in
<a href="README.SDL">README.SDL</a>
</small></p>
-<!--border--> <date> 19. Aug 2001 </date>
+<!--border-->
+<section>
<h3> Source </h3>
<P>
into the callback fields.
</P>
+</section><section>
<h3> Usage </h3>
<P>
of course where they belong. When you've done that
then go to X/share/myapp and
<br><code>
- `(cd graphics/ && zip -9r ../graphics.zip .)` </br></code>
+ `(cd graphics/ && zip -9r ../graphics.zip .)` </code><br>
and rename the graphics/ subfolder - and still all your files
are found: a filepath like X/shared/graphics/game/greetings.bmp
will open X/shared/graphics.zip and return the zipped file
game/greetings.bmp in the zip-archive (for reading that is).
</P>
+</section><section>
<h3> Test </h3>
<P>
there is no build-processing that had been tweaked much by automake/autoconf.
Just use sdl-config and zzip-config to add the needed flags.
</P>
+</section></section>
+<section> <date> 15. July 2002 </date>
<h2> ZIP Obfuscation </h2> Using obfuscations like XOR.
-<!--border--> <date> 15. July 2002 </date>
+<!--border-->
+<section>
<h3> The EXT/IO calls </h3>
<P>
</pre>
</P>
+</section><section>
<h3> The examples </h3>
<P>
<p align="right"><small><small>
<a href="copying.html">staticlinking?</a>
</small></small></p>
+</section></section>
+<section><date> 1. June 2000 </date>
<h2> ZIP Access </h2> Accessing Zip Archives with ZLib Decompression
-<!--border--> <date> 1. June 2000 </date>
+<!--border-->
+<section>
<h3> The Library </h3>
<P>
is not needed in that final operation.
</P>
+</section><section>
<h3> Using A Zip-File </h3>
<P>
<p><pre> ZZIP_DIR* dir = zzip_dir_open("test.zip",0);
if (dir) {
ZZIP_DIRENT dirent;
- if (zzip_dir_read(dir,&dirent) {
+ if (zzip_dir_read(dir,&dirent) {
/* show info for first file */
print("%s %i/%i", dirent.d_name, dirent.d_csize, dirent.st_size);
}
}
</pre></p>
+</section><section>
<h3> Magic Zipped Files </h3>
<P>
<a href="zziplib.html#zzip_realfd"> zzip_realfd </a> respectivly.
</P>
+</section><section>
<h3> Errors & Infos </h3>
<P>
<a href="zziplib.h"> zziplib.h </a> to your system's
<tt>include</tt> directory.
</P>
+</section></section>
--- /dev/null
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
+ "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
+<!-- using <chapter> allows to append a <reference> with manpages -->
+<section>
+<sectioninfo>
+<date> 2006-01-01</date>
+<authorblurb><simpara> Guido Draheim </simpara></authorblurb>
+</sectioninfo>
+<title> ZZIPlib Documentation </title>
+
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-index.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-zip.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-file.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-sdl-rwops.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-extio.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-xor.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-crypt.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-cryptoid.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-api.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-basics.xml" />
+<!--
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-extras.xml" />
+-->
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="zzip-parse.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="64on32.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="future.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="fseeko.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="mmapped.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="memdisk.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="configs.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="sfx-make.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="history.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="referentials.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="copying.xml" />
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" parse="xml"
+ href="faq.xml" />
+</section>