aboutsummaryrefslogtreecommitdiff
path: root/src/liblzma
diff options
context:
space:
mode:
authorLasse Collin <lasse.collin@tukaani.org>2009-04-13 11:27:40 +0300
committerLasse Collin <lasse.collin@tukaani.org>2009-04-13 11:27:40 +0300
commit02ddf09bc3079b3e17297729b9e43f14d407b8fc (patch)
tree4a3b92a91c5eacbd7ea6229dd02ffeae6688b02f /src/liblzma
parentFix off-by-one in LZ decoder. (diff)
downloadxz-02ddf09bc3079b3e17297729b9e43f14d407b8fc.tar.xz
Put the interesting parts of XZ Utils into the public domain.
Some minor documentation cleanups were made at the same time.
Diffstat (limited to 'src/liblzma')
-rw-r--r--src/liblzma/Makefile.am13
-rw-r--r--src/liblzma/api/Makefile.am13
-rw-r--r--src/liblzma/api/lzma.h38
-rw-r--r--src/liblzma/api/lzma/base.h20
-rw-r--r--src/liblzma/api/lzma/bcj.h18
-rw-r--r--src/liblzma/api/lzma/block.h18
-rw-r--r--src/liblzma/api/lzma/check.h18
-rw-r--r--src/liblzma/api/lzma/container.h18
-rw-r--r--src/liblzma/api/lzma/delta.h18
-rw-r--r--src/liblzma/api/lzma/filter.h18
-rw-r--r--src/liblzma/api/lzma/index.h18
-rw-r--r--src/liblzma/api/lzma/index_hash.h22
-rw-r--r--src/liblzma/api/lzma/lzma.h18
-rw-r--r--src/liblzma/api/lzma/stream_flags.h18
-rw-r--r--src/liblzma/api/lzma/subblock.h18
-rw-r--r--src/liblzma/api/lzma/version.h18
-rw-r--r--src/liblzma/api/lzma/vli.h46
-rw-r--r--src/liblzma/check/Makefile.am8
-rw-r--r--src/liblzma/check/check.c7
-rw-r--r--src/liblzma/check/check.h7
-rw-r--r--src/liblzma/check/crc32_fast.c30
-rw-r--r--src/liblzma/check/crc32_small.c7
-rw-r--r--src/liblzma/check/crc32_table.c7
-rw-r--r--src/liblzma/check/crc32_tablegen.c7
-rw-r--r--src/liblzma/check/crc32_x86.S21
-rw-r--r--src/liblzma/check/crc64_fast.c20
-rw-r--r--src/liblzma/check/crc64_small.c7
-rw-r--r--src/liblzma/check/crc64_table.c7
-rw-r--r--src/liblzma/check/crc64_tablegen.c7
-rw-r--r--src/liblzma/check/crc64_x86.S14
-rw-r--r--src/liblzma/check/crc_macros.h9
-rw-r--r--src/liblzma/check/sha256.c23
-rw-r--r--src/liblzma/common/Makefile.am13
-rw-r--r--src/liblzma/common/alone_decoder.c13
-rw-r--r--src/liblzma/common/alone_decoder.h13
-rw-r--r--src/liblzma/common/alone_encoder.c13
-rw-r--r--src/liblzma/common/auto_decoder.c13
-rw-r--r--src/liblzma/common/block_buffer_decoder.c13
-rw-r--r--src/liblzma/common/block_buffer_encoder.c13
-rw-r--r--src/liblzma/common/block_decoder.c13
-rw-r--r--src/liblzma/common/block_decoder.h13
-rw-r--r--src/liblzma/common/block_encoder.c13
-rw-r--r--src/liblzma/common/block_encoder.h13
-rw-r--r--src/liblzma/common/block_header_decoder.c13
-rw-r--r--src/liblzma/common/block_header_encoder.c13
-rw-r--r--src/liblzma/common/block_util.c13
-rw-r--r--src/liblzma/common/bsr.h7
-rw-r--r--src/liblzma/common/chunk_size.c13
-rw-r--r--src/liblzma/common/common.c13
-rw-r--r--src/liblzma/common/common.h13
-rw-r--r--src/liblzma/common/easy_buffer_encoder.c13
-rw-r--r--src/liblzma/common/easy_decoder_memusage.c13
-rw-r--r--src/liblzma/common/easy_encoder.c13
-rw-r--r--src/liblzma/common/easy_encoder_memusage.c13
-rw-r--r--src/liblzma/common/easy_preset.c13
-rw-r--r--src/liblzma/common/easy_preset.h13
-rw-r--r--src/liblzma/common/filter_buffer_decoder.c13
-rw-r--r--src/liblzma/common/filter_buffer_encoder.c13
-rw-r--r--src/liblzma/common/filter_common.c13
-rw-r--r--src/liblzma/common/filter_common.h13
-rw-r--r--src/liblzma/common/filter_decoder.c13
-rw-r--r--src/liblzma/common/filter_decoder.h13
-rw-r--r--src/liblzma/common/filter_encoder.c13
-rw-r--r--src/liblzma/common/filter_encoder.h13
-rw-r--r--src/liblzma/common/filter_flags_decoder.c13
-rw-r--r--src/liblzma/common/filter_flags_encoder.c13
-rw-r--r--src/liblzma/common/index.c13
-rw-r--r--src/liblzma/common/index.h13
-rw-r--r--src/liblzma/common/index_decoder.c13
-rw-r--r--src/liblzma/common/index_encoder.c13
-rw-r--r--src/liblzma/common/index_encoder.h13
-rw-r--r--src/liblzma/common/index_hash.c13
-rw-r--r--src/liblzma/common/stream_buffer_decoder.c13
-rw-r--r--src/liblzma/common/stream_buffer_encoder.c13
-rw-r--r--src/liblzma/common/stream_decoder.c13
-rw-r--r--src/liblzma/common/stream_decoder.h13
-rw-r--r--src/liblzma/common/stream_encoder.c13
-rw-r--r--src/liblzma/common/stream_encoder.h13
-rw-r--r--src/liblzma/common/stream_flags_common.c13
-rw-r--r--src/liblzma/common/stream_flags_common.h13
-rw-r--r--src/liblzma/common/stream_flags_decoder.c13
-rw-r--r--src/liblzma/common/stream_flags_encoder.c13
-rw-r--r--src/liblzma/common/vli_decoder.c13
-rw-r--r--src/liblzma/common/vli_encoder.c13
-rw-r--r--src/liblzma/common/vli_size.c13
-rw-r--r--src/liblzma/delta/Makefile.am13
-rw-r--r--src/liblzma/delta/delta_common.c13
-rw-r--r--src/liblzma/delta/delta_common.h13
-rw-r--r--src/liblzma/delta/delta_decoder.c13
-rw-r--r--src/liblzma/delta/delta_decoder.h13
-rw-r--r--src/liblzma/delta/delta_encoder.c13
-rw-r--r--src/liblzma/delta/delta_encoder.h13
-rw-r--r--src/liblzma/delta/delta_private.h13
-rw-r--r--src/liblzma/lz/Makefile.am13
-rw-r--r--src/liblzma/lz/lz_decoder.c17
-rw-r--r--src/liblzma/lz/lz_decoder.h17
-rw-r--r--src/liblzma/lz/lz_encoder.c17
-rw-r--r--src/liblzma/lz/lz_encoder.h17
-rw-r--r--src/liblzma/lz/lz_encoder_hash.h13
-rw-r--r--src/liblzma/lz/lz_encoder_mf.c17
-rw-r--r--src/liblzma/lzma/Makefile.am13
-rw-r--r--src/liblzma/lzma/fastpos.h17
-rw-r--r--src/liblzma/lzma/fastpos_tablegen.c17
-rw-r--r--src/liblzma/lzma/lzma2_decoder.c17
-rw-r--r--src/liblzma/lzma/lzma2_decoder.h17
-rw-r--r--src/liblzma/lzma/lzma2_encoder.c17
-rw-r--r--src/liblzma/lzma/lzma2_encoder.h17
-rw-r--r--src/liblzma/lzma/lzma_common.h17
-rw-r--r--src/liblzma/lzma/lzma_decoder.c17
-rw-r--r--src/liblzma/lzma/lzma_decoder.h17
-rw-r--r--src/liblzma/lzma/lzma_encoder.c17
-rw-r--r--src/liblzma/lzma/lzma_encoder.h17
-rw-r--r--src/liblzma/lzma/lzma_encoder_optimum_fast.c13
-rw-r--r--src/liblzma/lzma/lzma_encoder_optimum_normal.c13
-rw-r--r--src/liblzma/lzma/lzma_encoder_presets.c13
-rw-r--r--src/liblzma/lzma/lzma_encoder_private.h17
-rw-r--r--src/liblzma/rangecoder/Makefile.am13
-rw-r--r--src/liblzma/rangecoder/price.h13
-rw-r--r--src/liblzma/rangecoder/price_tablegen.c16
-rw-r--r--src/liblzma/rangecoder/range_common.h17
-rw-r--r--src/liblzma/rangecoder/range_decoder.h17
-rw-r--r--src/liblzma/rangecoder/range_encoder.h17
-rw-r--r--src/liblzma/simple/Makefile.am13
-rw-r--r--src/liblzma/simple/arm.c17
-rw-r--r--src/liblzma/simple/armthumb.c17
-rw-r--r--src/liblzma/simple/ia64.c17
-rw-r--r--src/liblzma/simple/powerpc.c17
-rw-r--r--src/liblzma/simple/simple_coder.c13
-rw-r--r--src/liblzma/simple/simple_coder.h14
-rw-r--r--src/liblzma/simple/simple_decoder.c13
-rw-r--r--src/liblzma/simple/simple_decoder.h13
-rw-r--r--src/liblzma/simple/simple_encoder.c13
-rw-r--r--src/liblzma/simple/simple_encoder.h13
-rw-r--r--src/liblzma/simple/simple_private.h13
-rw-r--r--src/liblzma/simple/sparc.c17
-rw-r--r--src/liblzma/simple/x86.c17
-rw-r--r--src/liblzma/subblock/Makefile.am13
-rw-r--r--src/liblzma/subblock/subblock_decoder.c13
-rw-r--r--src/liblzma/subblock/subblock_decoder.h13
-rw-r--r--src/liblzma/subblock/subblock_decoder_helper.c13
-rw-r--r--src/liblzma/subblock/subblock_decoder_helper.h13
-rw-r--r--src/liblzma/subblock/subblock_encoder.c13
-rw-r--r--src/liblzma/subblock/subblock_encoder.h13
143 files changed, 617 insertions, 1459 deletions
diff --git a/src/liblzma/Makefile.am b/src/liblzma/Makefile.am
index 14e168f4..3c5095d9 100644
--- a/src/liblzma/Makefile.am
+++ b/src/liblzma/Makefile.am
@@ -1,15 +1,8 @@
##
-## Copyright (C) 2007 Lasse Collin
+## Author: Lasse Collin
##
-## This library is free software; you can redistribute it and/or
-## modify it under the terms of the GNU Lesser General Public
-## License as published by the Free Software Foundation; either
-## version 2.1 of the License, or (at your option) any later version.
-##
-## This library is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-## Lesser General Public License for more details.
+## This file has been put into the public domain.
+## You can do whatever you want with this file.
##
SUBDIRS = api common check
diff --git a/src/liblzma/api/Makefile.am b/src/liblzma/api/Makefile.am
index 12953c41..0992d221 100644
--- a/src/liblzma/api/Makefile.am
+++ b/src/liblzma/api/Makefile.am
@@ -1,15 +1,8 @@
##
-## Copyright (C) 2007 Lasse Collin
+## Author: Lasse Collin
##
-## This library is free software; you can redistribute it and/or
-## modify it under the terms of the GNU Lesser General Public
-## License as published by the Free Software Foundation; either
-## version 2.1 of the License, or (at your option) any later version.
-##
-## This library is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-## Lesser General Public License for more details.
+## This file has been put into the public domain.
+## You can do whatever you want with this file.
##
nobase_include_HEADERS = \
diff --git a/src/liblzma/api/lzma.h b/src/liblzma/api/lzma.h
index 7cab3909..97e02958 100644
--- a/src/liblzma/api/lzma.h
+++ b/src/liblzma/api/lzma.h
@@ -1,22 +1,30 @@
/**
- * \file lzma.h
- * \brief The public API of liblzma
+ * \file api/lzma.h
+ * \brief The public API of liblzma data compression library
*
- * liblzma is a LZMA compression library with a zlib-like API.
- * liblzma is based on LZMA SDK found from http://7-zip.org/sdk.html.
+ * liblzma is a public domain general-purpose data compression library with
+ * a zlib-like API. The native file format is .xz, but also the old .lzma
+ * format and raw (no headers) streams are supported. Multiple compression
+ * algorithms (filters) are supported. Currently LZMA2 is the primary filter.
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
+ * liblzma is part of XZ Utils <http://tukaani.org/xz/>. XZ Utils includes
+ * a gzip-like command line tool named xz and some other tools. XZ Utils
+ * is developed and maintained by Lasse Collin.
*
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * Major parts of liblzma are based on Igor Pavlov's public domain LZMA SDK
+ * <http://7-zip.org/sdk.html>.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * The SHA-256 implementation is based on the public domain code found from
+ * 7-Zip <http://7-zip.org/>, which has a modified version of the public
+ * domain SHA-256 code found from Crypto++ <http://www.cryptopp.com/>.
+ * The SHA-256 code in Crypto++ was written by Kevin Springle and Wei Dai.
+ */
+
+/*
+ * Author: Lasse Collin
+ *
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*/
#ifndef LZMA_H
@@ -26,7 +34,7 @@
* Required standard headers *
*****************************/
-/**
+/*
* liblzma API headers need some standard types and macros. To allow
* including lzma.h without requiring the application to include other
* headers first, lzma.h includes the required standard headers unless
diff --git a/src/liblzma/api/lzma/base.h b/src/liblzma/api/lzma/base.h
index d18088db..e51de131 100644
--- a/src/liblzma/api/lzma/base.h
+++ b/src/liblzma/api/lzma/base.h
@@ -1,19 +1,15 @@
/**
* \file lzma/base.h
- * \brief Data types and functions used in many places of the public API
- *
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
+ * \brief Data types and functions used in many places in liblzma API
+ */
+
+/*
+ * Author: Lasse Collin
*
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/bcj.h b/src/liblzma/api/lzma/bcj.h
index 33bd7da9..274bf6c7 100644
--- a/src/liblzma/api/lzma/bcj.h
+++ b/src/liblzma/api/lzma/bcj.h
@@ -1,19 +1,15 @@
/**
* \file lzma/bcj.h
* \brief Branch/Call/Jump conversion filters
+ */
+
+/*
+ * Author: Lasse Collin
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/block.h b/src/liblzma/api/lzma/block.h
index ca154e95..566edce1 100644
--- a/src/liblzma/api/lzma/block.h
+++ b/src/liblzma/api/lzma/block.h
@@ -1,19 +1,15 @@
/**
* \file lzma/block.h
* \brief .xz Block handling
+ */
+
+/*
+ * Author: Lasse Collin
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/check.h b/src/liblzma/api/lzma/check.h
index 4a09d98e..9d02c1c8 100644
--- a/src/liblzma/api/lzma/check.h
+++ b/src/liblzma/api/lzma/check.h
@@ -1,19 +1,15 @@
/**
* \file lzma/check.h
* \brief Integrity checks
+ */
+
+/*
+ * Author: Lasse Collin
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/container.h b/src/liblzma/api/lzma/container.h
index b8085ac4..decdaad4 100644
--- a/src/liblzma/api/lzma/container.h
+++ b/src/liblzma/api/lzma/container.h
@@ -1,19 +1,15 @@
/**
* \file lzma/container.h
* \brief File formats
+ */
+
+/*
+ * Author: Lasse Collin
*
- * \author Copyright (C) 1999-2008 Igor Pavlov
- * \author Copyright (C) 2007-2008 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/delta.h b/src/liblzma/api/lzma/delta.h
index 963c7c0f..592fc4f8 100644
--- a/src/liblzma/api/lzma/delta.h
+++ b/src/liblzma/api/lzma/delta.h
@@ -1,19 +1,15 @@
/**
* \file lzma/delta.h
* \brief Delta filter
+ */
+
+/*
+ * Author: Lasse Collin
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/filter.h b/src/liblzma/api/lzma/filter.h
index 534c3740..f70bf14e 100644
--- a/src/liblzma/api/lzma/filter.h
+++ b/src/liblzma/api/lzma/filter.h
@@ -1,19 +1,15 @@
/**
* \file lzma/filter.h
* \brief Common filter related types
+ */
+
+/*
+ * Author: Lasse Collin
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/index.h b/src/liblzma/api/lzma/index.h
index eb9aa87d..b59299ae 100644
--- a/src/liblzma/api/lzma/index.h
+++ b/src/liblzma/api/lzma/index.h
@@ -1,19 +1,15 @@
/**
* \file lzma/index.h
* \brief Handling of .xz Index lists
+ */
+
+/*
+ * Author: Lasse Collin
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/index_hash.h b/src/liblzma/api/lzma/index_hash.h
index 22e89d34..d2276646 100644
--- a/src/liblzma/api/lzma/index_hash.h
+++ b/src/liblzma/api/lzma/index_hash.h
@@ -1,23 +1,15 @@
/**
* \file lzma/index_hash.h
* \brief Validates Index by using a hash function
+ */
+
+/*
+ * Author: Lasse Collin
*
- * Instead of constructing complete Index while decoding Blocks, Index hash
- * calculates a hash of the Block sizes and Index, and then compares the
- * hashes. This way memory usage is constant even with large number of
- * Blocks and huge Index.
- *
- * \author Copyright (C) 2008 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/lzma.h b/src/liblzma/api/lzma/lzma.h
index e0ba45bf..d6147187 100644
--- a/src/liblzma/api/lzma/lzma.h
+++ b/src/liblzma/api/lzma/lzma.h
@@ -1,19 +1,15 @@
/**
* \file lzma/lzma.h
* \brief LZMA1 and LZMA2 filters
+ */
+
+/*
+ * Author: Lasse Collin
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/stream_flags.h b/src/liblzma/api/lzma/stream_flags.h
index 52f88eac..ab88cdb2 100644
--- a/src/liblzma/api/lzma/stream_flags.h
+++ b/src/liblzma/api/lzma/stream_flags.h
@@ -1,19 +1,15 @@
/**
* \file lzma/stream_flags.h
* \brief .xz Stream Header and Stream Footer encoder and decoder
+ */
+
+/*
+ * Author: Lasse Collin
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/subblock.h b/src/liblzma/api/lzma/subblock.h
index b9a3025b..4ffb0498 100644
--- a/src/liblzma/api/lzma/subblock.h
+++ b/src/liblzma/api/lzma/subblock.h
@@ -1,19 +1,15 @@
/**
* \file lzma/subblock.h
* \brief Subblock filter
+ */
+
+/*
+ * Author: Lasse Collin
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/version.h b/src/liblzma/api/lzma/version.h
index 599c2cde..27d673e1 100644
--- a/src/liblzma/api/lzma/version.h
+++ b/src/liblzma/api/lzma/version.h
@@ -1,19 +1,15 @@
/**
* \file lzma/version.h
* \brief Version number
+ */
+
+/*
+ * Author: Lasse Collin
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
diff --git a/src/liblzma/api/lzma/vli.h b/src/liblzma/api/lzma/vli.h
index 6ab1d183..31c53616 100644
--- a/src/liblzma/api/lzma/vli.h
+++ b/src/liblzma/api/lzma/vli.h
@@ -2,18 +2,25 @@
* \file lzma/vli.h
* \brief Variable-length integer handling
*
- * \author Copyright (C) 1999-2006 Igor Pavlov
- * \author Copyright (C) 2007 Lasse Collin
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
+ * In the .xz format, most integers are encoded in a variable-length
+ * representation, which is sometimes called little endian base-128 encoding.
+ * This saves space when smaller values are more likely than bigger values.
+ *
+ * The encoding scheme encodes seven bits to every byte, using minimum
+ * number of bytes required to represent the given value. Encodings that use
+ * non-minimum number of bytes are invalid, thus every integer has exactly
+ * one encoded representation. The maximum number of bits in a VLI is 63,
+ * thus the vli argument must be at maximum of UINT64_MAX / 2. You should
+ * use LZMA_VLI_MAX for clarity.
+ */
+
+/*
+ * Author: Lasse Collin
+ *
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
+ *
+ * See ../lzma.h for information about liblzma as a whole.
*/
#ifndef LZMA_H_INTERNAL
@@ -71,18 +78,7 @@ typedef uint64_t lzma_vli;
/**
- * \brief Encodes variable-length integer
- *
- * In the .xz format, most integers are encoded in a variable-length
- * representation, which is sometimes called little endian base-128 encoding.
- * This saves space when smaller values are more likely than bigger values.
- *
- * The encoding scheme encodes seven bits to every byte, using minimum
- * number of bytes required to represent the given value. Encodings that use
- * non-minimum number of bytes are invalid, thus every integer has exactly
- * one encoded representation. The maximum number of bits in a VLI is 63,
- * thus the vli argument must be at maximum of UINT64_MAX / 2. You should
- * use LZMA_VLI_MAX for clarity.
+ * \brief Encode a variable-length integer
*
* This function has two modes: single-call and multi-call. Single-call mode
* encodes the whole integer at once; it is an error if the output buffer is
@@ -123,7 +119,7 @@ extern LZMA_API(lzma_ret) lzma_vli_encode(lzma_vli vli,
/**
- * \brief Decodes variable-length integer
+ * \brief Decode a variable-length integer
*
* Like lzma_vli_encode(), this function has single-call and multi-call modes.
*
diff --git a/src/liblzma/check/Makefile.am b/src/liblzma/check/Makefile.am
index 74011695..1409bec0 100644
--- a/src/liblzma/check/Makefile.am
+++ b/src/liblzma/check/Makefile.am
@@ -1,10 +1,8 @@
##
-## This code has been put into the public domain.
+## Author: Lasse Collin
##
-## This library is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-## Lesser General Public License for more details.
+## This file has been put into the public domain.
+## You can do whatever you want with this file.
##
EXTRA_DIST = crc32_tablegen.c crc64_tablegen.c
diff --git a/src/liblzma/check/check.c b/src/liblzma/check/check.c
index 484be594..ba8622e6 100644
--- a/src/liblzma/check/check.c
+++ b/src/liblzma/check/check.c
@@ -3,11 +3,10 @@
/// \file check.c
/// \brief Single API to access different integrity checks
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/check/check.h b/src/liblzma/check/check.h
index 1dfc4d73..e100d2b8 100644
--- a/src/liblzma/check/check.h
+++ b/src/liblzma/check/check.h
@@ -3,11 +3,10 @@
/// \file check.h
/// \brief Internal API to different integrity check functions
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/check/crc32_fast.c b/src/liblzma/check/crc32_fast.c
index 61eacd61..a308eff5 100644
--- a/src/liblzma/check/crc32_fast.c
+++ b/src/liblzma/check/crc32_fast.c
@@ -2,12 +2,17 @@
//
/// \file crc32.c
/// \brief CRC32 calculation
+///
+/// Calculate the CRC32 using the slice-by-eight algorithm.
+/// It is explained in this document:
+/// http://www.intel.com/technology/comms/perfnet/download/CRC_generators.pdf
+/// The code in this file is not the same as in Intel's paper, but
+/// the basic principle is identical.
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
@@ -43,17 +48,6 @@ lzma_crc32(const uint8_t *buf, size_t size, uint32_t crc)
size &= (size_t)(7);
// Calculate the CRC32 using the slice-by-eight algorithm.
- // It is explained in this document:
- // http://www.intel.com/technology/comms/perfnet/download/CRC_generators.pdf
- //
- // The code below is different than the code in Intel's
- // paper, but the principle is identical. This should be
- // faster with GCC than Intel's code. This is tested only
- // with GCC 3.4.6 and 4.1.2 on x86, so your results may vary.
- //
- // Using -Os and -fomit-frame-pointer seem to give the best
- // results at least with GCC 4.1.2 on x86. It's sill far
- // from the speed of hand-optimized assembler.
while (buf < limit) {
crc ^= *(uint32_t *)(buf);
buf += 4;
@@ -66,9 +60,9 @@ lzma_crc32(const uint8_t *buf, size_t size, uint32_t crc)
const uint32_t tmp = *(uint32_t *)(buf);
buf += 4;
- // It is critical for performance, that
- // the crc variable is XORed between the
- // two table-lookup pairs.
+ // At least with some compilers, it is critical for
+ // performance, that the crc variable is XORed
+ // between the two table-lookup pairs.
crc = lzma_crc32_table[3][A(tmp)]
^ lzma_crc32_table[2][B(tmp)]
^ crc
diff --git a/src/liblzma/check/crc32_small.c b/src/liblzma/check/crc32_small.c
index 8507436b..5f8a3286 100644
--- a/src/liblzma/check/crc32_small.c
+++ b/src/liblzma/check/crc32_small.c
@@ -3,11 +3,10 @@
/// \file crc32_small.c
/// \brief CRC32 calculation (size-optimized)
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/check/crc32_table.c b/src/liblzma/check/crc32_table.c
index 4fcebc2b..368874eb 100644
--- a/src/liblzma/check/crc32_table.c
+++ b/src/liblzma/check/crc32_table.c
@@ -3,11 +3,10 @@
/// \file crc32_table.c
/// \brief Precalculated CRC32 table with correct endianness
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/check/crc32_tablegen.c b/src/liblzma/check/crc32_tablegen.c
index fbcbf474..0cbfecd8 100644
--- a/src/liblzma/check/crc32_tablegen.c
+++ b/src/liblzma/check/crc32_tablegen.c
@@ -6,11 +6,10 @@
/// Compiling: gcc -std=c99 -o crc32_tablegen crc32_tablegen.c
/// Add -DWORDS_BIGENDIAN to generate big endian table.
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/check/crc32_x86.S b/src/liblzma/check/crc32_x86.S
index ec28cf5d..b3c7538f 100644
--- a/src/liblzma/check/crc32_x86.S
+++ b/src/liblzma/check/crc32_x86.S
@@ -1,11 +1,18 @@
/*
* Speed-optimized CRC32 using slicing-by-eight algorithm
- * Instruction set: i386
- * Optimized for: i686
*
- * This code has been put into the public domain by its authors:
- * Original code by Igor Pavlov <http://7-zip.org/>
- * Position-independent version by Lasse Collin <lasse.collin@tukaani.org>
+ * This uses only i386 instructions, but it is optimized for i686 and later
+ * (including e.g. Pentium II/III/IV, Athlon XP, and Core 2). For i586
+ * (e.g. Pentium), slicing-by-four would be better, and even the C version
+ * of slicing-by-eight built with gcc -march=i586 tends to be a little bit
+ * better than this. Very few probably run this code on i586 or older x86
+ * so this shouldn't be a problem in practice.
+ *
+ * Authors: Igor Pavlov (original version)
+ * Lasse Collin (AT&T syntax, PIC support, better portability)
+ *
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
* This code needs lzma_crc32_table, which can be created using the
* following C code:
@@ -15,10 +22,10 @@ uint32_t lzma_crc32_table[8][256];
void
init_table(void)
{
- // IEEE-802.3 (CRC32)
+ // IEEE-802.3
static const uint32_t poly32 = UINT32_C(0xEDB88320);
- // Castagnoli (CRC32C)
+ // Castagnoli
// static const uint32_t poly32 = UINT32_C(0x82F63B78);
// Koopman
diff --git a/src/liblzma/check/crc64_fast.c b/src/liblzma/check/crc64_fast.c
index d2d1d60f..25557264 100644
--- a/src/liblzma/check/crc64_fast.c
+++ b/src/liblzma/check/crc64_fast.c
@@ -2,12 +2,15 @@
//
/// \file crc64.c
/// \brief CRC64 calculation
+///
+/// Calculate the CRC64 using the slice-by-four algorithm. This is the same
+/// idea that is used in crc32_fast.c, but for CRC64 we use only four tables
+/// instead of eight to avoid increasing CPU cache usage.
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
@@ -22,7 +25,7 @@
#endif
-// See comments in crc32.c.
+// See the comments in crc32_fast.c. They aren't duplicated here.
extern LZMA_API(uint64_t)
lzma_crc64(const uint8_t *buf, size_t size, uint64_t crc)
{
@@ -41,10 +44,6 @@ lzma_crc64(const uint8_t *buf, size_t size, uint64_t crc)
const uint8_t *const limit = buf + (size & ~(size_t)(3));
size &= (size_t)(3);
- // Calculate the CRC64 using the slice-by-four algorithm.
- //
- // In contrast to CRC32 code, this one seems to be fastest
- // with -O3 -fomit-frame-pointer.
while (buf < limit) {
#ifdef WORDS_BIGENDIAN
const uint32_t tmp = (crc >> 32) ^ *(uint32_t *)(buf);
@@ -53,9 +52,6 @@ lzma_crc64(const uint8_t *buf, size_t size, uint64_t crc)
#endif
buf += 4;
- // It is critical for performance, that
- // the crc variable is XORed between the
- // two table-lookup pairs.
crc = lzma_crc64_table[3][A(tmp)]
^ lzma_crc64_table[2][B(tmp)]
^ S32(crc)
diff --git a/src/liblzma/check/crc64_small.c b/src/liblzma/check/crc64_small.c
index 26b04997..55d72316 100644
--- a/src/liblzma/check/crc64_small.c
+++ b/src/liblzma/check/crc64_small.c
@@ -3,11 +3,10 @@
/// \file crc64_small.c
/// \brief CRC64 calculation (size-optimized)
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/check/crc64_table.c b/src/liblzma/check/crc64_table.c
index 983ed31f..1fbcd947 100644
--- a/src/liblzma/check/crc64_table.c
+++ b/src/liblzma/check/crc64_table.c
@@ -3,11 +3,10 @@
/// \file crc64_table.c
/// \brief Precalculated CRC64 table with correct endianness
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/check/crc64_tablegen.c b/src/liblzma/check/crc64_tablegen.c
index a0fa4ab2..92b9a7da 100644
--- a/src/liblzma/check/crc64_tablegen.c
+++ b/src/liblzma/check/crc64_tablegen.c
@@ -6,11 +6,10 @@
/// Compiling: gcc -std=c99 -o crc64_tablegen crc64_tablegen.c
/// Add -DWORDS_BIGENDIAN to generate big endian table.
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/check/crc64_x86.S b/src/liblzma/check/crc64_x86.S
index 3c25d42d..5e170bc8 100644
--- a/src/liblzma/check/crc64_x86.S
+++ b/src/liblzma/check/crc64_x86.S
@@ -1,11 +1,14 @@
/*
* Speed-optimized CRC64 using slicing-by-four algorithm
- * Instruction set: i386
- * Optimized for: i686
*
- * This code has been put into the public domain by its authors:
- * Igor Pavlov <http://7-zip.org/>
- * Lasse Collin <lasse.collin@tukaani.org>
+ * This uses only i386 instructions, but it is optimized for i686 and later
+ * (including e.g. Pentium II/III/IV, Athlon XP, and Core 2).
+ *
+ * Authors: Igor Pavlov (original CRC32 assembly code)
+ * Lasse Collin (CRC64 adaptation of the modified CRC32 code)
+ *
+ * This file has been put into the public domain.
+ * You can do whatever you want with this file.
*
* This code needs lzma_crc64_table, which can be created using the
* following C code:
@@ -15,6 +18,7 @@ uint64_t lzma_crc64_table[4][256];
void
init_table(void)
{
+ // ECMA-182
static const uint64_t poly64 = UINT64_C(0xC96C5795D7870F42);
for (size_t s = 0; s < 4; ++s) {
diff --git a/src/liblzma/check/crc_macros.h b/src/liblzma/check/crc_macros.h
index e827d07d..9e2c0303 100644
--- a/src/liblzma/check/crc_macros.h
+++ b/src/liblzma/check/crc_macros.h
@@ -1,13 +1,12 @@
///////////////////////////////////////////////////////////////////////////////
//
-/// \file crc_macros
+/// \file crc_macros.h
/// \brief Some endian-dependent macros for CRC32 and CRC64
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/check/sha256.c b/src/liblzma/check/sha256.c
index 9f90f7e7..978fc668 100644
--- a/src/liblzma/check/sha256.c
+++ b/src/liblzma/check/sha256.c
@@ -1,19 +1,24 @@
///////////////////////////////////////////////////////////////////////////////
//
/// \file sha256.c
-/// \brief SHA256
-//
-// Based on the public domain code found from Wei Dai's Crypto++ library
-// version 5.5.1: http://www.cryptopp.com/
-// This code has been put into the public domain.
-//
+/// \brief SHA-256
+///
/// \todo Crypto++ has x86 ASM optimizations. They use SSE so if they
/// are imported to liblzma, SSE instructions need to be used
/// conditionally to keep the code working on older boxes.
+/// We could also support using some external libary for SHA-256.
+//
+// This code is based on the code found from 7-Zip, which has a modified
+// version of the SHA-256 found from Crypto++ <http://www.cryptopp.com/>.
+// The code was modified a little to fit into liblzma.
+//
+// Authors: Kevin Springle
+// Wei Dai
+// Igor Pavlov
+// Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/Makefile.am b/src/liblzma/common/Makefile.am
index 5f4efbe6..c1a2c589 100644
--- a/src/liblzma/common/Makefile.am
+++ b/src/liblzma/common/Makefile.am
@@ -1,15 +1,8 @@
##
-## Copyright (C) 2007 Lasse Collin
+## Author: Lasse Collin
##
-## This library is free software; you can redistribute it and/or
-## modify it under the terms of the GNU Lesser General Public
-## License as published by the Free Software Foundation; either
-## version 2.1 of the License, or (at your option) any later version.
-##
-## This library is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-## Lesser General Public License for more details.
+## This file has been put into the public domain.
+## You can do whatever you want with this file.
##
noinst_LTLIBRARIES = libcommon.la
diff --git a/src/liblzma/common/alone_decoder.c b/src/liblzma/common/alone_decoder.c
index 7d1672f2..ffbc8b45 100644
--- a/src/liblzma/common/alone_decoder.c
+++ b/src/liblzma/common/alone_decoder.c
@@ -3,17 +3,10 @@
/// \file alone_decoder.c
/// \brief Decoder for LZMA_Alone files
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/alone_decoder.h b/src/liblzma/common/alone_decoder.h
index 13284043..70d0d2a0 100644
--- a/src/liblzma/common/alone_decoder.h
+++ b/src/liblzma/common/alone_decoder.h
@@ -3,17 +3,10 @@
/// \file alone_decoder.h
/// \brief Decoder for LZMA_Alone files
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/alone_encoder.c b/src/liblzma/common/alone_encoder.c
index 429fbbf0..d501c7a2 100644
--- a/src/liblzma/common/alone_encoder.c
+++ b/src/liblzma/common/alone_encoder.c
@@ -3,17 +3,10 @@
/// \file alone_decoder.c
/// \brief Decoder for LZMA_Alone files
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/auto_decoder.c b/src/liblzma/common/auto_decoder.c
index 50630613..4420495a 100644
--- a/src/liblzma/common/auto_decoder.c
+++ b/src/liblzma/common/auto_decoder.c
@@ -3,17 +3,10 @@
/// \file auto_decoder.c
/// \brief Autodetect between .xz Stream and .lzma (LZMA_Alone) formats
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/block_buffer_decoder.c b/src/liblzma/common/block_buffer_decoder.c
index 5f22822e..ff27a11c 100644
--- a/src/liblzma/common/block_buffer_decoder.c
+++ b/src/liblzma/common/block_buffer_decoder.c
@@ -3,17 +3,10 @@
/// \file block_buffer_decoder.c
/// \brief Single-call .xz Block decoder
//
-// Copyright (C) 2009 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/block_buffer_encoder.c b/src/liblzma/common/block_buffer_encoder.c
index 79587d9c..ef6aeb82 100644
--- a/src/liblzma/common/block_buffer_encoder.c
+++ b/src/liblzma/common/block_buffer_encoder.c
@@ -3,17 +3,10 @@
/// \file block_buffer_encoder.c
/// \brief Single-call .xz Block encoder
//
-// Copyright (C) 2009 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/block_decoder.c b/src/liblzma/common/block_decoder.c
index eea0759d..8c174a80 100644
--- a/src/liblzma/common/block_decoder.c
+++ b/src/liblzma/common/block_decoder.c
@@ -3,17 +3,10 @@
/// \file block_decoder.c
/// \brief Decodes .xz Blocks
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/block_decoder.h b/src/liblzma/common/block_decoder.h
index e16bffdb..7da9df63 100644
--- a/src/liblzma/common/block_decoder.h
+++ b/src/liblzma/common/block_decoder.h
@@ -3,17 +3,10 @@
/// \file block_decoder.h
/// \brief Decodes .xz Blocks
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/block_encoder.c b/src/liblzma/common/block_encoder.c
index 8492eb2f..2da7cb54 100644
--- a/src/liblzma/common/block_encoder.c
+++ b/src/liblzma/common/block_encoder.c
@@ -3,17 +3,10 @@
/// \file block_encoder.c
/// \brief Encodes .xz Blocks
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/block_encoder.h b/src/liblzma/common/block_encoder.h
index 3113dab7..b9eff0be 100644
--- a/src/liblzma/common/block_encoder.h
+++ b/src/liblzma/common/block_encoder.h
@@ -3,17 +3,10 @@
/// \file block_encoder.h
/// \brief Encodes .xz Blocks
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/block_header_decoder.c b/src/liblzma/common/block_header_decoder.c
index 096d4620..868f71b2 100644
--- a/src/liblzma/common/block_header_decoder.c
+++ b/src/liblzma/common/block_header_decoder.c
@@ -3,17 +3,10 @@
/// \file block_header_decoder.c
/// \brief Decodes Block Header from .xz files
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/block_header_encoder.c b/src/liblzma/common/block_header_encoder.c
index 1dd9eab2..8bef63b5 100644
--- a/src/liblzma/common/block_header_encoder.c
+++ b/src/liblzma/common/block_header_encoder.c
@@ -3,17 +3,10 @@
/// \file block_header_encoder.c
/// \brief Encodes Block Header for .xz files
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/block_util.c b/src/liblzma/common/block_util.c
index 2a950507..cb9cde25 100644
--- a/src/liblzma/common/block_util.c
+++ b/src/liblzma/common/block_util.c
@@ -3,17 +3,10 @@
/// \file block_header.c
/// \brief Utility functions to handle lzma_block
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/bsr.h b/src/liblzma/common/bsr.h
index fd5d3b04..bef8641f 100644
--- a/src/liblzma/common/bsr.h
+++ b/src/liblzma/common/bsr.h
@@ -3,11 +3,10 @@
/// \file bsr.h
/// \brief Bit scan reverse
//
-// This code has been put into the public domain.
+// Author: Lasse Collin
//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/chunk_size.c b/src/liblzma/common/chunk_size.c
index 29a8e02b..c9129d7c 100644
--- a/src/liblzma/common/chunk_size.c
+++ b/src/liblzma/common/chunk_size.c
@@ -3,17 +3,10 @@
/// \file chunk_size.c
/// \brief Finds out the minimal reasonable chunk size for a filter chain
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/common.c b/src/liblzma/common/common.c
index b058a87e..3bdf3252 100644
--- a/src/liblzma/common/common.c
+++ b/src/liblzma/common/common.c
@@ -3,17 +3,10 @@
/// \file common.h
/// \brief Common functions needed in many places in liblzma
//
-// Copyright (C) 2007-2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/common.h b/src/liblzma/common/common.h
index 5a5fe775..ca75d506 100644
--- a/src/liblzma/common/common.h
+++ b/src/liblzma/common/common.h
@@ -3,17 +3,10 @@
/// \file common.h
/// \brief Definitions common to the whole liblzma library
//
-// Copyright (C) 2007-2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/easy_buffer_encoder.c b/src/liblzma/common/easy_buffer_encoder.c
index 4d909ee4..c4be34cc 100644
--- a/src/liblzma/common/easy_buffer_encoder.c
+++ b/src/liblzma/common/easy_buffer_encoder.c
@@ -3,17 +3,10 @@
/// \file easy_buffer_encoder.c
/// \brief Easy single-call .xz Stream encoder
//
-// Copyright (C) 2009 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/easy_decoder_memusage.c b/src/liblzma/common/easy_decoder_memusage.c
index be84241a..20bcd5b7 100644
--- a/src/liblzma/common/easy_decoder_memusage.c
+++ b/src/liblzma/common/easy_decoder_memusage.c
@@ -3,17 +3,10 @@
/// \file easy_decoder_memusage.c
/// \brief Decoder memory usage calculation to match easy encoder presets
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/easy_encoder.c b/src/liblzma/common/easy_encoder.c
index 4a6709c6..cbabdb85 100644
--- a/src/liblzma/common/easy_encoder.c
+++ b/src/liblzma/common/easy_encoder.c
@@ -3,17 +3,10 @@
/// \file easy_encoder.c
/// \brief Easy .xz Stream encoder initialization
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/easy_encoder_memusage.c b/src/liblzma/common/easy_encoder_memusage.c
index 6f4154a8..e9105758 100644
--- a/src/liblzma/common/easy_encoder_memusage.c
+++ b/src/liblzma/common/easy_encoder_memusage.c
@@ -3,17 +3,10 @@
/// \file easy_encoder_memusage.c
/// \brief Easy .xz Stream encoder memory usage calculation
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/easy_preset.c b/src/liblzma/common/easy_preset.c
index d7f950c1..2f985986 100644
--- a/src/liblzma/common/easy_preset.c
+++ b/src/liblzma/common/easy_preset.c
@@ -3,17 +3,10 @@
/// \file easy_preset.c
/// \brief Preset handling for easy encoder and decoder
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/easy_preset.h b/src/liblzma/common/easy_preset.h
index e8671fe2..382ade89 100644
--- a/src/liblzma/common/easy_preset.h
+++ b/src/liblzma/common/easy_preset.h
@@ -3,17 +3,10 @@
/// \file easy_preset.h
/// \brief Preset handling for easy encoder and decoder
//
-// Copyright (C) 2009 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/filter_buffer_decoder.c b/src/liblzma/common/filter_buffer_decoder.c
index ab50d2d7..4fe5d78e 100644
--- a/src/liblzma/common/filter_buffer_decoder.c
+++ b/src/liblzma/common/filter_buffer_decoder.c
@@ -3,17 +3,10 @@
/// \file filter_buffer_decoder.c
/// \brief Single-call raw decoding
//
-// Copyright (C) 2009 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/filter_buffer_encoder.c b/src/liblzma/common/filter_buffer_encoder.c
index b146a9e9..646e1b30 100644
--- a/src/liblzma/common/filter_buffer_encoder.c
+++ b/src/liblzma/common/filter_buffer_encoder.c
@@ -3,17 +3,10 @@
/// \file filter_buffer_encoder.c
/// \brief Single-call raw encoding
//
-// Copyright (C) 2009 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/filter_common.c b/src/liblzma/common/filter_common.c
index 1a5860c8..ca1196aa 100644
--- a/src/liblzma/common/filter_common.c
+++ b/src/liblzma/common/filter_common.c
@@ -3,17 +3,10 @@
/// \file filter_common.c
/// \brief Filter-specific stuff common for both encoder and decoder
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/filter_common.h b/src/liblzma/common/filter_common.h
index a401ee76..cd61fc07 100644
--- a/src/liblzma/common/filter_common.h
+++ b/src/liblzma/common/filter_common.h
@@ -3,17 +3,10 @@
/// \file filter_common.c
/// \brief Filter-specific stuff common for both encoder and decoder
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/filter_decoder.c b/src/liblzma/common/filter_decoder.c
index 050bdd9a..95f77b76 100644
--- a/src/liblzma/common/filter_decoder.c
+++ b/src/liblzma/common/filter_decoder.c
@@ -3,17 +3,10 @@
/// \file filter_decoder.c
/// \brief Filter ID mapping to filter-specific functions
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/filter_decoder.h b/src/liblzma/common/filter_decoder.h
index 6d651e69..d5c68bdd 100644
--- a/src/liblzma/common/filter_decoder.h
+++ b/src/liblzma/common/filter_decoder.h
@@ -3,17 +3,10 @@
/// \file filter_decoder.c
/// \brief Filter ID mapping to filter-specific functions
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/filter_encoder.c b/src/liblzma/common/filter_encoder.c
index 8d94031b..d6fb82e5 100644
--- a/src/liblzma/common/filter_encoder.c
+++ b/src/liblzma/common/filter_encoder.c
@@ -3,17 +3,10 @@
/// \file filter_decoder.c
/// \brief Filter ID mapping to filter-specific functions
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/filter_encoder.h b/src/liblzma/common/filter_encoder.h
index 55201258..5b65cd30 100644
--- a/src/liblzma/common/filter_encoder.h
+++ b/src/liblzma/common/filter_encoder.h
@@ -3,17 +3,10 @@
/// \file filter_encoder.c
/// \brief Filter ID mapping to filter-specific functions
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/filter_flags_decoder.c b/src/liblzma/common/filter_flags_decoder.c
index 345b565f..caae10ce 100644
--- a/src/liblzma/common/filter_flags_decoder.c
+++ b/src/liblzma/common/filter_flags_decoder.c
@@ -3,17 +3,10 @@
/// \file filter_flags_decoder.c
/// \brief Decodes a Filter Flags field
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/filter_flags_encoder.c b/src/liblzma/common/filter_flags_encoder.c
index da8a34fd..d110566d 100644
--- a/src/liblzma/common/filter_flags_encoder.c
+++ b/src/liblzma/common/filter_flags_encoder.c
@@ -3,17 +3,10 @@
/// \file filter_flags_encoder.c
/// \brief Decodes a Filter Flags field
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/index.c b/src/liblzma/common/index.c
index 2478deab..46d9ff6e 100644
--- a/src/liblzma/common/index.c
+++ b/src/liblzma/common/index.c
@@ -3,17 +3,10 @@
/// \file index.c
/// \brief Handling of Index
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/index.h b/src/liblzma/common/index.h
index 79719dd7..9f177b1b 100644
--- a/src/liblzma/common/index.h
+++ b/src/liblzma/common/index.h
@@ -3,17 +3,10 @@
/// \file index.h
/// \brief Handling of Index
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/index_decoder.c b/src/liblzma/common/index_decoder.c
index f7cb8e4f..4145a450 100644
--- a/src/liblzma/common/index_decoder.c
+++ b/src/liblzma/common/index_decoder.c
@@ -3,17 +3,10 @@
/// \file index_decoder.c
/// \brief Decodes the Index field
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/index_encoder.c b/src/liblzma/common/index_encoder.c
index 52910f08..662f646b 100644
--- a/src/liblzma/common/index_encoder.c
+++ b/src/liblzma/common/index_encoder.c
@@ -3,17 +3,10 @@
/// \file index_encoder.c
/// \brief Encodes the Index field
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/index_encoder.h b/src/liblzma/common/index_encoder.h
index 0087c284..c85d1c87 100644
--- a/src/liblzma/common/index_encoder.h
+++ b/src/liblzma/common/index_encoder.h
@@ -3,17 +3,10 @@
/// \file index_encoder.h
/// \brief Encodes the Index field
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/index_hash.c b/src/liblzma/common/index_hash.c
index 6371caa9..e3e9386a 100644
--- a/src/liblzma/common/index_hash.c
+++ b/src/liblzma/common/index_hash.c
@@ -3,17 +3,10 @@
/// \file index_hash.c
/// \brief Validates Index by using a hash function
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/stream_buffer_decoder.c b/src/liblzma/common/stream_buffer_decoder.c
index 937534ce..ae753155 100644
--- a/src/liblzma/common/stream_buffer_decoder.c
+++ b/src/liblzma/common/stream_buffer_decoder.c
@@ -3,17 +3,10 @@
/// \file stream_buffer_decoder.c
/// \brief Single-call .xz Stream decoder
//
-// Copyright (C) 2009 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/stream_buffer_encoder.c b/src/liblzma/common/stream_buffer_encoder.c
index 3ecc694a..dd94c22a 100644
--- a/src/liblzma/common/stream_buffer_encoder.c
+++ b/src/liblzma/common/stream_buffer_encoder.c
@@ -3,17 +3,10 @@
/// \file stream_buffer_encoder.c
/// \brief Single-call .xz Stream encoder
//
-// Copyright (C) 2009 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/stream_decoder.c b/src/liblzma/common/stream_decoder.c
index 796a7fd4..d5924dea 100644
--- a/src/liblzma/common/stream_decoder.c
+++ b/src/liblzma/common/stream_decoder.c
@@ -3,17 +3,10 @@
/// \file stream_decoder.c
/// \brief Decodes .xz Streams
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/stream_decoder.h b/src/liblzma/common/stream_decoder.h
index b12e21d6..e54ac28f 100644
--- a/src/liblzma/common/stream_decoder.h
+++ b/src/liblzma/common/stream_decoder.h
@@ -3,17 +3,10 @@
/// \file stream_decoder.h
/// \brief Decodes .xz Streams
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/stream_encoder.c b/src/liblzma/common/stream_encoder.c
index 89fc2f9d..6303b44a 100644
--- a/src/liblzma/common/stream_encoder.c
+++ b/src/liblzma/common/stream_encoder.c
@@ -3,17 +3,10 @@
/// \file stream_encoder.c
/// \brief Encodes .xz Streams
//
-// Copyright (C) 2007-2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/stream_encoder.h b/src/liblzma/common/stream_encoder.h
index 97ef83e9..46a7aed7 100644
--- a/src/liblzma/common/stream_encoder.h
+++ b/src/liblzma/common/stream_encoder.h
@@ -3,17 +3,10 @@
/// \file stream_encoder.h
/// \brief Encodes .xz Streams
//
-// Copyright (C) 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/stream_flags_common.c b/src/liblzma/common/stream_flags_common.c
index 51dd981c..fbe8eb8a 100644
--- a/src/liblzma/common/stream_flags_common.c
+++ b/src/liblzma/common/stream_flags_common.c
@@ -3,17 +3,10 @@
/// \file stream_flags_common.c
/// \brief Common stuff for Stream flags coders
//
-// Copyright (C) 2007-2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/stream_flags_common.h b/src/liblzma/common/stream_flags_common.h
index f422b02a..9f3122a3 100644
--- a/src/liblzma/common/stream_flags_common.h
+++ b/src/liblzma/common/stream_flags_common.h
@@ -3,17 +3,10 @@
/// \file stream_flags_common.h
/// \brief Common stuff for Stream flags coders
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/stream_flags_decoder.c b/src/liblzma/common/stream_flags_decoder.c
index 7c9aabf1..3dbbbcf4 100644
--- a/src/liblzma/common/stream_flags_decoder.c
+++ b/src/liblzma/common/stream_flags_decoder.c
@@ -3,17 +3,10 @@
/// \file stream_flags_decoder.c
/// \brief Decodes Stream Header and Stream Footer from .xz files
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/stream_flags_encoder.c b/src/liblzma/common/stream_flags_encoder.c
index 2dfaf92f..ecbd0f13 100644
--- a/src/liblzma/common/stream_flags_encoder.c
+++ b/src/liblzma/common/stream_flags_encoder.c
@@ -3,17 +3,10 @@
/// \file stream_flags_encoder.c
/// \brief Encodes Stream Header and Stream Footer for .xz files
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/vli_decoder.c b/src/liblzma/common/vli_decoder.c
index c2a4b1eb..ffb27cad 100644
--- a/src/liblzma/common/vli_decoder.c
+++ b/src/liblzma/common/vli_decoder.c
@@ -3,17 +3,10 @@
/// \file vli_decoder.c
/// \brief Decodes variable-length integers
//
-// Copyright (C) 2007-2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/vli_encoder.c b/src/liblzma/common/vli_encoder.c
index f8215002..ebc9f344 100644
--- a/src/liblzma/common/vli_encoder.c
+++ b/src/liblzma/common/vli_encoder.c
@@ -3,17 +3,10 @@
/// \file vli_encoder.c
/// \brief Encodes variable-length integers
//
-// Copyright (C) 2007-2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/common/vli_size.c b/src/liblzma/common/vli_size.c
index dfdceecd..ec1b4fa4 100644
--- a/src/liblzma/common/vli_size.c
+++ b/src/liblzma/common/vli_size.c
@@ -3,17 +3,10 @@
/// \file vli_size.c
/// \brief Calculates the encoded size of a variable-length integer
//
-// Copyright (C) 2007-2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/delta/Makefile.am b/src/liblzma/delta/Makefile.am
index 899d9bc0..6b3bfb5c 100644
--- a/src/liblzma/delta/Makefile.am
+++ b/src/liblzma/delta/Makefile.am
@@ -1,15 +1,8 @@
##
-## Copyright (C) 2008 Lasse Collin
+## Author: Lasse Collin
##
-## This library is free software; you can redistribute it and/or
-## modify it under the terms of the GNU Lesser General Public
-## License as published by the Free Software Foundation; either
-## version 2.1 of the License, or (at your option) any later version.
-##
-## This library is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-## Lesser General Public License for more details.
+## This file has been put into the public domain.
+## You can do whatever you want with this file.
##
noinst_LTLIBRARIES = libdelta.la
diff --git a/src/liblzma/delta/delta_common.c b/src/liblzma/delta/delta_common.c
index ee2abd65..6d55ff65 100644
--- a/src/liblzma/delta/delta_common.c
+++ b/src/liblzma/delta/delta_common.c
@@ -3,17 +3,10 @@
/// \file delta_common.c
/// \brief Common stuff for Delta encoder and decoder
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/delta/delta_common.h b/src/liblzma/delta/delta_common.h
index a01de547..7e7e1baa 100644
--- a/src/liblzma/delta/delta_common.h
+++ b/src/liblzma/delta/delta_common.h
@@ -3,17 +3,10 @@
/// \file delta_common.h
/// \brief Common stuff for Delta encoder and decoder
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/delta/delta_decoder.c b/src/liblzma/delta/delta_decoder.c
index 0211a38a..2ddf163d 100644
--- a/src/liblzma/delta/delta_decoder.c
+++ b/src/liblzma/delta/delta_decoder.c
@@ -3,17 +3,10 @@
/// \file delta_decoder.c
/// \brief Delta filter decoder
//
-// Copyright (C) 2007, 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/delta/delta_decoder.h b/src/liblzma/delta/delta_decoder.h
index 7a71feae..ae89acc5 100644
--- a/src/liblzma/delta/delta_decoder.h
+++ b/src/liblzma/delta/delta_decoder.h
@@ -3,17 +3,10 @@
/// \file delta_decoder.h
/// \brief Delta filter decoder
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/delta/delta_encoder.c b/src/liblzma/delta/delta_encoder.c
index 751aa92d..0244673e 100644
--- a/src/liblzma/delta/delta_encoder.c
+++ b/src/liblzma/delta/delta_encoder.c
@@ -3,17 +3,10 @@
/// \file delta_encoder.c
/// \brief Delta filter encoder
//
-// Copyright (C) 2007, 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/delta/delta_encoder.h b/src/liblzma/delta/delta_encoder.h
index a709d1ca..a447862f 100644
--- a/src/liblzma/delta/delta_encoder.h
+++ b/src/liblzma/delta/delta_encoder.h
@@ -3,17 +3,10 @@
/// \file delta_encoder.h
/// \brief Delta filter encoder
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/delta/delta_private.h b/src/liblzma/delta/delta_private.h
index e1d59340..69be82e2 100644
--- a/src/liblzma/delta/delta_private.h
+++ b/src/liblzma/delta/delta_private.h
@@ -3,17 +3,10 @@
/// \file delta_private.h
/// \brief Private common stuff for Delta encoder and decoder
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lz/Makefile.am b/src/liblzma/lz/Makefile.am
index bf41d8e6..558bc943 100644
--- a/src/liblzma/lz/Makefile.am
+++ b/src/liblzma/lz/Makefile.am
@@ -1,15 +1,8 @@
##
-## Copyright (C) 2007 Lasse Collin
+## Author: Lasse Collin
##
-## This library is free software; you can redistribute it and/or
-## modify it under the terms of the GNU Lesser General Public
-## License as published by the Free Software Foundation; either
-## version 2.1 of the License, or (at your option) any later version.
-##
-## This library is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-## Lesser General Public License for more details.
+## This file has been put into the public domain.
+## You can do whatever you want with this file.
##
noinst_LTLIBRARIES = liblz.la
diff --git a/src/liblzma/lz/lz_decoder.c b/src/liblzma/lz/lz_decoder.c
index 99430c9f..e91ad81c 100644
--- a/src/liblzma/lz/lz_decoder.c
+++ b/src/liblzma/lz/lz_decoder.c
@@ -2,19 +2,12 @@
//
/// \file lz_decoder.c
/// \brief LZ out window
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lz/lz_decoder.h b/src/liblzma/lz/lz_decoder.h
index 79b8c8c5..bf1609db 100644
--- a/src/liblzma/lz/lz_decoder.h
+++ b/src/liblzma/lz/lz_decoder.h
@@ -2,19 +2,12 @@
//
/// \file lz_decoder.h
/// \brief LZ out window
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lz/lz_encoder.c b/src/liblzma/lz/lz_encoder.c
index 0b4a2931..5437546d 100644
--- a/src/liblzma/lz/lz_encoder.c
+++ b/src/liblzma/lz/lz_encoder.c
@@ -2,19 +2,12 @@
//
/// \file lz_encoder.c
/// \brief LZ in window
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2008 Igor Pavlov
-// Copyright (C) 2007-2008 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lz/lz_encoder.h b/src/liblzma/lz/lz_encoder.h
index 44880d77..4904c229 100644
--- a/src/liblzma/lz/lz_encoder.h
+++ b/src/liblzma/lz/lz_encoder.h
@@ -2,19 +2,12 @@
//
/// \file lz_encoder.h
/// \brief LZ in window and match finder API
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2008 Igor Pavlov
-// Copyright (C) 2008 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lz/lz_encoder_hash.h b/src/liblzma/lz/lz_encoder_hash.h
index 0841c38f..dd4b1f19 100644
--- a/src/liblzma/lz/lz_encoder_hash.h
+++ b/src/liblzma/lz/lz_encoder_hash.h
@@ -3,17 +3,10 @@
/// \file lz_encoder_hash.h
/// \brief Hash macros for match finders
//
-// Copyright (C) 1999-2008 Igor Pavlov
+// Author: Igor Pavlov
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lz/lz_encoder_mf.c b/src/liblzma/lz/lz_encoder_mf.c
index 9d50e91d..e48de4fe 100644
--- a/src/liblzma/lz/lz_encoder_mf.c
+++ b/src/liblzma/lz/lz_encoder_mf.c
@@ -2,19 +2,12 @@
//
/// \file lz_encoder_mf.c
/// \brief Match finders
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2008 Igor Pavlov
-// Copyright (C) 2008 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/Makefile.am b/src/liblzma/lzma/Makefile.am
index ec6b7b27..0a3baa76 100644
--- a/src/liblzma/lzma/Makefile.am
+++ b/src/liblzma/lzma/Makefile.am
@@ -1,15 +1,8 @@
##
-## Copyright (C) 2007 Lasse Collin
+## Author: Lasse Collin
##
-## This library is free software; you can redistribute it and/or
-## modify it under the terms of the GNU Lesser General Public
-## License as published by the Free Software Foundation; either
-## version 2.1 of the License, or (at your option) any later version.
-##
-## This library is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-## Lesser General Public License for more details.
+## This file has been put into the public domain.
+## You can do whatever you want with this file.
##
EXTRA_DIST = fastpos_tablegen.c
diff --git a/src/liblzma/lzma/fastpos.h b/src/liblzma/lzma/fastpos.h
index 503be275..a95a00c4 100644
--- a/src/liblzma/lzma/fastpos.h
+++ b/src/liblzma/lzma/fastpos.h
@@ -2,19 +2,12 @@
//
/// \file fastpos.h
/// \brief Kind of two-bit version of bit scan reverse
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2007 Igor Pavlov
-// Copyright (C) 2008 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/fastpos_tablegen.c b/src/liblzma/lzma/fastpos_tablegen.c
index 90ab6c23..c97e6f41 100644
--- a/src/liblzma/lzma/fastpos_tablegen.c
+++ b/src/liblzma/lzma/fastpos_tablegen.c
@@ -2,19 +2,12 @@
//
/// \file fastpos_tablegen.c
/// \brief Generates the lzma_fastpos[] lookup table
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2007 Igor Pavlov
-// Copyright (C) 2008 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma2_decoder.c b/src/liblzma/lzma/lzma2_decoder.c
index fe925a59..b4c2f2d5 100644
--- a/src/liblzma/lzma/lzma2_decoder.c
+++ b/src/liblzma/lzma/lzma2_decoder.c
@@ -2,19 +2,12 @@
//
/// \file lzma2_decoder.c
/// \brief LZMA2 decoder
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2008 Igor Pavlov
-// Copyright (C) 2008 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma2_decoder.h b/src/liblzma/lzma/lzma2_decoder.h
index a7504863..fac4ac48 100644
--- a/src/liblzma/lzma/lzma2_decoder.h
+++ b/src/liblzma/lzma/lzma2_decoder.h
@@ -2,19 +2,12 @@
//
/// \file lzma2_decoder.h
/// \brief LZMA2 decoder
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2008 Igor Pavlov
-// Copyright (C) 2008 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma2_encoder.c b/src/liblzma/lzma/lzma2_encoder.c
index cc676d5e..8db81368 100644
--- a/src/liblzma/lzma/lzma2_encoder.c
+++ b/src/liblzma/lzma/lzma2_encoder.c
@@ -2,19 +2,12 @@
//
/// \file lzma2_encoder.c
/// \brief LZMA2 encoder
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2008 Igor Pavlov
-// Copyright (C) 2008 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma2_encoder.h b/src/liblzma/lzma/lzma2_encoder.h
index 7c86ad46..ca19ef46 100644
--- a/src/liblzma/lzma/lzma2_encoder.h
+++ b/src/liblzma/lzma/lzma2_encoder.h
@@ -2,19 +2,12 @@
//
/// \file lzma2_encoder.h
/// \brief LZMA2 encoder
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2008 Igor Pavlov
-// Copyright (C) 2008 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma_common.h b/src/liblzma/lzma/lzma_common.h
index 546bf89e..e31e285f 100644
--- a/src/liblzma/lzma/lzma_common.h
+++ b/src/liblzma/lzma/lzma_common.h
@@ -2,19 +2,12 @@
//
/// \file lzma_common.h
/// \brief Private definitions common to LZMA encoder and decoder
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma_decoder.c b/src/liblzma/lzma/lzma_decoder.c
index 80a9fd6c..a013a62b 100644
--- a/src/liblzma/lzma/lzma_decoder.c
+++ b/src/liblzma/lzma/lzma_decoder.c
@@ -2,19 +2,12 @@
//
/// \file lzma_decoder.c
/// \brief LZMA decoder
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007-2008 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma_decoder.h b/src/liblzma/lzma/lzma_decoder.h
index 15844052..147208dc 100644
--- a/src/liblzma/lzma/lzma_decoder.h
+++ b/src/liblzma/lzma/lzma_decoder.h
@@ -2,19 +2,12 @@
//
/// \file lzma_decoder.h
/// \brief LZMA decoder API
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma_encoder.c b/src/liblzma/lzma/lzma_encoder.c
index 976ca5b5..bda194cd 100644
--- a/src/liblzma/lzma/lzma_encoder.c
+++ b/src/liblzma/lzma/lzma_encoder.c
@@ -2,19 +2,12 @@
//
/// \file lzma_encoder.c
/// \brief LZMA encoder
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma_encoder.h b/src/liblzma/lzma/lzma_encoder.h
index dd697757..835e1f58 100644
--- a/src/liblzma/lzma/lzma_encoder.h
+++ b/src/liblzma/lzma/lzma_encoder.h
@@ -2,19 +2,12 @@
//
/// \file lzma_encoder.h
/// \brief LZMA encoder API
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma_encoder_optimum_fast.c b/src/liblzma/lzma/lzma_encoder_optimum_fast.c
index a13adbe4..61aaf3b9 100644
--- a/src/liblzma/lzma/lzma_encoder_optimum_fast.c
+++ b/src/liblzma/lzma/lzma_encoder_optimum_fast.c
@@ -2,17 +2,10 @@
//
/// \file lzma_encoder_optimum_fast.c
//
-// Copyright (C) 1999-2008 Igor Pavlov
+// Author: Igor Pavlov
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma_encoder_optimum_normal.c b/src/liblzma/lzma/lzma_encoder_optimum_normal.c
index 7071a433..cb9a1b9d 100644
--- a/src/liblzma/lzma/lzma_encoder_optimum_normal.c
+++ b/src/liblzma/lzma/lzma_encoder_optimum_normal.c
@@ -2,17 +2,10 @@
//
/// \file lzma_encoder_optimum_normal.c
//
-// Copyright (C) 1999-2008 Igor Pavlov
+// Author: Igor Pavlov
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma_encoder_presets.c b/src/liblzma/lzma/lzma_encoder_presets.c
index 2b01996f..68900a9b 100644
--- a/src/liblzma/lzma/lzma_encoder_presets.c
+++ b/src/liblzma/lzma/lzma_encoder_presets.c
@@ -3,17 +3,10 @@
/// \file lzma_encoder_presets.c
/// \brief Encoder presets
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/lzma/lzma_encoder_private.h b/src/liblzma/lzma/lzma_encoder_private.h
index 7533bc79..017f58bd 100644
--- a/src/liblzma/lzma/lzma_encoder_private.h
+++ b/src/liblzma/lzma/lzma_encoder_private.h
@@ -2,19 +2,12 @@
//
/// \file lzma_encoder_private.h
/// \brief Private definitions for LZMA encoder
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/rangecoder/Makefile.am b/src/liblzma/rangecoder/Makefile.am
index a202e34e..f4390a06 100644
--- a/src/liblzma/rangecoder/Makefile.am
+++ b/src/liblzma/rangecoder/Makefile.am
@@ -1,15 +1,8 @@
##
-## Copyright (C) 2006 Lasse Collin
+## Author: Lasse Collin
##
-## This library is free software; you can redistribute it and/or
-## modify it under the terms of the GNU Lesser General Public
-## License as published by the Free Software Foundation; either
-## version 2.1 of the License, or (at your option) any later version.
-##
-## This library is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-## Lesser General Public License for more details.
+## This file has been put into the public domain.
+## You can do whatever you want with this file.
##
EXTRA_DIST = price_tablegen.c
diff --git a/src/liblzma/rangecoder/price.h b/src/liblzma/rangecoder/price.h
index e336885c..8ae02ca7 100644
--- a/src/liblzma/rangecoder/price.h
+++ b/src/liblzma/rangecoder/price.h
@@ -3,17 +3,10 @@
/// \file price.h
/// \brief Probability price calculation
//
-// Copyright (C) 1999-2008 Igor Pavlov
+// Author: Igor Pavlov
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/rangecoder/price_tablegen.c b/src/liblzma/rangecoder/price_tablegen.c
index 4895ac76..bf08ce39 100644
--- a/src/liblzma/rangecoder/price_tablegen.c
+++ b/src/liblzma/rangecoder/price_tablegen.c
@@ -4,18 +4,12 @@
/// \brief Probability price table generator
///
/// Compiling: gcc -std=c99 -o price_tablegen price_tablegen.c
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/rangecoder/range_common.h b/src/liblzma/rangecoder/range_common.h
index 6e5b0994..0e642419 100644
--- a/src/liblzma/rangecoder/range_common.h
+++ b/src/liblzma/rangecoder/range_common.h
@@ -2,19 +2,12 @@
//
/// \file range_common.h
/// \brief Common things for range encoder and decoder
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2006 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/rangecoder/range_decoder.h b/src/liblzma/rangecoder/range_decoder.h
index ca2d392e..fb96180f 100644
--- a/src/liblzma/rangecoder/range_decoder.h
+++ b/src/liblzma/rangecoder/range_decoder.h
@@ -2,19 +2,12 @@
//
/// \file range_decoder.h
/// \brief Range Decoder
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/rangecoder/range_encoder.h b/src/liblzma/rangecoder/range_encoder.h
index f66e955c..1e1c3699 100644
--- a/src/liblzma/rangecoder/range_encoder.h
+++ b/src/liblzma/rangecoder/range_encoder.h
@@ -2,19 +2,12 @@
//
/// \file range_encoder.h
/// \brief Range Encoder
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007-2008 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/Makefile.am b/src/liblzma/simple/Makefile.am
index f8cd4888..bd5d5d9c 100644
--- a/src/liblzma/simple/Makefile.am
+++ b/src/liblzma/simple/Makefile.am
@@ -1,15 +1,8 @@
##
-## Copyright (C) 2007 Lasse Collin
+## Author: Lasse Collin
##
-## This library is free software; you can redistribute it and/or
-## modify it under the terms of the GNU Lesser General Public
-## License as published by the Free Software Foundation; either
-## version 2.1 of the License, or (at your option) any later version.
-##
-## This library is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-## Lesser General Public License for more details.
+## This file has been put into the public domain.
+## You can do whatever you want with this file.
##
noinst_LTLIBRARIES = libsimple.la
diff --git a/src/liblzma/simple/arm.c b/src/liblzma/simple/arm.c
index 284371c3..a58b9ba6 100644
--- a/src/liblzma/simple/arm.c
+++ b/src/liblzma/simple/arm.c
@@ -2,19 +2,12 @@
//
/// \file arm.c
/// \brief Filter for ARM binaries
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/armthumb.c b/src/liblzma/simple/armthumb.c
index 51ed2c43..77cfce11 100644
--- a/src/liblzma/simple/armthumb.c
+++ b/src/liblzma/simple/armthumb.c
@@ -2,19 +2,12 @@
//
/// \file armthumb.c
/// \brief Filter for ARM-Thumb binaries
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/ia64.c b/src/liblzma/simple/ia64.c
index e29e5ad6..60247b32 100644
--- a/src/liblzma/simple/ia64.c
+++ b/src/liblzma/simple/ia64.c
@@ -2,19 +2,12 @@
//
/// \file ia64.c
/// \brief Filter for IA64 (Itanium) binaries
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/powerpc.c b/src/liblzma/simple/powerpc.c
index a3089fca..7ae734c9 100644
--- a/src/liblzma/simple/powerpc.c
+++ b/src/liblzma/simple/powerpc.c
@@ -2,19 +2,12 @@
//
/// \file powerpc.c
/// \brief Filter for PowerPC (big endian) binaries
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/simple_coder.c b/src/liblzma/simple/simple_coder.c
index 555fcce8..d44d632b 100644
--- a/src/liblzma/simple/simple_coder.c
+++ b/src/liblzma/simple/simple_coder.c
@@ -6,17 +6,10 @@
/// Simple filters don't change the size of the data i.e. number of bytes
/// in equals the number of bytes out.
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/simple_coder.h b/src/liblzma/simple/simple_coder.h
index b682f84f..0952fad3 100644
--- a/src/liblzma/simple/simple_coder.h
+++ b/src/liblzma/simple/simple_coder.h
@@ -3,18 +3,10 @@
/// \file simple_coder.h
/// \brief Wrapper for simple filters
//
+// Author: Lasse Collin
//
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/simple_decoder.c b/src/liblzma/simple/simple_decoder.c
index d7c17e2f..9be1bfef 100644
--- a/src/liblzma/simple/simple_decoder.c
+++ b/src/liblzma/simple/simple_decoder.c
@@ -3,17 +3,10 @@
/// \file simple_decoder.c
/// \brief Properties decoder for simple filters
//
-// Copyright (C) 2007-2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/simple_decoder.h b/src/liblzma/simple/simple_decoder.h
index 7d1f3d35..b8bf590f 100644
--- a/src/liblzma/simple/simple_decoder.h
+++ b/src/liblzma/simple/simple_decoder.h
@@ -3,17 +3,10 @@
/// \file simple_decoder.h
/// \brief Properties decoder for simple filters
//
-// Copyright (C) 2007-2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/simple_encoder.c b/src/liblzma/simple/simple_encoder.c
index fe2f98d6..1ceabd1f 100644
--- a/src/liblzma/simple/simple_encoder.c
+++ b/src/liblzma/simple/simple_encoder.c
@@ -3,17 +3,10 @@
/// \file simple_encoder.c
/// \brief Properties encoder for simple filters
//
-// Copyright (C) 2007-2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/simple_encoder.h b/src/liblzma/simple/simple_encoder.h
index be4ca9fc..1cee4823 100644
--- a/src/liblzma/simple/simple_encoder.h
+++ b/src/liblzma/simple/simple_encoder.h
@@ -3,17 +3,10 @@
/// \file simple_encoder.c
/// \brief Properties encoder for simple filters
//
-// Copyright (C) 2007-2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/simple_private.h b/src/liblzma/simple/simple_private.h
index 4e7a9db3..7571ae21 100644
--- a/src/liblzma/simple/simple_private.h
+++ b/src/liblzma/simple/simple_private.h
@@ -3,17 +3,10 @@
/// \file simple_private.h
/// \brief Private definitions for so called simple filters
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/sparc.c b/src/liblzma/simple/sparc.c
index 09bc67f1..04d42829 100644
--- a/src/liblzma/simple/sparc.c
+++ b/src/liblzma/simple/sparc.c
@@ -2,19 +2,12 @@
//
/// \file sparc.c
/// \brief Filter for SPARC binaries
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/simple/x86.c b/src/liblzma/simple/x86.c
index a48a5750..425eae9a 100644
--- a/src/liblzma/simple/x86.c
+++ b/src/liblzma/simple/x86.c
@@ -2,19 +2,12 @@
//
/// \file x86.c
/// \brief Filter for x86 binaries (BCJ filter)
+///
+// Authors: Igor Pavlov
+// Lasse Collin
//
-// Copyright (C) 1999-2006 Igor Pavlov
-// Copyright (C) 2007 Lasse Collin
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/subblock/Makefile.am b/src/liblzma/subblock/Makefile.am
index 2577e0b4..020551c2 100644
--- a/src/liblzma/subblock/Makefile.am
+++ b/src/liblzma/subblock/Makefile.am
@@ -1,15 +1,8 @@
##
-## Copyright (C) 2007 Lasse Collin
+## Author: Lasse Collin
##
-## This library is free software; you can redistribute it and/or
-## modify it under the terms of the GNU Lesser General Public
-## License as published by the Free Software Foundation; either
-## version 2.1 of the License, or (at your option) any later version.
-##
-## This library is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-## Lesser General Public License for more details.
+## This file has been put into the public domain.
+## You can do whatever you want with this file.
##
noinst_LTLIBRARIES = libsubblock.la
diff --git a/src/liblzma/subblock/subblock_decoder.c b/src/liblzma/subblock/subblock_decoder.c
index 3096b442..e055cee3 100644
--- a/src/liblzma/subblock/subblock_decoder.c
+++ b/src/liblzma/subblock/subblock_decoder.c
@@ -3,17 +3,10 @@
/// \file subblock_decoder.c
/// \brief Decoder of the Subblock filter
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/subblock/subblock_decoder.h b/src/liblzma/subblock/subblock_decoder.h
index 724ef357..d1030b2b 100644
--- a/src/liblzma/subblock/subblock_decoder.h
+++ b/src/liblzma/subblock/subblock_decoder.h
@@ -3,17 +3,10 @@
/// \file subblock_decoder.h
/// \brief Decoder of the Subblock filter
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/subblock/subblock_decoder_helper.c b/src/liblzma/subblock/subblock_decoder_helper.c
index ca8fed93..2a864edd 100644
--- a/src/liblzma/subblock/subblock_decoder_helper.c
+++ b/src/liblzma/subblock/subblock_decoder_helper.c
@@ -5,17 +5,10 @@
///
/// This filter is used to indicate End of Input for subfilters needing it.
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/subblock/subblock_decoder_helper.h b/src/liblzma/subblock/subblock_decoder_helper.h
index 2a3e999e..18dcbb39 100644
--- a/src/liblzma/subblock/subblock_decoder_helper.h
+++ b/src/liblzma/subblock/subblock_decoder_helper.h
@@ -5,17 +5,10 @@
///
/// This filter is used to indicate End of Input for subfilters needing it.
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/subblock/subblock_encoder.c b/src/liblzma/subblock/subblock_encoder.c
index 3251f3f2..b46b1c29 100644
--- a/src/liblzma/subblock/subblock_encoder.c
+++ b/src/liblzma/subblock/subblock_encoder.c
@@ -3,17 +3,10 @@
/// \file subblock_encoder.c
/// \brief Encoder of the Subblock filter
//
-// Copyright (C) 2007, 2008 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/liblzma/subblock/subblock_encoder.h b/src/liblzma/subblock/subblock_encoder.h
index 3ef9e2e4..ddbfe64b 100644
--- a/src/liblzma/subblock/subblock_encoder.h
+++ b/src/liblzma/subblock/subblock_encoder.h
@@ -3,17 +3,10 @@
/// \file subblock_encoder.h
/// \brief Encoder of the Subblock filter
//
-// Copyright (C) 2007 Lasse Collin
+// Author: Lasse Collin
//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// This file has been put into the public domain.
+// You can do whatever you want with this file.
//
///////////////////////////////////////////////////////////////////////////////