Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: libdeflate
Source: <url://example.com>
#
# Please double check copyright with the licensecheck(1) command.

Files:     .cirrus.yml
           .github/workflows/ci.yml
           .gitignore
           CMakeLists.txt
           NEWS.md
           README.md
           lib/crc32_multipliers.h
           lib/crc32_tables.h
           lib/deflate_compress.h
           lib/deflate_constants.h
           lib/gzip_constants.h
           lib/lib_common.h
           lib/matchfinder_common.h
           lib/x86/decompress_impl.h
           lib/zlib_constants.h
           libdeflate-config.cmake.in
           libdeflate.h
           libdeflate.pc.in
           programs/CMakeLists.txt
           programs/config.h.in
           programs/test_checksums.c
           programs/test_custom_malloc.c
           programs/test_incomplete_codes.c
           programs/test_invalid_streams.c
           programs/test_litrunlen_overflow.c
           programs/test_overread.c
           programs/test_slow_decompression.c
           programs/test_trailing_bytes.c
           scripts/android_build.sh
           scripts/android_tests.sh
           scripts/benchmark.sh
           scripts/checksum.sh
           scripts/checksum_benchmarks.sh
           scripts/cmake-helper.sh
           scripts/deflate_benchmarks.sh
           scripts/exec_tests.sh
           scripts/gen_bitreverse_tab.py
           scripts/gen_default_litlen_costs.py
           scripts/gen_offset_slot_map.py
           scripts/gzip_tests.sh
           scripts/libFuzzer/.gitignore
           scripts/libFuzzer/deflate_compress/corpus/0
           scripts/libFuzzer/deflate_compress/fuzz.c
           scripts/libFuzzer/deflate_decompress/corpus/0
           scripts/libFuzzer/deflate_decompress/fuzz.c
           scripts/libFuzzer/fuzz.sh
           scripts/libFuzzer/gzip_decompress/corpus/0
           scripts/libFuzzer/gzip_decompress/fuzz.c
           scripts/libFuzzer/zlib_decompress/corpus/0
           scripts/libFuzzer/zlib_decompress/fuzz.c
           scripts/make-windows-releases.sh
           scripts/msc_test.bat
           scripts/run_tests.sh
           scripts/toolchain-i686-w64-mingw32.cmake
           scripts/toolchain-x86_64-w64-mingw32.cmake
Copyright: __NO_COPYRIGHT_NOR_LICENSE__
License:   __NO_COPYRIGHT_NOR_LICENSE__

Files:     common_defs.h
           lib/adler32.c
           lib/arm/adler32_impl.h
           lib/arm/cpu_features.h
           lib/arm/crc32_impl.h
           lib/arm/crc32_pmull_wide.h
           lib/arm/matchfinder_impl.h
           lib/bt_matchfinder.h
           lib/cpu_features_common.h
           lib/deflate_compress.c
           lib/deflate_decompress.c
           lib/gzip_compress.c
           lib/gzip_decompress.c
           lib/hc_matchfinder.h
           lib/ht_matchfinder.h
           lib/utils.c
           lib/x86/adler32_impl.h
           lib/x86/cpu_features.c
           lib/x86/cpu_features.h
           lib/x86/crc32_impl.h
           lib/x86/crc32_pclmul_template.h
           lib/x86/matchfinder_impl.h
           lib/zlib_compress.c
           lib/zlib_decompress.c
           programs/benchmark.c
           programs/checksum.c
           programs/gzip.c
           programs/prog_util.c
           programs/prog_util.h
           programs/test_util.c
           programs/test_util.h
           programs/tgetopt.c
           scripts/gen_crc32_tables.c
Copyright: 2016-2022 Eric Biggers
License:   Expat
 Permission is hereby granted, free of charge, to any person
 obtaining a copy of this software and associated documentation
 files (the "Software"), to deal in the Software without
 restriction, including without limitation the rights to use,
 copy, modify, merge, publish, distribute, sublicense, and/or sell
 copies of the Software, and to permit persons to whom the
 Software is furnished to do so, subject to the following
 conditions:
 .
 The above copyright notice and this permission notice shall be
 included in all copies or substantial portions of the Software.
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 OTHER DEALINGS IN THE SOFTWARE.

Files:     scripts/gen_crc32_multipliers.c
Copyright: 2016 Eric Biggers
License:   Expat
 Permission is hereby granted, free of charge, to any person
 obtaining a copy of this software and associated documentation
 files (the "Software"), to deal in the Software without
 restriction, including without limitation the rights to use,
 copy, modify, merge, publish, distribute, sublicense, and/or sell
 copies of the Software, and to permit persons to whom the
 Software is furnished to do so, subject to the following
 conditions:
 .
 The above copyright notice and this permission notice shall be
 included in all copies or substantial portions of the Software.
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 OTHER DEALINGS IN THE SOFTWARE.
 .
 This program computes the constant multipliers needed for "folding" over
 various distances with the gzip CRC-32.  Each such multiplier is x^D mod G(x)
 for some distance D, in bits, over which the folding is occurring.
 .
 Folding works as follows: let A(x) be a polynomial (possibly reduced
 partially or fully mod G(x)) for part of the message, and let B(x) be a
 polynomial (possibly reduced partially or fully mod G(x)) for a later part of
 the message.  The unreduced combined polynomial is A(x)*x^D + B(x), where D
 is the number of bits separating the two parts of the message plus len(B(x)).
 Since mod G(x) can be applied at any point, x^D mod G(x) can be precomputed
 and used instead of x^D unreduced.  That allows the combined polynomial to be
 computed relatively easily in a partially-reduced form A(x)*(x^D mod G(x)) +
 B(x), with length max(len(A(x)) + 31, len(B(x))).  This does require doing a
 polynomial multiplication (carryless multiplication).
 .
 "Folding" in this way can be used for the entire CRC computation except the
 final reduction to 32 bits; this works well when CPU support for carryless
 multiplication is available.  It can also be used to combine CRCs of
 different parts of the message that were computed using a different method.
 .
 Note that the gzip CRC-32 uses bit-reversed polynomials.  I.e., the low order
 bits are really the high order polynomial coefficients.

Files:     lib/crc32.c
Copyright: 2016 Eric Biggers
License:   Expat
 Permission is hereby granted, free of charge, to any person
 obtaining a copy of this software and associated documentation
 files (the "Software"), to deal in the Software without
 restriction, including without limitation the rights to use,
 copy, modify, merge, publish, distribute, sublicense, and/or sell
 copies of the Software, and to permit persons to whom the
 Software is furnished to do so, subject to the following
 conditions:
 .
 The above copyright notice and this permission notice shall be
 included in all copies or substantial portions of the Software.
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 OTHER DEALINGS IN THE SOFTWARE.
 .
 High-level description of CRC

Files:     lib/arm/crc32_pmull_helpers.h
Copyright: 2022 Eric Biggers
License:   Expat
 Permission is hereby granted, free of charge, to any person
 obtaining a copy of this software and associated documentation
 files (the "Software"), to deal in the Software without
 restriction, including without limitation the rights to use,
 copy, modify, merge, publish, distribute, sublicense, and/or sell
 copies of the Software, and to permit persons to whom the
 Software is furnished to do so, subject to the following
 conditions:
 .
 The above copyright notice and this permission notice shall be
 included in all copies or substantial portions of the Software.
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 OTHER DEALINGS IN THE SOFTWARE.
 .
 This file is a "template" for instantiating helper functions for CRC folding
 with pmull instructions.  It accepts the following parameters:
 .
 SUFFIX:
 Name suffix to append to all instantiated functions.
 ATTRIBUTES:
 Target function attributes to use.

Files:     lib/decompress_template.h
Copyright: 2016 Eric Biggers
License:   Expat
 Permission is hereby granted, free of charge, to any person
 obtaining a copy of this software and associated documentation
 files (the "Software"), to deal in the Software without
 restriction, including without limitation the rights to use,
 copy, modify, merge, publish, distribute, sublicense, and/or sell
 copies of the Software, and to permit persons to whom the
 Software is furnished to do so, subject to the following
 conditions:
 .
 The above copyright notice and this permission notice shall be
 included in all copies or substantial portions of the Software.
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 OTHER DEALINGS IN THE SOFTWARE.
 .
 This is the actual DEFLATE decompression routine, lifted out of

Files:     lib/arm/cpu_features.c
Copyright: 2018 Eric Biggers
License:   Expat
 Permission is hereby granted, free of charge, to any person
 obtaining a copy of this software and associated documentation
 files (the "Software"), to deal in the Software without
 restriction, including without limitation the rights to use,
 copy, modify, merge, publish, distribute, sublicense, and/or sell
 copies of the Software, and to permit persons to whom the
 Software is furnished to do so, subject to the following
 conditions:
 .
 The above copyright notice and this permission notice shall be
 included in all copies or substantial portions of the Software.
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 OTHER DEALINGS IN THE SOFTWARE.
 .
 ARM CPUs don't have a standard way for unprivileged programs to detect CPU
 features.  But an OS-specific way can be used when available.

Files:     lib/adler32_vec_template.h
Copyright: 2016 Eric Biggers
License:   Expat
 Permission is hereby granted, free of charge, to any person
 obtaining a copy of this software and associated documentation
 files (the "Software"), to deal in the Software without
 restriction, including without limitation the rights to use,
 copy, modify, merge, publish, distribute, sublicense, and/or sell
 copies of the Software, and to permit persons to whom the
 Software is furnished to do so, subject to the following
 conditions:
 .
 The above copyright notice and this permission notice shall be
 included in all copies or substantial portions of the Software.
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 OTHER DEALINGS IN THE SOFTWARE.
 .
 This file contains a template for vectorized Adler-32 implementations.
 .
 The inner loop between reductions modulo 65521 of an unvectorized Adler-32
 implementation looks something like this:
 .
 do {

#----------------------------------------------------------------------------
# Files marked as NO_LICENSE_TEXT_FOUND may be covered by the following
# license/copyright files.

#----------------------------------------------------------------------------
# License file: COPYING
 Copyright 2016 Eric Biggers
 .
 Permission is hereby granted, free of charge, to any person
 obtaining a copy of this software and associated documentation files
 (the "Software"), to deal in the Software without restriction,
 including without limitation the rights to use, copy, modify, merge,
 publish, distribute, sublicense, and/or sell copies of the Software,
 and to permit persons to whom the Software is furnished to do so,
 subject to the following conditions:
 .
 The above copyright notice and this permission notice shall be
 included in all copies or substantial portions of the Software.
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
 BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 SOFTWARE.
