diff options
Diffstat (limited to '')
-rw-r--r-- | doc/lzlib.info | 125 | ||||
-rw-r--r-- | doc/lzlib.texinfo | 87 | ||||
-rw-r--r-- | doc/minilzip.1 | 6 |
3 files changed, 124 insertions, 94 deletions
diff --git a/doc/lzlib.info b/doc/lzlib.info index 84e0501..47460f9 100644 --- a/doc/lzlib.info +++ b/doc/lzlib.info @@ -3,7 +3,7 @@ lzlib.texinfo. INFO-DIR-SECTION Data Compression START-INFO-DIR-ENTRY -* Lzlib: (lzlib). A compression library for lzip files +* Lzlib: (lzlib). Compression library for lzip files END-INFO-DIR-ENTRY @@ -12,22 +12,22 @@ File: lzlib.info, Node: Top, Next: Introduction, Up: (dir) Lzlib Manual ************ -This manual is for Lzlib (version 1.4, 28 May 2013). +This manual is for Lzlib (version 1.5-rc1, 28 July 2013). * Menu: * Introduction:: Purpose and features of Lzlib -* Library Version:: Checking library version +* Library version:: Checking library version * Buffering:: Sizes of Lzlib's buffers -* Parameter Limits:: Min / max values for some parameters -* Compression Functions:: Descriptions of the compression functions -* Decompression Functions:: Descriptions of the decompression functions -* Error Codes:: Meaning of codes returned by functions -* Error Messages:: Error messages corresponding to error codes -* Data Format:: Detailed format of the compressed data +* Parameter limits:: Min / max values for some parameters +* Compression functions:: Descriptions of the compression functions +* Decompression functions:: Descriptions of the decompression functions +* Error codes:: Meaning of codes returned by functions +* Error messages:: Error messages corresponding to error codes +* Data format:: Detailed format of the compressed data * Examples:: A small tutorial with examples * Problems:: Reporting bugs -* Concept Index:: Index of concepts +* Concept index:: Index of concepts Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz. @@ -36,7 +36,7 @@ This manual is for Lzlib (version 1.4, 28 May 2013). copy, distribute and modify it. -File: lzlib.info, Node: Introduction, Next: Library Version, Prev: Top, Up: Top +File: lzlib.info, Node: Introduction, Next: Library version, Prev: Top, Up: Top 1 Introduction ************** @@ -46,6 +46,10 @@ and decompression functions, including integrity checking of the decompressed data. The compressed data format used by the library is the lzip format. Lzlib is written in C. + The lzip file format is designed for long-term data archiving. It is +clean, provides very safe 4 factor integrity checking, and is backed by +the recovery capabilities of lziprecover. + The functions and variables forming the interface of the compression library are declared in the file `lzlib.h'. Usage examples of the library are given in the files `main.c' and `bbexample.c' from the @@ -73,14 +77,23 @@ compressed data, so the library should never crash even in case of corrupted input. Lzlib implements a simplified version of the LZMA (Lempel-Ziv-Markov -chain-Algorithm) algorithm. The original LZMA algorithm was designed by -Igor Pavlov. For a description of the LZMA algorithm, see the Lzip -manual. +chain-Algorithm) algorithm. The high compression of LZMA comes from +combining two basic, well-proven compression ideas: sliding dictionaries +(LZ77/78) and markov models (the thing used by every compression +algorithm that uses a range encoder or similar order-0 entropy coder as +its last stage) with segregation of contexts according to what the bits +are used for. + + The ideas embodied in lzlib are due to (at least) the following +people: Abraham Lempel and Jacob Ziv (for the LZ algorithm), Andrey +Markov (for the definition of Markov chains), G.N.N. Martin (for the +definition of range encoding), Igor Pavlov (for putting all the above +together in LZMA), and Julian Seward (for bzip2's CLI). -File: lzlib.info, Node: Library Version, Next: Buffering, Prev: Introduction, Up: Top +File: lzlib.info, Node: Library version, Next: Buffering, Prev: Introduction, Up: Top -2 Library Version +2 Library version ***************** -- Function: const char * LZ_version ( void ) @@ -98,7 +111,7 @@ application. error( "bad library version" ); -File: lzlib.info, Node: Buffering, Next: Parameter Limits, Prev: Library Version, Up: Top +File: lzlib.info, Node: Buffering, Next: Parameter limits, Prev: Library version, Up: Top 3 Buffering *********** @@ -126,9 +139,9 @@ minimum sizes: member currently being decompressed or 64KiB, whichever is larger. -File: lzlib.info, Node: Parameter Limits, Next: Compression Functions, Prev: Buffering, Up: Top +File: lzlib.info, Node: Parameter limits, Next: Compression functions, Prev: Buffering, Up: Top -4 Parameter Limits +4 Parameter limits ****************** These functions provide minimum and maximum values for some parameters. @@ -155,9 +168,9 @@ Current values are shown in square brackets. Returns the largest valid match length limit [273]. -File: lzlib.info, Node: Compression Functions, Next: Decompression Functions, Prev: Parameter Limits, Up: Top +File: lzlib.info, Node: Compression functions, Next: Decompression functions, Prev: Parameter limits, Up: Top -5 Compression Functions +5 Compression functions *********************** These are the functions used to compress data. In case of error, all of @@ -254,7 +267,7 @@ calling `LZ_compress_errno' before using it. -- Function: enum LZ_Errno LZ_compress_errno ( struct LZ_Encoder * const ENCODER ) - Returns the current error code for ENCODER (*note Error Codes::). + Returns the current error code for ENCODER (*note Error codes::). -- Function: int LZ_compress_finished ( struct LZ_Encoder * const ENCODER ) @@ -287,9 +300,9 @@ calling `LZ_compress_errno' before using it. perhaps not yet read. -File: lzlib.info, Node: Decompression Functions, Next: Error Codes, Prev: Compression Functions, Up: Top +File: lzlib.info, Node: Decompression functions, Next: Error codes, Prev: Compression functions, Up: Top -6 Decompression Functions +6 Decompression functions ************************* These are the functions used to decompress data. In case of error, all @@ -370,7 +383,7 @@ verified by calling `LZ_decompress_errno' before using it. -- Function: enum LZ_Errno LZ_decompress_errno ( struct LZ_Decoder * const DECODER ) - Returns the current error code for DECODER (*note Error Codes::). + Returns the current error code for DECODER (*note Error codes::). -- Function: int LZ_decompress_finished ( struct LZ_Decoder * const DECODER ) @@ -419,9 +432,9 @@ verified by calling `LZ_decompress_errno' before using it. but perhaps not yet read. -File: lzlib.info, Node: Error Codes, Next: Error Messages, Prev: Decompression Functions, Up: Top +File: lzlib.info, Node: Error codes, Next: Error messages, Prev: Decompression functions, Up: Top -7 Error Codes +7 Error codes ************* Most library functions return -1 to indicate that they have failed. But @@ -471,9 +484,9 @@ whether a call failed. If the call failed, then you can examine Problems::). -File: lzlib.info, Node: Error Messages, Next: Data Format, Prev: Error Codes, Up: Top +File: lzlib.info, Node: Error messages, Next: Data format, Prev: Error codes, Up: Top -8 Error Messages +8 Error messages **************** -- Function: const char * LZ_strerror ( const enum LZ_Errno LZ_ERRNO ) @@ -487,9 +500,9 @@ File: lzlib.info, Node: Error Messages, Next: Data Format, Prev: Error Codes, `LZ_(de)compress_errno'. -File: lzlib.info, Node: Data Format, Next: Examples, Prev: Error Messages, Up: Top +File: lzlib.info, Node: Data format, Next: Examples, Prev: Error messages, Up: Top -9 Data Format +9 Data format ************* Perfection is reached, not when there is no longer anything to add, but @@ -545,6 +558,8 @@ with no additional information before, between, or after them. The lzma stream, finished by an end of stream marker. Uses default values for encoder properties. See the lzip manual for a full description. + Lzip only uses the LZMA marker `2' ("End Of Stream" marker). Lzlib + also uses the LZMA marker `3' ("Sync Flush" marker). `CRC32 (4 bytes)' CRC of the uncompressed original data. @@ -560,7 +575,7 @@ with no additional information before, between, or after them. -File: lzlib.info, Node: Examples, Next: Problems, Prev: Data Format, Up: Top +File: lzlib.info, Node: Examples, Next: Problems, Prev: Data format, Up: Top 10 A small tutorial with examples ********************************* @@ -680,7 +695,7 @@ next member in case of data error. 7) LZ_decompress_close -File: lzlib.info, Node: Problems, Next: Concept Index, Prev: Examples, Up: Top +File: lzlib.info, Node: Problems, Next: Concept index, Prev: Examples, Up: Top 11 Reporting Bugs ***************** @@ -696,9 +711,9 @@ by running `minilzip --version' or in `LZ_version_string' from `lzlib.h'. -File: lzlib.info, Node: Concept Index, Prev: Problems, Up: Top +File: lzlib.info, Node: Concept index, Prev: Problems, Up: Top -Concept Index +Concept index ************* @@ -706,34 +721,34 @@ Concept Index * buffering: Buffering. (line 6) * bugs: Problems. (line 6) -* compression functions: Compression Functions. (line 6) -* data format: Data Format. (line 6) -* decompression functions: Decompression Functions. +* compression functions: Compression functions. (line 6) +* data format: Data format. (line 6) +* decompression functions: Decompression functions. (line 6) -* error codes: Error Codes. (line 6) -* error messages: Error Messages. (line 6) +* error codes: Error codes. (line 6) +* error messages: Error messages. (line 6) * examples: Examples. (line 6) * getting help: Problems. (line 6) * introduction: Introduction. (line 6) -* library version: Library Version. (line 6) -* parameter limits: Parameter Limits. (line 6) +* library version: Library version. (line 6) +* parameter limits: Parameter limits. (line 6) Tag Table: -Node: Top219 -Node: Introduction1319 -Node: Library Version3165 -Node: Buffering3810 -Node: Parameter Limits4929 -Node: Compression Functions5886 -Node: Decompression Functions12096 -Node: Error Codes18257 -Node: Error Messages20196 -Node: Data Format20775 -Node: Examples23268 -Node: Problems27351 -Node: Concept Index27923 +Node: Top217 +Node: Introduction1322 +Node: Library version3903 +Node: Buffering4548 +Node: Parameter limits5667 +Node: Compression functions6624 +Node: Decompression functions12834 +Node: Error codes18995 +Node: Error messages20934 +Node: Data format21513 +Node: Examples24136 +Node: Problems28219 +Node: Concept index28791 End Tag Table diff --git a/doc/lzlib.texinfo b/doc/lzlib.texinfo index c08303e..2830694 100644 --- a/doc/lzlib.texinfo +++ b/doc/lzlib.texinfo @@ -6,19 +6,19 @@ @finalout @c %**end of header -@set UPDATED 28 May 2013 -@set VERSION 1.4 +@set UPDATED 28 July 2013 +@set VERSION 1.5-rc1 @dircategory Data Compression @direntry -* Lzlib: (lzlib). A compression library for lzip files +* Lzlib: (lzlib). Compression library for lzip files @end direntry @ifnothtml @titlepage @title Lzlib -@subtitle A compression library for lzip files +@subtitle Compression library for lzip files @subtitle for Lzlib version @value{VERSION}, @value{UPDATED} @author by Antonio Diaz Diaz @@ -36,17 +36,17 @@ This manual is for Lzlib (version @value{VERSION}, @value{UPDATED}). @menu * Introduction:: Purpose and features of Lzlib -* Library Version:: Checking library version +* Library version:: Checking library version * Buffering:: Sizes of Lzlib's buffers -* Parameter Limits:: Min / max values for some parameters -* Compression Functions:: Descriptions of the compression functions -* Decompression Functions:: Descriptions of the decompression functions -* Error Codes:: Meaning of codes returned by functions -* Error Messages:: Error messages corresponding to error codes -* Data Format:: Detailed format of the compressed data +* Parameter limits:: Min / max values for some parameters +* Compression functions:: Descriptions of the compression functions +* Decompression functions:: Descriptions of the decompression functions +* Error codes:: Meaning of codes returned by functions +* Error messages:: Error messages corresponding to error codes +* Data format:: Detailed format of the compressed data * Examples:: A small tutorial with examples * Problems:: Reporting bugs -* Concept Index:: Index of concepts +* Concept index:: Index of concepts @end menu @sp 1 @@ -65,6 +65,10 @@ and decompression functions, including integrity checking of the decompressed data. The compressed data format used by the library is the lzip format. Lzlib is written in C. +The lzip file format is designed for long-term data archiving. It is +clean, provides very safe 4 factor integrity checking, and is backed by +the recovery capabilities of lziprecover. + 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 @@ -91,13 +95,22 @@ any signal handler. The decoder checks the consistency of the compressed data, so the library should never crash even in case of corrupted input. Lzlib implements a simplified version of the LZMA (Lempel-Ziv-Markov -chain-Algorithm) algorithm. The original LZMA algorithm was designed by -Igor Pavlov. For a description of the LZMA algorithm, see the Lzip -manual. - - -@node Library Version -@chapter Library Version +chain-Algorithm) algorithm. The high compression of LZMA comes from +combining two basic, well-proven compression ideas: sliding dictionaries +(LZ77/78) and markov models (the thing used by every compression +algorithm that uses a range encoder or similar order-0 entropy coder as +its last stage) with segregation of contexts according to what the bits +are used for. + +The ideas embodied in lzlib are due to (at least) the following people: +Abraham Lempel and Jacob Ziv (for the LZ algorithm), Andrey Markov (for +the definition of Markov chains), G.N.N. Martin (for the definition of +range encoding), Igor Pavlov (for putting all the above together in +LZMA), and Julian Seward (for bzip2's CLI). + + +@node Library version +@chapter Library version @cindex library version @deftypefun {const char *} LZ_version ( void ) @@ -150,8 +163,8 @@ whichever is larger. @end itemize -@node Parameter Limits -@chapter Parameter Limits +@node Parameter limits +@chapter Parameter limits @cindex parameter limits These functions provide minimum and maximum values for some parameters. @@ -182,8 +195,8 @@ Returns the largest valid match length limit [273]. @end deftypefun -@node Compression Functions -@chapter Compression Functions +@node Compression functions +@chapter Compression functions @cindex compression functions These are the functions used to compress data. In case of error, all of @@ -288,7 +301,7 @@ accept a @var{size} up to the returned number of bytes. @deftypefun {enum LZ_Errno} LZ_compress_errno ( struct LZ_Encoder * const @var{encoder} ) -Returns the current error code for @var{encoder} (@pxref{Error Codes}). +Returns the current error code for @var{encoder} (@pxref{Error codes}). @end deftypefun @@ -328,8 +341,8 @@ perhaps not yet read. @end deftypefun -@node Decompression Functions -@chapter Decompression Functions +@node Decompression functions +@chapter Decompression functions @cindex decompression functions These are the functions used to decompress data. In case of error, all @@ -421,7 +434,7 @@ will accept a @var{size} up to the returned number of bytes. @deftypefun {enum LZ_Errno} LZ_decompress_errno ( struct LZ_Decoder * const @var{decoder} ) -Returns the current error code for @var{decoder} (@pxref{Error Codes}). +Returns the current error code for @var{decoder} (@pxref{Error codes}). @end deftypefun @@ -480,8 +493,8 @@ perhaps not yet read. @end deftypefun -@node Error Codes -@chapter Error Codes +@node Error codes +@chapter Error codes @cindex error codes Most library functions return -1 to indicate that they have failed. But @@ -538,8 +551,8 @@ A bug was detected in the library. Please, report it (@pxref{Problems}). @end deftypevr -@node Error Messages -@chapter Error Messages +@node Error messages +@chapter Error messages @cindex error messages @deftypefun {const char *} LZ_strerror ( const enum LZ_Errno @var{lz_errno} ) @@ -553,8 +566,8 @@ The value of @var{lz_errno} normally comes from a call to @end deftypefun -@node Data Format -@chapter Data Format +@node Data format +@chapter Data format @cindex data format Perfection is reached, not when there is no longer anything to add, but @@ -612,7 +625,9 @@ Valid values for dictionary size range from 4KiB to 512MiB. @item Lzma stream The lzma stream, finished by an end of stream marker. Uses default values -for encoder properties. See the lzip manual for a full description. +for encoder properties. See the lzip manual for a full description.@* +Lzip only uses the LZMA marker @samp{2} ("End Of Stream" marker). Lzlib +also uses the LZMA marker @samp{3} ("Sync Flush" marker). @item CRC32 (4 bytes) CRC of the uncompressed original data. @@ -793,8 +808,8 @@ find by running @w{@samp{minilzip --version}} or in @samp{LZ_version_string} from @samp{lzlib.h}. -@node Concept Index -@unnumbered Concept Index +@node Concept index +@unnumbered Concept index @printindex cp diff --git a/doc/minilzip.1 b/doc/minilzip.1 index eba916d..da2c211 100644 --- a/doc/minilzip.1 +++ b/doc/minilzip.1 @@ -1,12 +1,12 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1. -.TH MINILZIP "1" "May 2013" "Minilzip 1.4" "User Commands" +.TH MINILZIP "1" "July 2013" "Minilzip 1.5-rc1" "User Commands" .SH NAME Minilzip \- reduces the size of files .SH SYNOPSIS .B minilzip [\fIoptions\fR] [\fIfiles\fR] .SH DESCRIPTION -Minilzip \- A test program for the lzlib library. +Minilzip \- Test program for the lzlib library. .SH OPTIONS .TP \fB\-h\fR, \fB\-\-help\fR @@ -82,7 +82,7 @@ Report bugs to lzip\-bug@nongnu.org Lzlib home page: http://www.nongnu.org/lzip/lzlib.html .SH COPYRIGHT Copyright \(co 2013 Antonio Diaz Diaz. -Using Lzlib 1.4 +Using Lzlib 1.5\-rc1 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> .br This is free software: you are free to change and redistribute it. |