]> git.ipfire.org Git - thirdparty/libarchive.git/log
thirdparty/libarchive.git
15 years agoCreate ADD_TEST_28 macro to approximate CMake 2.8
Brad King [Wed, 18 Nov 2009 14:14:08 +0000 (09:14 -0500)] 
Create ADD_TEST_28 macro to approximate CMake 2.8

CMake 2.8 provides a new ADD_TEST(NAME) signature that simplifies
creation of tests that refer to executables built in the project.  We
create an ADD_TEST_28 macro to approximate the new signature but work
with CMake 2.6.

SVN-Revision: 1671

15 years agoRequire CMake 2.6.3 or higher
Brad King [Wed, 18 Nov 2009 14:14:00 +0000 (09:14 -0500)] 
Require CMake 2.6.3 or higher

Previously we required CMake 2.6.1 or higher, but CMake 2.6.3 provides
component-wise VERSION_LESS, VERSION_GREATER, and VERSION_EQUAL tests in
the if() command and the CMAKE_VERSION variable.  Once the running CMake
is known to be 2.6.3 or higher, tests against its version are simple.

We also use the FATAL_ERROR option to CMAKE_MINIMUM_REQUIRED() to ensure
that CMake 2.4 gives up with an error immediately.

SVN-Revision: 1670

15 years agoIncrease the limit for the -b option from 1024 to 8192.
Tim Kientzle [Wed, 18 Nov 2009 06:26:03 +0000 (01:26 -0500)] 
Increase the limit for the -b option from 1024 to 8192.

Thanks to Tim Jones.

SVN-Revision: 1669

15 years agoUse assertEqualInt instead of assert.
Michihiro NAKAJIMA [Tue, 17 Nov 2009 13:47:37 +0000 (08:47 -0500)] 
Use assertEqualInt instead of assert.

Suggested by Tim

SVN-Revision: 1668

15 years agoRemove unnecessary changing the current working directory.
Michihiro NAKAJIMA [Tue, 17 Nov 2009 13:32:54 +0000 (08:32 -0500)] 
Remove unnecessary changing the current working directory.

SVN-Revision: 1667

15 years agoAvoid compiling error on linux.
Michihiro NAKAJIMA [Mon, 16 Nov 2009 22:22:20 +0000 (17:22 -0500)] 
Avoid compiling error on linux.

SVN-Revision: 1666

15 years agoRevert r1617.
Michihiro NAKAJIMA [Mon, 16 Nov 2009 22:19:49 +0000 (17:19 -0500)] 
Revert r1617.
My previous change caused error on linux.

SVN-Revision: 1665

15 years agoDo not set a birthtime to the archive entry if the birthtime is not
Michihiro NAKAJIMA [Mon, 16 Nov 2009 16:53:16 +0000 (11:53 -0500)] 
Do not set a birthtime to the archive entry if the birthtime is not
present in ISO image.

SVN-Revision: 1664

15 years agoPut local include dir first
Brad King [Mon, 16 Nov 2009 16:35:12 +0000 (11:35 -0500)] 
Put local include dir first

We configure a header file called "config.h" so the local include
directory should go first to avoid conflicts from system headers.

SVN-Revision: 1663

15 years agoConvert CRLF -> LF newlines
Brad King [Mon, 16 Nov 2009 16:35:06 +0000 (11:35 -0500)] 
Convert CRLF -> LF newlines

We fix the newlines in libarchive/archive_read_support_format_raw.c to
have UNIX newlines like all other sources.

SVN-Revision: 1662

15 years agoAdd try-compile for 'major'
Brad King [Mon, 16 Nov 2009 16:29:46 +0000 (11:29 -0500)] 
Add try-compile for 'major'

We define MAJOR_IN_MKDEV and MAJOR_IN_SYSMACROS from CMake by checking
sys/mkdev.h and sys/sysmacros.h for 'major'.  Previously these macros
were left unconfigured for CMake builds.

SVN-Revision: 1661

15 years agoInclude test.h first in test main.c sources
Brad King [Mon, 16 Nov 2009 16:29:40 +0000 (11:29 -0500)] 
Include test.h first in test main.c sources

This change makes the main.c source for each test executable consistent
with the other test sources.  It also ensures that config.h (through
test.h) is included before system headers, thus configuring system
header feature macros correctly.

SVN-Revision: 1660

15 years agoAdd missing include <limits.h>
Brad King [Mon, 16 Nov 2009 16:29:31 +0000 (11:29 -0500)] 
Add missing include <limits.h>

In archive_read_support_format_ar.c we use SIZE_MAX.  On some platforms
the constant is defined in <limits.h> so we should include it.

SVN-Revision: 1659

15 years agoInitialize passwd/group lookup result
Brad King [Mon, 16 Nov 2009 16:29:18 +0000 (11:29 -0500)] 
Initialize passwd/group lookup result

The "result" argument to functions get(pwu|grg)id_r and get(pw|gr)name_r
does not appear in the signatures provided on older platforms.  We set
the pointer to the result memory in case the function ignores it, thus
ensuring initialization.

SVN-Revision: 1658

15 years agoUse consistent function storage class
Brad King [Mon, 16 Nov 2009 16:29:10 +0000 (11:29 -0500)] 
Use consistent function storage class

Functions declared 'static' should be defined 'static' too.

SVN-Revision: 1657

15 years agoExtract ACL octal digit using mask of type 'int'
Brad King [Mon, 16 Nov 2009 16:28:59 +0000 (11:28 -0500)] 
Extract ACL octal digit using mask of type 'int'

In archive_read_support_format_tar.c we mask a mode with ~0777777 to
erase the non-ACL octal digits.  The mode is represented by int64_t so
the compiler sign-extends the our literal mask from type int to int64_t
for application of the & operator.

Unfortunately the resulting int64_t type is not allowed in switch() on
some old compilers (like HP).  Since we are looking only for values that
fit in an int after the mask anyway, we might as well cast to int for
the entire mask operation.  This also avoids depending on the compiler
to preserve the intention of the mask with sign-extension, making the
code easier to understand anyway.

SVN-Revision: 1656

15 years agoSimplify try-compile for SIZE_MAX
Brad King [Mon, 16 Nov 2009 16:28:51 +0000 (11:28 -0500)] 
Simplify try-compile for SIZE_MAX

This constant may be defined in one of a few headers that we always
include anyway.  It is simpler and more reliable to look for the
constant in all the possible headers at once.  Otherwise we would need
to store the result for each header in a separate cache entry.

SVN-Revision: 1655

15 years agoCover r1583.
Michihiro NAKAJIMA [Mon, 16 Nov 2009 16:08:12 +0000 (11:08 -0500)] 
Cover r1583.
* Add HAVE_FUTIMENS and HAVE_UTIMENSAT into build/cmake/config.h.in
* Sort function names in alphabetical order.

SVN-Revision: 1654

15 years agoOn Windows, building a client against a static libarchive
Tim Kientzle [Mon, 16 Nov 2009 06:26:09 +0000 (01:26 -0500)] 
On Windows, building a client against a static libarchive
requires LIBARCHIVE_STATIC be defined.

SVN-Revision: 1653

15 years agoIf gzip decompression stumbles at the very end, return the error.
Tim Kientzle [Fri, 13 Nov 2009 07:11:45 +0000 (02:11 -0500)] 
If gzip decompression stumbles at the very end, return the error.

Thanks to Michihiro NAKAJIMA and Clang Static Analyzer for pointing
out this oversight.

SVN-Revision: 1652

15 years agoFix ACL parsing bug that would erroneously set the mode bits for
Tim Kientzle [Fri, 13 Nov 2009 07:04:35 +0000 (02:04 -0500)] 
Fix ACL parsing bug that would erroneously set the mode bits for
the last ACL entry to 0.  Also, fix the test that was verifying
the wrong results.

Thanks to Michihiro Nakajima and Clang static analyzer for
finding this.

SVN-Revision: 1651

15 years agoWork around a compiler warning pointed out by Bill Hoffman.
Tim Kientzle [Fri, 13 Nov 2009 06:27:46 +0000 (01:27 -0500)] 
Work around a compiler warning pointed out by Bill Hoffman.
Also, clean up the whitespace here to match the BSD style
that's used in the rest of libarchive.

SVN-Revision: 1650

15 years agosvn:ignore the build libarchive.pc file.
Tim Kientzle [Fri, 13 Nov 2009 06:24:53 +0000 (01:24 -0500)] 
svn:ignore the build libarchive.pc file.

SVN-Revision: 1649

15 years agoThe ustar header for the 'x' entry in pax format can be simplified:
Tim Kientzle [Fri, 13 Nov 2009 06:22:01 +0000 (01:22 -0500)] 
The ustar header for the 'x' entry in pax format can be simplified:
ustar headers can't support high-res mtime and don't support atime
at all.

Also, work around an annoying compiler warning pointed out by Bill Hoffman.

SVN-Revision: 1648

15 years agoFix Borland integer constants
Brad King [Wed, 11 Nov 2009 17:13:34 +0000 (12:13 -0500)] 
Fix Borland integer constants

Some versions of Borland provide <stdint.h>, so we use it when possible.
However, the 64-bit signed and unsigned integer min/max constants cause
overflow warnings from Borland itself!  For these constants we fall back
on our default definitions.

SVN-Revision: 1647

15 years agoBorland does not prefix strdup, setmode, or umask
Brad King [Wed, 11 Nov 2009 14:20:44 +0000 (09:20 -0500)] 
Borland does not prefix strdup, setmode, or umask

Although MSVC and some other Windows compilers provide these functions
prefixed with '_', the Borland compiler does not.

SVN-Revision: 1646

15 years agoBorland signature of _open has no mode
Brad King [Wed, 11 Nov 2009 14:20:38 +0000 (09:20 -0500)] 
Borland signature of _open has no mode

SVN-Revision: 1645

15 years agoDo not include <sys/utime.h> on Borland
Brad King [Wed, 11 Nov 2009 14:20:32 +0000 (09:20 -0500)] 
Do not include <sys/utime.h> on Borland

The compiler does not provide this header, but it does not seem to be
needed anyway.

SVN-Revision: 1644

15 years agoUse ARCHIVE_ERRNO_FILE_FORMAT instead of EILSEQ
Brad King [Wed, 11 Nov 2009 14:20:26 +0000 (09:20 -0500)] 
Use ARCHIVE_ERRNO_FILE_FORMAT instead of EILSEQ

We define ARCHIVE_ERRNO_FILE_FORMAT in "archive_platform.h" for
compatibility with platforms that do not have EILSEQ.  Therefore we
should use it in "archive_write_set_format_pax.c".

SVN-Revision: 1643

15 years agoDisable inline keyword for Borland and old HP-UX
Brad King [Wed, 11 Nov 2009 14:20:20 +0000 (09:20 -0500)] 
Disable inline keyword for Borland and old HP-UX

SVN-Revision: 1642

15 years agoFix size_t and ssize_t defaults on Borland
Brad King [Wed, 11 Nov 2009 14:20:14 +0000 (09:20 -0500)] 
Fix size_t and ssize_t defaults on Borland

We use more generic decision tests to select these types.  The new tests
choose the proper types for Borland while preserving reasonable defaults
for other compilers.

SVN-Revision: 1641

15 years agoFix uid_t, git_t, dev_t, and mode_t on Borland
Brad King [Wed, 11 Nov 2009 14:20:08 +0000 (09:20 -0500)] 
Fix uid_t, git_t, dev_t, and mode_t on Borland

SVN-Revision: 1640

15 years agoSelect stdint.h or inttypes.h in archive.h
Brad King [Wed, 11 Nov 2009 14:20:01 +0000 (09:20 -0500)] 
Select stdint.h or inttypes.h in archive.h

Since archive.h cannot use try-compile results it must memorize the
availability of integer type headers for every platform.  We split the
decision of which header to use out from the actual #include line by
defining __LA_STDINT_H to the chosen header.

SVN-Revision: 1639

15 years agoDo not redefine stat and file mode macros
Brad King [Wed, 11 Nov 2009 14:19:55 +0000 (09:19 -0500)] 
Do not redefine stat and file mode macros

Some windows compilers define macros like O_RDONLY and S_ISBLK with
leading underscores (e.g. _O_RDONLY and _S_ISBLK).  In our windows
compatibility header "archive_windows.h" we define the non-prefixed
names so that the rest of our code can use them everywhere.  However,
some windows compilers also define the non-prefixed names.  On these
compilers we should not redefine them.

SVN-Revision: 1638

15 years agoUse setmode compatiblity macro on Windows
Brad King [Wed, 11 Nov 2009 14:19:49 +0000 (09:19 -0500)] 
Use setmode compatiblity macro on Windows

Instead of duplicating preprocessor tests to call setmode or _setmode,
we define setmode to _setmode on Windows.

SVN-Revision: 1637

15 years agoProvide SetFilePointerEx for VS 6
Brad King [Wed, 11 Nov 2009 14:19:40 +0000 (09:19 -0500)] 
Provide SetFilePointerEx for VS 6

Visual Studio 6 does not provide SetFilePointerEx in its Windows API.
We implement it in terms of SetFilePointer for that compiler.

SVN-Revision: 1636

15 years agoUse macro for 64-bit integer literal suffixes
Brad King [Wed, 11 Nov 2009 14:19:34 +0000 (09:19 -0500)] 
Use macro for 64-bit integer literal suffixes

Some compilers, such as Borland and VS 6, define __int64 instead of the
more standard long long.  Integer literals of type __int64 use the
suffix 'i64' instead of 'll'.  We define the helper macros

  ARCHIVE_LITERAL_LL(n)
  ARCHIVE_LITERAL_ULL(n)

for 'long long' and 'unsigned long long' literals.  The macros use the
proper suffix for the current compiler.

SVN-Revision: 1635

15 years agoConfigure intptr_t and uintptr_t defaults
Brad King [Wed, 11 Nov 2009 14:19:27 +0000 (09:19 -0500)] 
Configure intptr_t and uintptr_t defaults

We define these to 32- or 64-bit signed and unsigned integer types
depending on the pointer size of the target platform.

SVN-Revision: 1634

15 years agoFix wincrypt.h inclusion on VS 6
Brad King [Wed, 11 Nov 2009 14:19:19 +0000 (09:19 -0500)] 
Fix wincrypt.h inclusion on VS 6

The VS 6 version of wincrypt.h only works if _WIN32_WINNT >= 0x0400.
We block its inclusion through windows.h by defining NOCRYPT, and then
define _WIN32_WINNT and include it only when necessary.

SVN-Revision: 1633

15 years agoDefault (u)intmax_t to (u)int64_t
Brad King [Wed, 11 Nov 2009 14:19:14 +0000 (09:19 -0500)] 
Default (u)intmax_t to (u)int64_t

This approach re-uses any work done to choose int64_t and uint64_t to
define defaults for intmax_t and uintmax_t.

SVN-Revision: 1632

15 years agoUse __int64 for int64_t default on Windows
Brad King [Wed, 11 Nov 2009 14:19:08 +0000 (09:19 -0500)] 
Use __int64 for int64_t default on Windows

Many windows compilers define __int64 as a 64-bit type, not just MSVC.

SVN-Revision: 1631

15 years agoUse standard defaults for (u)int32_t and uint16_t
Brad King [Wed, 11 Nov 2009 14:19:02 +0000 (09:19 -0500)] 
Use standard defaults for (u)int32_t and uint16_t

The mapping

  int32_t  -> int
  uint32_t -> unsigned int
  uint16_t -> unsigned short

is valid on many compilers, not just MSVC.

SVN-Revision: 1630

15 years agoProbe for cygwin_conv_path in cmake build, for Cygwin 1.7.
Tim Kientzle [Wed, 11 Nov 2009 07:50:13 +0000 (02:50 -0500)] 
Probe for cygwin_conv_path in cmake build, for Cygwin 1.7.

SVN-Revision: 1629

15 years agoValue stored to 'code' is never read.
Michihiro NAKAJIMA [Mon, 9 Nov 2009 11:06:48 +0000 (06:06 -0500)] 
Value stored to 'code' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1628

15 years agoValue stored to 'i' is never read.
Michihiro NAKAJIMA [Mon, 9 Nov 2009 11:01:45 +0000 (06:01 -0500)] 
Value stored to 'i' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1627

15 years agoTeach it to compiler and analyzer that function `lafe_errc' is no return.
Michihiro NAKAJIMA [Mon, 9 Nov 2009 10:56:48 +0000 (05:56 -0500)] 
Teach it to compiler and analyzer that function `lafe_errc' is no return.

Found by Clang Static Analyzer.

SVN-Revision: 1626

15 years agoValue stored to 'i' is never read.
Michihiro NAKAJIMA [Mon, 9 Nov 2009 08:03:27 +0000 (03:03 -0500)] 
Value stored to 'i' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1625

15 years agoAvoid possibility dereference of null pointer.
Michihiro NAKAJIMA [Mon, 9 Nov 2009 07:58:11 +0000 (02:58 -0500)] 
Avoid possibility dereference of null pointer.

Found by Clang Static Analyzer.

SVN-Revision: 1624

15 years agoAlthough the value stored to 'v' is used in the enclosing expression,
Michihiro NAKAJIMA [Mon, 9 Nov 2009 07:27:38 +0000 (02:27 -0500)] 
Although the value stored to 'v' is used in the enclosing expression,
the value is never actually read from 'v'

Found by Clang Static Analyzer.

SVN-Revision: 1623

15 years agoAlthough the value stored to 'ret2' is used in the enclosing expression,
Michihiro NAKAJIMA [Mon, 9 Nov 2009 07:24:57 +0000 (02:24 -0500)] 
Although the value stored to 'ret2' is used in the enclosing expression,
the value is never actually read from 'ret2'.

Found by Clang Static Analyzer.

SVN-Revision: 1622

15 years agoAlthough the value stored to 'p' is used in the enclosing expression,
Michihiro NAKAJIMA [Mon, 9 Nov 2009 07:21:54 +0000 (02:21 -0500)] 
Although the value stored to 'p' is used in the enclosing expression,
the value is never actually read from 'p'

Found by Clang Static Analyzer.

SVN-Revision: 1621

15 years ago- Value stored to 'data' is never read.
Michihiro NAKAJIMA [Mon, 9 Nov 2009 07:15:09 +0000 (02:15 -0500)] 
- Value stored to 'data' is never read.
- Value stored to 'data_length' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1620

15 years agoValue stored to 'used' is never read.
Michihiro NAKAJIMA [Mon, 9 Nov 2009 07:06:16 +0000 (02:06 -0500)] 
Value stored to 'used' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1619

15 years ago- Value stored to 'pax' is never read.
Michihiro NAKAJIMA [Mon, 9 Nov 2009 06:58:12 +0000 (01:58 -0500)] 
- Value stored to 'pax' is never read.
- Value stored to 'p' is never read.
- Value stored to 'd' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1618

15 years agoValue stored to 's' is never read.
Michihiro NAKAJIMA [Mon, 9 Nov 2009 06:49:03 +0000 (01:49 -0500)] 
Value stored to 's' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1617

15 years agoReturn ARCHIVE_WARN if large inode number was truncated.
Michihiro NAKAJIMA [Mon, 9 Nov 2009 06:43:09 +0000 (01:43 -0500)] 
Return ARCHIVE_WARN if large inode number was truncated.

Found by Clang Static Analyzer.

SVN-Revision: 1616

15 years ago- Value stored to 'ret' is never read.
Michihiro NAKAJIMA [Mon, 9 Nov 2009 06:13:29 +0000 (01:13 -0500)] 
- Value stored to 'ret' is never read.
- Value stored to 'cpio' is never read.
- Although the value stored to 'v' is used in the enclosing expression,
  the value is never actually read from 'v'.

Found by Clang Static Analyzer.

SVN-Revision: 1615

15 years agopkgconfig support from Xavier, plus a couple of missing files added to
Tim Kientzle [Mon, 9 Nov 2009 05:34:56 +0000 (00:34 -0500)] 
pkgconfig support from Xavier, plus a couple of missing files added to
the distfile generation.

SVN-Revision: 1614

15 years agoIf you overflow an int64_t, use INT64_MAX, not UINT64_MAX.
Tim Kientzle [Sun, 8 Nov 2009 22:28:50 +0000 (17:28 -0500)] 
If you overflow an int64_t, use INT64_MAX, not UINT64_MAX.

SVN-Revision: 1613

15 years agoValue stored to 'cpio' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 20:20:16 +0000 (15:20 -0500)] 
Value stored to 'cpio' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1612

15 years agoValue stored to 'ret' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 20:15:34 +0000 (15:15 -0500)] 
Value stored to 'ret' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1611

15 years agoValue stored to 'target_block_length' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 20:12:17 +0000 (15:12 -0500)] 
Value stored to 'target_block_length' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1610

15 years agoValue stored to 'state' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 20:09:50 +0000 (15:09 -0500)] 
Value stored to 'state' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1609

15 years agoValue stored to 'target_block_length' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 20:04:27 +0000 (15:04 -0500)] 
Value stored to 'target_block_length' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1608

15 years ago- Value stored to 'ret' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 20:01:27 +0000 (15:01 -0500)] 
- Value stored to 'ret' is never read.
- Value stored to 'bits' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1607

15 years agoValue stored to 'target_block_length' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 19:54:20 +0000 (14:54 -0500)] 
Value stored to 'target_block_length' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1606

15 years agoValue stored to 'r' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 19:50:29 +0000 (14:50 -0500)] 
Value stored to 'r' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1605

15 years agoValue stored to 'ret' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 19:47:28 +0000 (14:47 -0500)] 
Value stored to 'ret' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1604

15 years ago- Value stored to 'err' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 19:41:53 +0000 (14:41 -0500)] 
- Value stored to 'err' is never read.
- Value stored to 'dest' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1603

15 years ago- Value stored to 'line' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 19:36:57 +0000 (14:36 -0500)] 
- Value stored to 'line' is never read.
- Value stored to 'h' is never read.
- Value stored to 'old_entry' during its initialization is never read.
- Value stored to 'dest' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1602

15 years agoValue stored to 'r' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 19:24:12 +0000 (14:24 -0500)] 
Value stored to 'r' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1601

15 years agoValue stored to 'ar' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 19:18:54 +0000 (14:18 -0500)] 
Value stored to 'ar' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1600

15 years agoValue stored to 'l' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 19:15:11 +0000 (14:15 -0500)] 
Value stored to 'l' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1599

15 years agoValue stored to 'read_avail' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 19:09:20 +0000 (14:09 -0500)] 
Value stored to 'read_avail' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1598

15 years agoReturn ARCHIVE_FATAL if BZ2_bzDecompressEnd failed.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 19:06:43 +0000 (14:06 -0500)] 
Return ARCHIVE_FATAL if BZ2_bzDecompressEnd failed.

Found by Clang Static Analyzer.

SVN-Revision: 1597

15 years ago- Value stored to 'filter' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 19:00:01 +0000 (14:00 -0500)] 
- Value stored to 'filter' is never read.
- Value stored to 'dummy_buffer' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1596

15 years agoValue stored to 'target_block_length' is never read.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 18:47:56 +0000 (13:47 -0500)] 
Value stored to 'target_block_length' is never read.

Found by Clang Static Analyzer.

SVN-Revision: 1595

15 years agoReturn ARCHIVE_WARN properly if large inode number was truncated.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 18:36:26 +0000 (13:36 -0500)] 
Return ARCHIVE_WARN properly if large inode number was truncated.

Found by Clang Static Analyzer.

SVN-Revision: 1594

15 years agoRemove duplicate code.
Michihiro NAKAJIMA [Sun, 8 Nov 2009 11:52:49 +0000 (06:52 -0500)] 
Remove duplicate code.

SVN-Revision: 1593

15 years agoIt is better that all of functions of checking volume descriptor
Michihiro NAKAJIMA [Sun, 8 Nov 2009 10:44:57 +0000 (05:44 -0500)] 
It is better that all of functions of checking volume descriptor
have the same interface.

SVN-Revision: 1592

15 years agoIf a volume description is found, do not try checking of another
Michihiro NAKAJIMA [Sun, 8 Nov 2009 10:23:59 +0000 (05:23 -0500)] 
If a volume description is found, do not try checking of another
volume description.

SVN-Revision: 1591

15 years agoThanks to Xavier for pointing out that the security.capability xattr
Tim Kientzle [Sun, 8 Nov 2009 07:06:02 +0000 (02:06 -0500)] 
Thanks to Xavier for pointing out that the security.capability xattr
on Linux must be restored last.  Let's try moving xattr restore to
after file data and see if that works any better; we may end up having
to do a full xattr restore both before and after the file data.

This also changes the behavior of xattr restore failures; they now
cause warnings when the entry is finished (which can be as late as
archive_write_close()) rather than when the header is written.

SVN-Revision: 1590

15 years agoBe a little more careful about identifying mdoc-format manpages.
Tim Kientzle [Sun, 8 Nov 2009 02:33:34 +0000 (21:33 -0500)] 
Be a little more careful about identifying mdoc-format manpages.
In particular, I recently had the update script pick up and try
to convert libarchive.so.5. Ouch.

SVN-Revision: 1589

15 years agoFix a couple of markup errors and clarify the discussion of miscellaneous
Tim Kientzle [Sun, 8 Nov 2009 02:32:03 +0000 (21:32 -0500)] 
Fix a couple of markup errors and clarify the discussion of miscellaneous
tar extensions.

SVN-Revision: 1588

15 years agoMake the CTest integration simpler and a little more robust
Tim Kientzle [Sat, 7 Nov 2009 23:35:18 +0000 (18:35 -0500)] 
Make the CTest integration simpler and a little more robust
by just reading list.h directly into cmake.  This only requires
a suitable "DEFINE_TEST" macro.

SVN-Revision: 1587

15 years agoCDash support, thanks to Brad King.
Tim Kientzle [Sat, 7 Nov 2009 23:08:41 +0000 (18:08 -0500)] 
CDash support, thanks to Brad King.

SVN-Revision: 1586

15 years agoMinGW defines a value of S_IFBLK which is both useless and wrong.
Tim Kientzle [Sat, 7 Nov 2009 07:31:15 +0000 (02:31 -0500)] 
MinGW defines a value of S_IFBLK which is both useless and wrong.
Comment out this sanity-check on MinGW.  (It already doesn't apply
to VC++ because Microsoft doesn't define S_IFBLK.)

test_entry sanity-checks that S_IFBLK has the expected value on every
platform, even though libarchive per se doesn't depend on this.  So far,
MinGW is the only platform that's ever broken one of these checks, which
is reassuring, since it means that clients can reasonably pass unaltered
st_mode values into libarchive.  Even on MinGW, it will work, since
MinGW can never actually set S_IFBLK (Windows filesystems don't support it).

SVN-Revision: 1585

15 years agoImprove detecting LZMA stream data.
Michihiro NAKAJIMA [Fri, 6 Nov 2009 15:16:19 +0000 (10:16 -0500)] 
Improve detecting LZMA stream data.
- Checking of the first byte of LZMA stream.
  * lzma of XZ Utils with option -e records 0x5d in the first byte.
  * It is possible that lzma of LZMA SDK records various data in the
    first byte.
- Checking of second and third bytes of LZMA stream.
  * lzma of LZMA SDK with option -d12,-d13,-d14 and -d15 records
    0x1000,0x2000,0x4000 and 0x8000 in second through fifth bytes
    of LZMA stream. It means second and third bytes are not always
    zero.
- Checking of sixth through fourteenth bytes of LZMA stream.
  * This bytes are recorded uncompressed size and lzma of XZ Utils
    always records -1 in this field.

SVN-Revision: 1584

15 years agoadd support for setting timestamps with ns resolution. utimensat and
Björn Jacke [Fri, 6 Nov 2009 11:42:45 +0000 (06:42 -0500)] 
add support for setting timestamps with ns resolution. utimensat and
futimens are defined in POSIX.1-2008. They are available on Linux since
glibc 2.6 and kernel 2.6.22.

SVN-Revision: 1583

15 years agoCast away a minor type mismatch.
Tim Kientzle [Fri, 6 Nov 2009 06:04:21 +0000 (01:04 -0500)] 
Cast away a minor type mismatch.

SVN-Revision: 1582

15 years agoAdd some tests for LZMA as other compression.
Michihiro NAKAJIMA [Thu, 5 Nov 2009 12:01:48 +0000 (07:01 -0500)] 
Add some tests for LZMA as other compression.

SVN-Revision: 1581

15 years agoWhitespace fix.
Tim Kientzle [Thu, 5 Nov 2009 05:44:42 +0000 (00:44 -0500)] 
Whitespace fix.

SVN-Revision: 1580

15 years agoCompression of test data for ISO reader switch from bzip2/gz to compress
Michihiro NAKAJIMA [Mon, 2 Nov 2009 06:48:54 +0000 (01:48 -0500)] 
Compression of test data for ISO reader switch from bzip2/gz to compress
so that all of ISO reader tests can be worked on every platform.

SVN-Revision: 1579

15 years agoRename LOCALE_DE to LOCALE_UTF8, since the code assumes it's a UTF8 locale. Set...
Tim Kientzle [Mon, 2 Nov 2009 04:39:11 +0000 (23:39 -0500)] 
Rename LOCALE_DE to LOCALE_UTF8, since the code assumes it's a UTF8 locale.  Set it to NULL on Windows, change some of the tests to skip when this is NULL.  This removes most of the assertion failures in test_entry.

SVN-Revision: 1578

15 years agoInclude needsAscent on the initial stack entry so that we correctly chdir() back...
Tim Kientzle [Mon, 2 Nov 2009 04:37:25 +0000 (23:37 -0500)] 
Include needsAscent on the initial stack entry so that we correctly chdir() back to our starting directory when the traversal is complete.

On Windows, handle wildcard setup in tree_open().

SVN-Revision: 1577

15 years agoRevert from previous change of tar/tree.c. It's my local hack.
Michihiro NAKAJIMA [Mon, 2 Nov 2009 03:04:10 +0000 (22:04 -0500)] 
Revert from previous change of tar/tree.c. It's my local hack.

SVN-Revision: 1576

15 years agoTo be robust when ISO image is broken.
Michihiro NAKAJIMA [Mon, 2 Nov 2009 02:59:56 +0000 (21:59 -0500)] 
To be robust when ISO image is broken.

SVN-Revision: 1575

15 years agoUse CP_ACP instead of CP_THREAD_ACP.
Tim Kientzle [Mon, 2 Nov 2009 02:42:21 +0000 (21:42 -0500)] 
Use CP_ACP instead of CP_THREAD_ACP.

SVN-Revision: 1574

15 years agoFuzz the mtree reader: Extract the sample file and add it to the list of fuzz-test...
Tim Kientzle [Sun, 1 Nov 2009 22:27:45 +0000 (17:27 -0500)] 
Fuzz the mtree reader: Extract the sample file and add it to the list of fuzz-test inputs.

SVN-Revision: 1573

15 years agoFix the name of one of the distfiles.
Tim Kientzle [Sun, 1 Nov 2009 21:51:33 +0000 (16:51 -0500)] 
Fix the name of one of the distfiles.

SVN-Revision: 1572