summaryrefslogtreecommitdiffstats
path: root/doc/lzlib.texi
diff options
context:
space:
mode:
Diffstat (limited to 'doc/lzlib.texi')
-rw-r--r--doc/lzlib.texi20
1 files changed, 14 insertions, 6 deletions
diff --git a/doc/lzlib.texi b/doc/lzlib.texi
index 378e630..1a9d9b6 100644
--- a/doc/lzlib.texi
+++ b/doc/lzlib.texi
@@ -6,8 +6,8 @@
@finalout
@c %**end of header
-@set UPDATED 19 June 2014
-@set VERSION 1.6-rc2
+@set UPDATED 27 August 2014
+@set VERSION 1.6
@dircategory Data Compression
@direntry
@@ -50,8 +50,7 @@ This manual is for Lzlib (version @value{VERSION}, @value{UPDATED}).
@end menu
@sp 1
-Copyright @copyright{} 2009, 2010, 2011, 2012, 2013, 2014
-Antonio Diaz Diaz.
+Copyright @copyright{} 2009-2014 Antonio Diaz Diaz.
This manual is free documentation: you have unlimited permission
to copy, distribute and modify it.
@@ -90,6 +89,11 @@ Additionally lzip is copylefted, which guarantees that it will remain
free forever.
@end itemize
+A nice feature of the lzip format is that a corrupt byte is easier to
+repair the nearer it is from the beginning of the file. Therefore, with
+the help of lziprecover, losing an entire archive just because of a
+corrupt byte near the beginning is a thing of the past.
+
The functions and variables forming the interface of the compression
library are declared in the file @samp{lzlib.h}. Usage examples of the
library are given in the files @samp{main.c} and @samp{bbexample.c} from
@@ -170,7 +174,7 @@ if( LZ_version()[0] != LZ_version_string[0] )
Lzlib internal functions need access to a memory chunk at least as large
as the dictionary size (sliding window). For efficiency reasons, the
input buffer for compression is twice as large as the dictionary size.
-Finally, for security reasons, lzlib uses two more internal buffers.
+Finally, for safety reasons, lzlib uses two more internal buffers.
These are the four buffers used by lzlib, and their guaranteed minimum
sizes:
@@ -292,7 +296,11 @@ indicates that the current member has been fully read (with the
@deftypefun int LZ_compress_sync_flush ( struct LZ_Encoder * const @var{encoder} )
Use this function to make available to @samp{LZ_compress_read} all the
-data already written with the @samp{LZ_compress_write} function.
+data already written with the @samp{LZ_compress_write} function. First
+call @samp{LZ_compress_read} until it returns 0. Then call
+@samp{LZ_compress_sync_flush}. Finally, call @samp{LZ_compress_read}
+again to read the remaining data.
+
Repeated use of @samp{LZ_compress_sync_flush} may degrade compression
ratio, so use it only when needed.
@end deftypefun