summaryrefslogtreecommitdiffstats
path: root/doc/clzip.info
diff options
context:
space:
mode:
Diffstat (limited to 'doc/clzip.info')
-rw-r--r--doc/clzip.info69
1 files changed, 31 insertions, 38 deletions
diff --git a/doc/clzip.info b/doc/clzip.info
index 8556191..2d83e3c 100644
--- a/doc/clzip.info
+++ b/doc/clzip.info
@@ -11,7 +11,7 @@ File: clzip.info, Node: Top, Next: Introduction, Up: (dir)
Clzip Manual
************
-This manual is for Clzip (version 1.14-rc1, 20 December 2023).
+This manual is for Clzip (version 1.14, 22 January 2024).
* Menu:
@@ -29,7 +29,7 @@ This manual is for Clzip (version 1.14-rc1, 20 December 2023).
* Concept index:: Index of concepts
- Copyright (C) 2010-2023 Antonio Diaz Diaz.
+ Copyright (C) 2010-2024 Antonio Diaz Diaz.
This manual is free documentation: you have unlimited permission to copy,
distribute, and modify it.
@@ -40,10 +40,9 @@ File: clzip.info, Node: Introduction, Next: Output, Prev: Top, Up: Top
1 Introduction
**************
-Clzip is a C language version of lzip, fully compatible with lzip 1.4 or
-newer. As clzip is written in C, it may be easier to integrate in
-applications like package managers, embedded devices, or systems lacking a
-C++ compiler.
+Clzip is a C language version of lzip, compatible with lzip 1.4 or newer.
+As clzip is written in C, it may be easier to integrate in applications like
+package managers, embedded devices, or systems lacking a C++ compiler.
Lzip is a lossless data compressor with a user interface similar to the
one of gzip or bzip2. Lzip uses a simplified form of the 'Lempel-Ziv-Markov
@@ -464,14 +463,9 @@ method is far more difficult.
Lzip has been designed, written, and tested with great care to replace
gzip and bzip2 as the standard general-purpose compressed format for
Unix-like systems. This chapter describes the lessons learned from these
-previous formats, and their application to the design of lzip.
-
- Lzip is developed by volunteers who lack the resources required for
-extensive testing in all circumstances. It is up to you to test lzip before
-using it in mission-critical applications. However, a compressor like lzip
-is not a toy, and maintaining it is not a hobby. Many people's data depend
-on it. Therefore the lzip file format has been reviewed carefully and is
-believed to be free from negligent design errors.
+previous formats, and their application to the design of lzip. The lzip
+format specification has been reviewed carefully and is believed to be free
+from design errors.
4.1 Format design
@@ -1016,8 +1010,7 @@ decoded) and 'code' (representing the current point within 'range').
'range' is initialized to 2^32 - 1, and 'code' is initialized to 0.
The range encoder produces a first 0 byte that must be ignored by the
-range decoder. This is done by shifting 5 bytes in the initialization of
-'code' instead of 4. (See the 'Range_decoder' constructor in the source).
+range decoder. (See the 'Range_decoder' constructor in the source).
7.4 Decoding and checking the LZMA stream
@@ -1197,7 +1190,7 @@ Appendix A Reference source code
********************************
/* Lzd - Educational decompressor for the lzip format
- Copyright (C) 2013-2023 Antonio Diaz Diaz.
+ Copyright (C) 2013-2024 Antonio Diaz Diaz.
This program is free software. Redistribution and use in source and
binary forms, with or without modification, are permitted provided
@@ -1368,9 +1361,9 @@ public:
return symbol;
}
- unsigned decode_bit( Bit_model & bm )
+ bool decode_bit( Bit_model & bm )
{
- unsigned symbol;
+ bool symbol;
const uint32_t bound = ( range >> bit_model_total_bits ) * bm.probability;
if( code < bound )
{
@@ -1416,8 +1409,8 @@ public:
unsigned symbol = 1;
for( int i = 7; i >= 0; --i )
{
- const unsigned match_bit = ( match_byte >> i ) & 1;
- const unsigned bit = decode_bit( bm[symbol+(match_bit<<8)+0x100] );
+ const bool match_bit = ( match_byte >> i ) & 1;
+ const bool bit = decode_bit( bm[symbol+(match_bit<<8)+0x100] );
symbol = ( symbol << 1 ) | bit;
if( match_bit != bit )
{
@@ -1621,7 +1614,7 @@ int main( const int argc, const char * const argv[] )
"See the lzip manual for an explanation of the code.\n"
"\nUsage: %s [-d] < file.lz > file\n"
"Lzd decompresses from standard input to standard output.\n"
- "\nCopyright (C) 2023 Antonio Diaz Diaz.\n"
+ "\nCopyright (C) 2024 Antonio Diaz Diaz.\n"
"License 2-clause BSD.\n"
"This is free software: you are free to change and redistribute it.\n"
"There is NO WARRANTY, to the extent permitted by law.\n"
@@ -1714,22 +1707,22 @@ Concept index

Tag Table:
Node: Top205
-Node: Introduction1212
-Node: Output7342
-Node: Invoking clzip8945
-Ref: --trailing-error9823
-Node: Quality assurance19929
-Node: Algorithm29060
-Node: File format32468
-Ref: coded-dict-size33898
-Node: Stream format35129
-Ref: what-is-coded37525
-Node: Trailing data46478
-Node: Examples48816
-Ref: concat-example50266
-Node: Problems51496
-Node: Reference source code52032
-Node: Concept index67094
+Node: Introduction1207
+Node: Output7331
+Node: Invoking clzip8934
+Ref: --trailing-error9812
+Node: Quality assurance19918
+Node: Algorithm28733
+Node: File format32141
+Ref: coded-dict-size33571
+Node: Stream format34802
+Ref: what-is-coded37198
+Node: Trailing data46072
+Node: Examples48410
+Ref: concat-example49860
+Node: Problems51090
+Node: Reference source code51626
+Node: Concept index66672

End Tag Table