CVS log for src/lib/libarchive/Makefile
Up to [FreeBSD] / src / lib / libarchive
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
Revision 1.98.2.5: download - view: text, markup, annotated - select for diffs
Thu Jan 5 12:57:14 2012 UTC (5 weeks, 1 day ago) by mm
Branches: RELENG_8
Diff to: previous 1.98.2.4: preferred, colored; branchpoint 1.98: preferred, colored; next MAIN 1.99: preferred, colored
Changes since revision 1.98.2.4: +9 -4 lines
SVN rev 229596 on 2012-01-05 12:57:14Z by mm MFC r228797: Use contrib sources for building libarchive, tar and cpio. Make "make test" fully operational.
Revision 1.108.2.2: download - view: text, markup, annotated - select for diffs
Thu Jan 5 12:52:05 2012 UTC (5 weeks, 1 day ago) by mm
Branches: RELENG_9
Diff to: previous 1.108.2.1: preferred, colored; branchpoint 1.108: preferred, colored; next MAIN 1.109: preferred, colored
Changes since revision 1.108.2.1: +10 -3 lines
SVN rev 229595 on 2012-01-05 12:52:05Z by mm MFC r228797: Use contrib sources for building libarchive, tar and cpio. Make "make test" fully operational.
Revision 1.109: download - view: text, markup, annotated - select for diffs
Thu Dec 22 08:42:07 2011 UTC (7 weeks, 1 day ago) by mm
Branches: MAIN
CVS tags: HEAD
Diff to: previous 1.108: preferred, colored
Changes since revision 1.108: +10 -3 lines
SVN rev 228797 on 2011-12-22 08:42:07Z by mm Use contrib sources for building libarchive, tar and cpio. Make "make test" fully operational. MFC after: 2 weeks
Revision 1.108.2.1.2.1: download - view: text, markup, annotated - select for diffs
Fri Nov 11 04:20:22 2011 UTC (3 months ago) by kensmith
Branches: RELENG_9_0
CVS tags: RELENG_9_0_0_RELEASE
Diff to: previous 1.108.2.1: preferred, colored; next MAIN 1.108.2.2: preferred, colored
Changes since revision 1.108.2.1: +0 -0 lines
SVN rev 227445 on 2011-11-11 04:20:22Z by kensmith Copy stable/9 to releng/9.0 as part of the FreeBSD 9.0-RELEASE release cycle. Approved by: re (implicit)
Revision 1.108.2.1: download - view: text, markup, annotated - select for diffs
Fri Sep 23 00:51:37 2011 UTC (4 months, 2 weeks ago) by kensmith
Branches: RELENG_9
CVS tags: RELENG_9_0_BP
Branch point for: RELENG_9_0
Diff to: previous 1.108: preferred, colored
Changes since revision 1.108: +0 -0 lines
SVN rev 225736 on 2011-09-23 00:51:37Z by kensmith Copy head to stable/9 as part of 9.0-RELEASE release cycle. Approved by: re (implicit)
Revision 1.98.2.4: download - view: text, markup, annotated - select for diffs
Mon Aug 1 07:59:02 2011 UTC (6 months, 1 week ago) by mm
Branches: RELENG_8
Diff to: previous 1.98.2.3: preferred, colored; branchpoint 1.98: preferred, colored
Changes since revision 1.98.2.3: +13 -2 lines
SVN rev 224561 on 2011-08-01 07:59:02Z by mm
Sync libarchive with 9-CURRENT:
MFC on lib/libarchive:
196961,200351,201077,201079-201097,201099-201112,201155-201157,
201159-201163,201165,201167-201171,201246-201250,201253,202868-202869,
202871-202873,203952,208027,208169,208184,208263,208291,210825,213573,
214822,214867,214905,216258,221472,224152
MFC 196961 (kientzle):
Update tests to match r195873, which corrected how hardlinked files
on iso9660 images were returned. While I'm poking around, update
some comments around this area to try to clarify what's going on and
what still remains to be improved.
MFC 200351 (kientzle):
Merge two cpio fixes from libarchive.googlecode.com:
1) Avoid an infinite loop in the header resync for certain malformed
archives.
2) Don't try to match hardlinks if the nlinks count is < 2. This
reduces the likelihood of a false hardlink match due to ino truncation.
MFC 201077 (kientzle):
Update format manpages for libarchive.
MFC 201079 (kientzle):
Update the hard-coded configuration for libarchive.
MFC 201080 (kientzle):
Remove some unused variables and dead assignments.
MFC 201081 (kientzle):
Remove a dead assignment.
MFC 201082 (kientzle):
Catch certain gzip failures at close time.
MFC 201083 (kientzle):
Compatibility fix for some older systems with non-POSIX getgrnam_r/getpwnam_r
and a minor style fix for the hash function.
MFC 201084 (kientzle):
Sync with googlecode some changes that have no impact on FreeBSD.
MFC 201085 (kientzle):
Compatibility: I found some more compilers that don't like 'inline' keyword.
Protection: Discourage people from using this header outside libarchive.
MFC 201086 (kientzle):
Discourage people from using this header outside of libarchive.
MFC 201087 (kientzle):
Enforce this as an internal-only header.
MFC 201088 (kientzle):
Allow more formats to be active at a time; discourage outside use.
MFC 201089 (kientzle):
Portability: terminate abnormally via abort() instead of segfault,
watch the return value from write(), and avoid signed arithmetic on
unsigned values.
MFC 201091 (kientzle):
Remove dead assignment.
MFC 201092 (kientzle):
Discourage outside use of this internal header.
MFC 201093 (kientzle):
Portability: Set the file descriptor to binary mode on Win32
MFC 201094 (kientzle):
Eliminate an unused assignment.
MFC 201095 (kientzle):
Remove an unused variable and an unnecessary increment.
MFC 201096 (kientzle):
Various portability fixes, plus:
* New "ino64" field.
* New UTF8 interfaces for hardlink/symlink updates
MFC 201097 (kientzle):
Portability fixes.
MFC 201099 (kientzle):
Use new ino64 interface.
MFC 201110 (kientzle):
Clarify an example so Linux folks won't keep getting confused by this
point.
MFC 201111 (kientzle):
Remove some dead assignments, fix some declarations.
MFC 201112 (kientzle):
Portability.
MFC 201155 (kientzle):
64-bit ino support and discourage bad use of this header.
MFC 201156 (kientzle):
Various style and portability fixes, including:
* Enforce option interface can only be used before the archive is opened
* Correctly handle large skips on platforms with 32-bit off_t
* Use int64_t instead of off_t
MFC 201157 (kientzle):
Catch decompression failures earlier. In particular, this gives
immediate feedback if we fail to fork an external decompression program.
MFC 201159 (kientzle):
Various fixes when creating objects on disk:
* Write xattrs last instead of first (required on platforms that use
system xattrs for security attributes)
* Better handling of chdir() failures
* Don't bother trying to shorten files via seek()/write()
* Fix build on systems that lack link()/symlink()/mknod()
* Prefer futimens()/utimensat() when they're present
MFC 201160 (kientzle):
Various style fixes to the 'newc' cpio writer:
* Warn about truncation of ino
* Use a macro to hide the somewhat obscure pad-to-multiple-of-4 calculation
* Eliminate some unused variables
MFC 201161 (kientzle):
Style fixes to tar reader:
For portability, prefer int64_t to off_t.
Improve numeric overflow handling when parsing.
Fix some variable types.
Eliminate some unused results.
MFC 201162 (kientzle):
Style and portability fixes for pax writer. Mostly very routine, except for:
* Use ino64 where appropriate
* Don't pass atime or nsec to ustar formatter
MFC 201163 (kientzle):
Be a little more skeptical of dev/ino matches when reading cpio files.
This eliminates some false-positives in the hardlink detection logic.
MFC 201165 (kientzle):
Minor style fixes plus a fix for an obscure crash on certain malformed
mtree files.
MFC 201167 (kientzle):
If we're linking against liblzma, allow the decompressor to use up to
1<<30 bytes of memory, which is required for some streams.
Also, try to make the taster more discriminating about raw lzma streams.
The detection here is still really weak, though; please use xz instead
of lzma.
MFC 201168 (kientzle):
Zip write support for libarchive.
The initial implementation was developed by Anselm Strauss as part of
Google Summer of Code 2008, then completed by Joerg Sonnenberger.
MFC 201169 (kientzle):
Clear extraneous error messages.
MFC 201170 (kientzle):
Essentially eliminate problems with false hardlinks in POSIX cpio
archives by generating synthetic ino values and mapping values
from disk into the new values.
MFC 201171 (kientzle):
Rationalize the support for cryptographic hashes.
MFC 201246 (kientzle):
Merge Michihiro NAKAJIMA's significant work on the ISO9660 reader
from googlecode:
* Support for zisofs compressed entries
* Support for relocated deep directories
* Direct calculation of link counts for accurate nlink values
even on images that lack Rockridge extensions
* Faster handling of the internal file lists.
* Better detection of ISO variants
MFC 201247 (kientzle):
A raft of test changes and improvements from the Googlecode repository.
In particular, this includes tests for the new features I've merged
over the last few days.
MFC 201248 (kientzle):
UU decoder. Now that libarchive can recursively taste input streams,
you can do things like this: tar xvf archive.tar.gz.uu
MFC 201249 (kientzle):
Libarchive in FreeBSD is now synced up with 2.7.901a from
libarchive.googlecode.com
MFC 201250 (kientzle):
Reserve constants for RPM unwrapper and XAR reader.
MFC 201253 (kientzle):
Remove some test files that are no longer used.
MFC 202868 (kientzle):
Fix a memory leak when a filter fails to initialize.
MFC 202869 (kientzle):
Initialize the allocated 'struct zip'.
MFC 202871 (kientzle):
If we can't stat a file, return the correct ARCHIVE_FAILED (this entry can't
be processed any further) and a suitable error string.
In particular, this improves the error-reporting when cpio -o is
given a nonexistent filename.
MFC 202872 (kientzle):
Use a simpler memory-management strategy for the file objects.
Instead of trying to reference-count them and free them as soon
as they are no longer needed, we now just keep them around and free
them all when we release the archive object. This fixes a number
of minor memory leaks, especially when reading damaged archives.
MFC 202873 (kientzle):
Don't try to hardlink block or character device nodes that come out
of cpio archives.
MFC 203952 (uqs):
Add missing newline in last line of file.
Uncovered via: fromcvs vs. svn
MFC 208027 (uqs):
mdoc: move CAVEATS, BUGS and SECURITY CONSIDERATIONS sections to the
bottom of the manpages and order them consistently.
GNU groff doesn't care about the ordering, and doesn't even mention
CAVEATS and SECURITY CONSIDERATIONS as common sections and where to put
them.
Found by: mdocml lint run
MFC 208169 (kientzle):
Reorganize slightly in preparation for making lzma and bz2 support
conditional.
MFC 208184 (delphij):
Fix build.
MFC 208263 (kientzle):
Retry reads that fail with EINTR. This fixes a problem
with bsdtar failing on SIGINT.
MFC 208291 (uqs):
mdoc: consistently spell our email addresses <foo@FreeBSD.org>
MFC 210825 (joel):
Fix typo.
MFC 213573 (uqs):
mdoc: drop redundant .Pp and .LP calls
They have no effect when coming in pairs, or before .Bl/.Bd
MFC 214822 (kientzle):
Clarify the naming: Methods that free an object should
be called "free". Retain the old "finish" names to preserve
source compatibility for now.
MFC 214867 (uqs):
Fix manpage markup.
MFC 214905 (kientzle):
If the Zip reader doesn't see a PK signature block
because there's inter-entry garbage, just scan forward
to find the next one. This allows us to handle a lot
of Zip archives that have been modified in-place.
Thanks to: Gleb Kurtsou for sending me a sample archive
MFC 216258 (kientzle):
Don't write data into an empty "file."
In particular, this check avoids a warning when
extracting directory entries from certain GNU tar
archives that store directory contents.
MFC 221472 (obrien):
libarchive is mixing libmd and libcrypto -- correct to use one or the other.
[mixing the two can be quite bad -- they define the same context structures,
but with differing structure members (and sizes)]
MFC 224152 (mm):
- Update libarchive to 2.8.4
- Add support for extracting xar and rpm archives
- Add libarchive_fe subdir (common code for tar and cpio)
Revision 1.108: download - view: text, markup, annotated - select for diffs
Sun Jul 17 21:27:38 2011 UTC (6 months, 3 weeks ago) by mm
Branches: MAIN
CVS tags: RELENG_9_BP
Branch point for: RELENG_9
Diff to: previous 1.107: preferred, colored
Changes since revision 1.107: +5 -0 lines
SVN rev 224152 on 2011-07-17 21:27:38Z by mm - Update libarchive to 2.8.4 - Add support for extracting xar and rpm archives - Add libarchive_fe subdir (common code for tar and cpio) Approved by: kientzle MFC after: 2 weeks
Revision 1.107: download - view: text, markup, annotated - select for diffs
Thu May 5 01:16:06 2011 UTC (9 months, 1 week ago) by obrien
Branches: MAIN
Diff to: previous 1.106: preferred, colored
Changes since revision 1.106: +5 -2 lines
SVN rev 221472 on 2011-05-05 01:16:06Z by obrien libarchive is mixing libmd and libcrypto -- correct to use one or the other. [mixing the two can be quite bad -- they define the same context structures, but with differing structure members (and sizes)] Update the hash function support comments, and update config_freebsd.h to match. Approved by: kientzle
Revision 1.77.2.3.8.1: download - view: text, markup, annotated - select for diffs
Tue Dec 21 17:10:29 2010 UTC (13 months, 2 weeks ago) by kensmith
Branches: RELENG_7_4
CVS tags: RELENG_7_4_0_RELEASE
Diff to: previous 1.77.2.3: preferred, colored; next MAIN 1.78: preferred, colored
Changes since revision 1.77.2.3: +0 -0 lines
SVN rev 216618 on 2010-12-21 17:10:29Z by kensmith Copy stable/7 to releng/7.4 in preparation for FreeBSD-7.4 release. Approved by: re (implicit)
Revision 1.98.2.3.2.1: download - view: text, markup, annotated - select for diffs
Tue Dec 21 17:09:25 2010 UTC (13 months, 2 weeks ago) by kensmith
Branches: RELENG_8_2
CVS tags: RELENG_8_2_0_RELEASE
Diff to: previous 1.98.2.3: preferred, colored; next MAIN 1.98.2.4: preferred, colored
Changes since revision 1.98.2.3: +0 -0 lines
SVN rev 216617 on 2010-12-21 17:09:25Z by kensmith Copy stable/8 to releng/8.2 in preparation for FreeBSD-8.2 release. Approved by: re (implicit)
Revision 1.98.2.3: download - view: text, markup, annotated - select for diffs
Sat Nov 13 06:07:39 2010 UTC (14 months, 4 weeks ago) by kientzle
Branches: RELENG_8
CVS tags: RELENG_8_2_BP
Branch point for: RELENG_8_2
Diff to: previous 1.98.2.2: preferred, colored; branchpoint 1.98: preferred, colored
Changes since revision 1.98.2.2: +1 -0 lines
SVN rev 215233 on 2010-11-13 06:07:39Z by kientzle MFC archive_file_count() utility function.
Revision 1.98.2.2: download - view: text, markup, annotated - select for diffs
Sun Oct 10 08:41:08 2010 UTC (16 months ago) by mm
Branches: RELENG_8
Diff to: previous 1.98.2.1: preferred, colored; branchpoint 1.98: preferred, colored
Changes since revision 1.98.2.1: +10 -6 lines
SVN rev 213667 on 2010-10-10 08:41:08Z by mm - Add liblzma support to libarchive and usr.bin/tar - Do not link usr.bin/ar to liblzma if building bootstrap-tools and the local system doesn't include liblzma (fixes world build on FreeBSD 7.x) This is a direct commit. Approved by: delphij (mentor)
Revision 1.98.2.1.4.1: download - view: text, markup, annotated - select for diffs
Mon Jun 14 02:09:06 2010 UTC (19 months, 4 weeks ago) by kensmith
Branches: RELENG_8_1
CVS tags: RELENG_8_1_0_RELEASE
Diff to: previous 1.98.2.1: preferred, colored; next MAIN 1.98.2.2: preferred, colored
Changes since revision 1.98.2.1: +0 -0 lines
SVN rev 209145 on 2010-06-14 02:09:06Z by kensmith Copy stable/8 to releng/8.1 in preparation for 8.1-RC1. Approved by: re (implicit)
Revision 1.106: download - view: text, markup, annotated - select for diffs
Mon May 17 07:06:54 2010 UTC (20 months, 3 weeks ago) by delphij
Branches: MAIN
Diff to: previous 1.105: preferred, colored
Changes since revision 1.105: +1 -1 lines
SVN rev 208184 on 2010-05-17 07:06:54Z by delphij Fix build.
Revision 1.105: download - view: text, markup, annotated - select for diffs
Sun May 16 20:43:17 2010 UTC (20 months, 3 weeks ago) by kientzle
Branches: MAIN
Diff to: previous 1.104: preferred, colored
Changes since revision 1.104: +10 -3 lines
SVN rev 208169 on 2010-05-16 20:43:17Z by kientzle Reorganize slightly in preparation for making lzma and bz2 support conditional.
Revision 1.104: download - view: text, markup, annotated - select for diffs
Mon May 10 15:28:44 2010 UTC (21 months ago) by mm
Branches: MAIN
Diff to: previous 1.103: preferred, colored
Changes since revision 1.103: +3 -6 lines
SVN rev 207849 on 2010-05-10 15:28:44Z by mm Enable liblzma support in libarchive Adjust dependencies for programs using libarchive Add xz and linkage against liblzma to rescue system Approved by: kientzle, delphij (mentor) MFC after: 2 weeks
Revision 1.77.2.3.6.1: download - view: text, markup, annotated - select for diffs
Wed Feb 10 00:26:20 2010 UTC (2 years ago) by kensmith
Branches: RELENG_7_3
CVS tags: RELENG_7_3_0_RELEASE
Diff to: previous 1.77.2.3: preferred, colored; next MAIN 1.78: preferred, colored
Changes since revision 1.77.2.3: +0 -0 lines
SVN rev 203736 on 2010-02-10 00:26:20Z by kensmith Copy stable/7 to releng/7.3 as part of the 7.3-RELEASE process. Approved by: re (implicit)
Revision 1.103: download - view: text, markup, annotated - select for diffs
Sat Jan 2 09:58:07 2010 UTC (2 years, 1 month ago) by ed
Branches: MAIN
Diff to: previous 1.102: preferred, colored
Changes since revision 1.102: +0 -2 lines
SVN rev 201381 on 2010-01-02 09:58:07Z by ed Build lib/ with WARNS=6 by default. Similar to libexec/, do the same with lib/. Make WARNS=6 the norm and lower it when needed. I'm setting WARNS?=0 for secure/. It seems secure/ includes the Makefile.inc provided by lib/. I'm not going to touch that directory. Most of the code there is contributed anyway.
Revision 1.102: download - view: text, markup, annotated - select for diffs
Wed Dec 30 06:12:03 2009 UTC (2 years, 1 month ago) by kientzle
Branches: MAIN
Diff to: previous 1.101: preferred, colored
Changes since revision 1.101: +1 -0 lines
SVN rev 201248 on 2009-12-30 06:12:03Z by kientzle UU decoder. Now that libarchive can recursively taste input streams, you can do things like this: tar xvf archive.tar.gz.uu
Revision 1.101: download - view: text, markup, annotated - select for diffs
Tue Dec 29 06:15:32 2009 UTC (2 years, 1 month ago) by kientzle
Branches: MAIN
Diff to: previous 1.100: preferred, colored
Changes since revision 1.100: +1 -0 lines
SVN rev 201168 on 2009-12-29 06:15:32Z by kientzle Zip write support for libarchive. The initial implementation was developed by Anselm Strauss as part of Google Summer of Code 2008, then completed by Joerg Sonnenberger.
Revision 1.100: download - view: text, markup, annotated - select for diffs
Mon Dec 28 02:58:14 2009 UTC (2 years, 1 month ago) by kientzle
Branches: MAIN
Diff to: previous 1.99: preferred, colored
Changes since revision 1.99: +1 -0 lines
SVN rev 201098 on 2009-12-28 02:58:14Z by kientzle New archive_file_count() utility.
Revision 1.99: download - view: text, markup, annotated - select for diffs
Mon Dec 28 02:41:27 2009 UTC (2 years, 1 month ago) by kientzle
Branches: MAIN
Diff to: previous 1.98: preferred, colored
Changes since revision 1.98: +1 -0 lines
SVN rev 201096 on 2009-12-28 02:41:27Z by kientzle Various portability fixes, plus: * New "ino64" field. * New UTF8 interfaces for hardlink/symlink updates
Revision 1.98.2.1.2.1: download - view: text, markup, annotated - select for diffs
Sun Oct 25 01:10:29 2009 UTC (2 years, 3 months ago) by kensmith
Branches: RELENG_8_0
CVS tags: RELENG_8_0_0_RELEASE
Diff to: previous 1.98.2.1: preferred, colored; next MAIN 1.98.2.2: preferred, colored
Changes since revision 1.98.2.1: +0 -0 lines
SVN rev 198460 on 2009-10-25 01:10:29Z by kensmith Copy stable/8 to releng/8.0 as part of 8.0-RELEASE release procedure. Approved by: re (implicit)
Revision 1.98.2.1: download - view: text, markup, annotated - select for diffs
Mon Aug 3 08:13:06 2009 UTC (2 years, 6 months ago) by kensmith
Branches: RELENG_8
CVS tags: RELENG_8_1_BP, RELENG_8_0_BP
Branch point for: RELENG_8_1, RELENG_8_0
Diff to: previous 1.98: preferred, colored
Changes since revision 1.98: +0 -0 lines
SVN rev 196045 on 2009-08-03 08:13:06Z by kensmith Copy head to stable/8 as part of 8.0 Release cycle. Approved by: re (Implicit)
Revision 1.98: download - view: text, markup, annotated - select for diffs
Sun Jul 19 17:25:24 2009 UTC (2 years, 6 months ago) by kensmith
Branches: MAIN
CVS tags: RELENG_8_BP
Branch point for: RELENG_8
Diff to: previous 1.97: preferred, colored
Changes since revision 1.97: +1 -1 lines
SVN rev 195767 on 2009-07-19 17:25:24Z by kensmith Bump the version of all non-symbol-versioned shared libraries in preparation for 8.0-RELEASE. Add the previous version of those libraries to ObsoleteFiles.inc and bump __FreeBSD_Version. Reviewed by: kib Approved by: re (rwatson)
Revision 1.97: download - view: text, markup, annotated - select for diffs
Sat May 30 17:26:55 2009 UTC (2 years, 8 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.96: preferred, colored
Changes since revision 1.96: +4 -3 lines
SVN rev 193101 on 2009-05-30 17:26:55Z by kientzle Include libmd and libcrypto in DPADD
Revision 1.96: download - view: text, markup, annotated - select for diffs
Sat May 30 07:08:16 2009 UTC (2 years, 8 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.95: preferred, colored
Changes since revision 1.95: +2 -1 lines
SVN rev 193083 on 2009-05-30 07:08:16Z by kientzle Link libarchive against -lmd and -lcrypto. Thanks to Ed Schouten for the clue.
Revision 1.95: download - view: text, markup, annotated - select for diffs
Mon Apr 27 22:39:43 2009 UTC (2 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.94: preferred, colored
Changes since revision 1.94: +3 -0 lines
SVN rev 191604 on 2009-04-27 22:39:43Z by kientzle Document the liblzma support. Unfortunately, liblzma itself is GPLed, so unlikely to become part of the FreeBSD base system. However, the core lzma compression/decompression code is public domain, so it should be feasible for someone to create a compatible library without the GPL strings.
Revision 1.94: download - view: text, markup, annotated - select for diffs
Mon Apr 27 20:23:22 2009 UTC (2 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.93: preferred, colored
Changes since revision 1.93: +7 -0 lines
SVN rev 191597 on 2009-04-27 20:23:22Z by kientzle Symlink some additional man page entries.
Revision 1.93: download - view: text, markup, annotated - select for diffs
Mon Apr 27 20:09:05 2009 UTC (2 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.92: preferred, colored
Changes since revision 1.92: +1 -0 lines
SVN rev 191594 on 2009-04-27 20:09:05Z by kientzle Merge r990,r1044 from libarchive.googlecode.com: read_support_format_raw() allows people to exploit libarchive's automatic decompression support by simply stubbing out the archive format handler. The raw handler is not enabled by support_format_all(), of course. It bids 1 on any non-empty input and always returns a single entry named "data" with no properties set.
Revision 1.92: download - view: text, markup, annotated - select for diffs
Sat Apr 18 06:06:47 2009 UTC (2 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.91: preferred, colored
Changes since revision 1.91: +6 -0 lines
SVN rev 191241 on 2009-04-18 06:06:47Z by kientzle Rely on OpenSSL bits only if we're building a system with OpenSSL. Also, adjust the MD5 calls to rely on libmd instead of libcrypto, so we keep MD5 support even in the !OpenSSL case.
Revision 1.91: download - view: text, markup, annotated - select for diffs
Fri Apr 17 00:54:35 2009 UTC (2 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.90: preferred, colored
Changes since revision 1.90: +2 -0 lines
SVN rev 191172 on 2009-04-17 00:54:35Z by kientzle Merge new xz/lzma support from libarchive.googlecode.com. Since FreeBSD doesn't have liblzma in the base system, the read side will always fall back to the unxz/unlzma commands for now. (Which will in turn fail if those commands are not currently installed.) The write side does not yet have a fallback, so that will just fail.
Revision 1.77.2.3.4.1: download - view: text, markup, annotated - select for diffs
Wed Apr 15 03:14:26 2009 UTC (2 years, 9 months ago) by kensmith
Branches: RELENG_7_2
CVS tags: RELENG_7_2_0_RELEASE
Diff to: previous 1.77.2.3: preferred, colored; next MAIN 1.78: preferred, colored
Changes since revision 1.77.2.3: +0 -0 lines
SVN rev 191087 on 2009-04-15 03:14:26Z by kensmith Create releng/7.2 from stable/7 in preparation for 7.2-RELEASE. Approved by: re (implicit)
Revision 1.90: download - view: text, markup, annotated - select for diffs
Sun Apr 12 05:04:02 2009 UTC (2 years, 10 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.89: preferred, colored
Changes since revision 1.89: +11 -0 lines
SVN rev 190957 on 2009-04-12 05:04:02Z by kientzle Merge from libarchive.googlecode.com r756,r761: Document the new archive_read_disk API.
Revision 1.89: download - view: text, markup, annotated - select for diffs
Fri Mar 6 04:35:31 2009 UTC (2 years, 11 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.88: preferred, colored
Changes since revision 1.88: +3 -0 lines
SVN rev 189429 on 2009-03-06 04:35:31Z by kientzle Merge r399,401,402,405,415,430,440,452,453,458,506,533,536,538,544,590 from libarchive.googlecode.com: Add a new "archive_read_disk" API that provides the important service of reading metadata from the disk. In particular, this will make it possible to remove all knowledge of extended attributes, ACLs, etc, from clients such as bsdtar and bsdcpio. Closely related, this API also provides pluggable uid->uname and gid->gname lookup and caching services similar to the uname->uid and gname->gid services provided by archive_write_disk. Remember this is also required for correct ACL management. Documentation is still pending...
Revision 1.77.2.3.2.1: download - view: text, markup, annotated - select for diffs
Tue Nov 25 02:59:29 2008 UTC (3 years, 2 months ago) by kensmith
Branches: RELENG_7_1
CVS tags: RELENG_7_1_0_RELEASE
Diff to: previous 1.77.2.3: preferred, colored; next MAIN 1.78: preferred, colored
Changes since revision 1.77.2.3: +0 -0 lines
SVN rev 185281 on 2008-11-25 02:59:29Z by kensmith Create releng/7.1 in preparation for moving into RC phase of 7.1 release cycle. Approved by: re (implicit)
Revision 1.36.2.16.2.1: download - view: text, markup, annotated - select for diffs
Thu Oct 2 02:57:24 2008 UTC (3 years, 4 months ago) by kensmith
Branches: RELENG_6_4
CVS tags: RELENG_6_4_0_RELEASE
Diff to: previous 1.36.2.16: preferred, colored; next MAIN 1.37: preferred, colored
Changes since revision 1.36.2.16: +0 -0 lines
SVN rev 183531 on 2008-10-02 02:57:24Z by kensmith Create releng/6.4 from stable/6 in preparation for 6.4-RC1. Approved by: re (implicit)
Revision 1.88: download - view: text, markup, annotated - select for diffs
Sun Aug 31 07:21:46 2008 UTC (3 years, 5 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.87: preferred, colored
Changes since revision 1.87: +1 -0 lines
SVN rev 182517 on 2008-08-31 07:21:46Z by kientzle New mtree writer, thanks to Joerg Sonnenberger. Obtained from: Joerg Sonnenberger
Revision 1.87: download - view: text, markup, annotated - select for diffs
Sun Aug 24 05:54:28 2008 UTC (3 years, 5 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.86: preferred, colored
Changes since revision 1.86: +0 -4 lines
SVN rev 182101 on 2008-08-24 05:54:28Z by kientzle Remove the stillborn attempt to cleanup tests as well as the build dir.
Revision 1.86: download - view: text, markup, annotated - select for diffs
Sun Aug 24 05:42:22 2008 UTC (3 years, 5 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.85: preferred, colored
Changes since revision 1.85: +4 -0 lines
SVN rev 182097 on 2008-08-24 05:42:22Z by kientzle Fail copying path/.. only if SECURE_NODOTDOT was specified. Since we already warn for any '..' elements in that case, the extra "lastdotdot" tracking turns out to be unnecessary. PR: bin/124924
Revision 1.36.2.16: download - view: text, markup, annotated - select for diffs
Wed Aug 13 03:27:33 2008 UTC (3 years, 5 months ago) by kientzle
Branches: RELENG_6
CVS tags: RELENG_6_4_BP
Branch point for: RELENG_6_4
Diff to: previous 1.36.2.15: preferred, colored; branchpoint 1.36: preferred, colored; next MAIN 1.37: preferred, colored
Changes since revision 1.36.2.15: +6 -28 lines
SVN rev 181654 on 2008-08-13 03:27:33Z by kientzle MFC r179321,179349,179790,179797,179801-179802 This brings in all of the updates from libarchive 2.5.4b plus the most critical of the fixes from 2.5.5. Note the internal version is 1.9.25 to mark the fact that it still uses the libarchive 1.x API in order to preserve API/ABI compatibility with previous FreeBSD 6 releases.
Revision 1.36.2.15: download - view: text, markup, annotated - select for diffs
Mon Aug 11 05:12:28 2008 UTC (3 years, 6 months ago) by kientzle
Branches: RELENG_6
Diff to: previous 1.36.2.14: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.14: +1 -0 lines
SVN rev 181589 on 2008-08-11 05:12:28Z by kientzle MFC r177473: link manpage for archive_write_close
Revision 1.36.2.14: download - view: text, markup, annotated - select for diffs
Mon Aug 11 02:51:42 2008 UTC (3 years, 6 months ago) by kientzle
Branches: RELENG_6
Diff to: previous 1.36.2.13: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.13: +2 -0 lines
SVN rev 181573 on 2008-08-11 02:51:42Z by kientzle MFC r177191: new public functions archive_entry_copy_link() and archive_entry_copy_link_w()
Revision 1.36.2.13: download - view: text, markup, annotated - select for diffs
Mon Aug 11 02:20:24 2008 UTC (3 years, 6 months ago) by kientzle
Branches: RELENG_6
Diff to: previous 1.36.2.12: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.12: +1 -0 lines
SVN rev 181568 on 2008-08-11 02:20:24Z by kientzle MFC r177183: compress write support, thanks to Joerg Sonnenberger.
Revision 1.36.2.12: download - view: text, markup, annotated - select for diffs
Sun Aug 10 21:51:42 2008 UTC (3 years, 6 months ago) by kientzle
Branches: RELENG_6
Diff to: previous 1.36.2.11: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.11: +1 -1 lines
SVN rev 181553 on 2008-08-10 21:51:42Z by kientzle MFC: comment update and version # tweak.
Revision 1.36.2.11: download - view: text, markup, annotated - select for diffs
Sun Aug 10 21:18:59 2008 UTC (3 years, 6 months ago) by kientzle
Branches: RELENG_6
Diff to: previous 1.36.2.10: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.10: +11 -15 lines
SVN rev 181543 on 2008-08-10 21:18:59Z by kientzle MFC libarchive 2.4.10, including test harness.
Revision 1.77.2.3: download - view: text, markup, annotated - select for diffs
Sun Aug 10 04:32:47 2008 UTC (3 years, 6 months ago) by kientzle
Branches: RELENG_7
CVS tags: RELENG_7_4_BP, RELENG_7_3_BP, RELENG_7_2_BP, RELENG_7_1_BP
Branch point for: RELENG_7_4, RELENG_7_3, RELENG_7_2, RELENG_7_1
Diff to: previous 1.77.2.2: preferred, colored; branchpoint 1.77: preferred, colored; next MAIN 1.78: preferred, colored
Changes since revision 1.77.2.2: +6 -28 lines
SVN rev 181490 on 2008-08-10 04:32:47Z by kientzle Big MFC of libarchive 2.5.5.
Revision 1.85: download - view: text, markup, annotated - select for diffs
Sun Jun 15 05:05:53 2008 UTC (3 years, 7 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.84: preferred, colored
Changes since revision 1.84: +1 -9 lines
SVN rev 179790 on 2008-06-15 05:05:53Z by kientzle archive.h is no longer constructed from archive.h.in, so we can rename it and drop some no-longer-necessary build magic from the Makefile.
Revision 1.84: download - view: text, markup, annotated - select for diffs
Mon May 26 17:00:22 2008 UTC (3 years, 8 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.83: preferred, colored
Changes since revision 1.83: +8 -22 lines
MFp4: libarchive 2.5.4b. (Still 'b' until I get a bit more feedback, but the 2.5 branch is shaping up nicely.) In addition to many small bug fixes and code improvements: * Another iteration of versioning; I think I've got it right now. * Portability: A lot of progress on Windows support (though I'm not committing all of the Windows support files to FreeBSD CVS) * Explicit tracking of MBS, WCS, and UTF-8 versions of strings in archive_entry; the archive_entry routines now correctly return NULL only when something is unset, setting NULL properly clears string values. Most charset conversions have been pushed down to archive_string. * Better handling of charset conversion failure when writing or reading UTF-8 headers in pax archives * archive_entry_linkify() provides multiple strategies for hardlink matching to suit different format expectations * More accurate bzip2 format detection * Joerg Sonnenberger's extensive improvements to mtree support * Rough support for self-extracting ZIP archives. Not an ideal approach, but it works for the archives I've tried. * New "sparsify" option in archive_write_disk converts blocks of nulls into seeks. * Better default behavior for the test harness; it now reports all failures by default instead of coredumping at the first one.
Revision 1.77.2.2: download - view: text, markup, annotated - select for diffs
Wed May 21 04:14:10 2008 UTC (3 years, 8 months ago) by kientzle
Branches: RELENG_7
Diff to: previous 1.77.2.1: preferred, colored; branchpoint 1.77: preferred, colored
Changes since revision 1.77.2.1: +4 -0 lines
MFC: New manpage links and turn on the compress write support.
Revision 1.83: download - view: text, markup, annotated - select for diffs
Fri Mar 21 11:10:20 2008 UTC (3 years, 10 months ago) by kaiw
Branches: MAIN
Diff to: previous 1.82: preferred, colored
Changes since revision 1.82: +1 -0 lines
Add MLINK for archive_write_close. Approved by: jkoshy(mentor), kientzle
Revision 1.82: download - view: text, markup, annotated - select for diffs
Fri Mar 14 23:00:53 2008 UTC (3 years, 10 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.81: preferred, colored
Changes since revision 1.81: +2 -0 lines
New public functions archive_entry_copy_link() and archive_entry_copy_link_w() override the currently set link value, whether that's a hardlink or a symlink. Plus documentation update and tests.
Revision 1.81: download - view: text, markup, annotated - select for diffs
Fri Mar 14 20:35:37 2008 UTC (3 years, 10 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.80: preferred, colored
Changes since revision 1.80: +1 -0 lines
Support for writing 'compress' format, thanks to Joerg Sonnenberger.
Revision 1.77.2.1: download - view: text, markup, annotated - select for diffs
Mon Feb 11 00:31:06 2008 UTC (4 years ago) by kientzle
Branches: RELENG_7
Diff to: previous 1.77: preferred, colored
Changes since revision 1.77: +11 -15 lines
MFC: libarchive 2.4.12
* Formats are now only bid once per file, not once per entry
(Affects archive_read.c, most format readers, internals manpage)
* Correct tar/cpio history in libarchive_formats manpage
* Avoid unnecessary copies in {write,read}_compression_none
(significant performance boost for uncompressed archives!)
* Protect against zero-length writes in gzip/bzip2 compressors
* Tar reader: improve hardlink length heuristics, GNU tar --posix
--sparse support, related fixes to SCHILY.realsize handling
* Cpio reader: recover from sync errors
* Cpio writer: pad symlinks properly in newc format
* Ar writer: close out empty archive correctly
* Zip reader: ignore PK00 header, code cleanups from des@
* Iso9660 reader: support device node entries
* archive_write_disk: support hardlinks with bodies, enforce
maximum file size
* Reconnect progress callback from archive_read_extract()
* New: archive_entry_strmode()
* New: mtree reader
* New: "linkresolver" makes it easier to do hardlink resolution
* UUencode test reference files (be nice to CVS)
* New test: exercise very large entries (2G up to 1T) in tar archives
* New test: Detailed verification of cpio odc and newc formats
* New test: Various strategies for restoring multiple links to a file
* New tests: Various compatibility checks against gzip, zip, old tar, etc.
* New test: cpio recovery from damaged archives
* New test: mtree reading
* Improved statistics reporting from test harness
* Plus minor portability improvements
Revision 1.80: download - view: text, markup, annotated - select for diffs
Wed Jan 23 05:48:07 2008 UTC (4 years ago) by kientzle
Branches: MAIN
Diff to: previous 1.79: preferred, colored
Changes since revision 1.79: +1 -1 lines
Track version # from the portable release.
Revision 1.79: download - view: text, markup, annotated - select for diffs
Tue Jan 1 06:17:05 2008 UTC (4 years, 1 month ago) by kientzle
Branches: MAIN
Diff to: previous 1.78: preferred, colored
Changes since revision 1.78: +0 -1 lines
The mtree.5 file has been moved to src/usr.sbin/mtree.
Revision 1.78: download - view: text, markup, annotated - select for diffs
Sun Dec 30 04:58:21 2007 UTC (4 years, 1 month ago) by kientzle
Branches: MAIN
Diff to: previous 1.77: preferred, colored
Changes since revision 1.77: +12 -15 lines
Update libarchive to 2.4.10. This includes a number of improvements that I've been working on but put off committing until after the RELENG_7 branch, including: * New manpages: cpio.5 mtree.5 * New archive_entry_strmode() * New archive_entry_link_resolver() * New read support: mtree format * Internal API change: read format auction only runs once * Running the auction only once allowed simplifying a lot of bid logic. * Cpio robustness: search for next header after a sync error * Support device nodes on ISO9660 images * Eliminate a lot of unnecessary copies for uncompressed archives * Corrected handling of new GNU --sparse --posix formats * Correctly handle a zero-byte write to a compressed archive * Fixed memory leaks Many of these improvements were motivated by the upcoming bsdcpio front-end. There have also been extensive improvements to the libarchive_test test harness, which I'll commit separately.
Revision 1.36.2.10: download - view: text, markup, annotated - select for diffs
Sat Aug 25 03:49:12 2007 UTC (4 years, 5 months ago) by kientzle
Branches: RELENG_6
CVS tags: RELENG_6_3_BP, RELENG_6_3_0_RELEASE, RELENG_6_3
Diff to: previous 1.36.2.9: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.9: +1 -1 lines
MFC archive_read_support_format_tar.c 1.61 This updates the support for GNU tar --posix --sparse archive entries to be compatible with GNU tar 1.17.
Revision 1.36.2.9: download - view: text, markup, annotated - select for diffs
Thu Jul 19 14:31:52 2007 UTC (4 years, 6 months ago) by kientzle
Branches: RELENG_6
Diff to: previous 1.36.2.8: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.8: +1 -1 lines
MFC better error handling from archive_string_ensure() failures. Several key users of this function now simply return ENOMEM to the caller instead of aborting the program.
Revision 1.36.2.8: download - view: text, markup, annotated - select for diffs
Wed Jul 18 04:57:32 2007 UTC (4 years, 6 months ago) by kientzle
Branches: RELENG_6
Diff to: previous 1.36.2.7: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.7: +2 -0 lines
MFC: archive_entry_copy_gname() and archive_entry_copy_uname() functions.
Revision 1.77: download - view: text, markup, annotated - select for diffs
Sun Jul 15 19:10:34 2007 UTC (4 years, 6 months ago) by kientzle
Branches: MAIN
CVS tags: RELENG_7_BP, RELENG_7_0_BP, RELENG_7_0_0_RELEASE, RELENG_7_0
Branch point for: RELENG_7
Diff to: previous 1.76: preferred, colored
Changes since revision 1.76: +2 -0 lines
Add archive_entry_copy_gname() and archive_entry_copy_uname() functions. Approved by: re (bmah) MFC after: 3 days
Revision 1.36.2.7: download - view: text, markup, annotated - select for diffs
Thu Jul 12 15:00:44 2007 UTC (4 years, 7 months ago) by cperciva
Branches: RELENG_6
Diff to: previous 1.36.2.6: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.6: +1 -1 lines
Correct multiple security issues in how libarchive handles corrupt tar archives, including a potentially exploitable buffer overflow. Reviewed by: kientzle Security: FreeBSD-SA-07:05.libarchive
Revision 1.76: download - view: text, markup, annotated - select for diffs
Thu Jul 12 15:00:28 2007 UTC (4 years, 7 months ago) by cperciva
Branches: MAIN
Diff to: previous 1.75: preferred, colored
Changes since revision 1.75: +1 -1 lines
Correct multiple security issues in how libarchive handles corrupt tar archives, including a potentially exploitable buffer overflow. Approved by: re (kensmith, security blanket) Reviewed by: kientzle Security: FreeBSD-SA-07:05.libarchive
Revision 1.36.2.6: download - view: text, markup, annotated - select for diffs
Sat Jul 7 16:59:11 2007 UTC (4 years, 7 months ago) by kientzle
Branches: RELENG_6
Diff to: previous 1.36.2.5: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.5: +3 -1 lines
MFC unbreak installworld. <sigh> Pointy hat: me
Revision 1.75: download - view: text, markup, annotated - select for diffs
Sat Jul 7 16:55:42 2007 UTC (4 years, 7 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.74: preferred, colored
Changes since revision 1.74: +3 -1 lines
Fix installworld: /usr/bin/printf isn't available then, so use awk's printf for the formatting here instead. Pointy hat: Yours Truly Approved by: re
Revision 1.74: download - view: text, markup, annotated - select for diffs
Fri Jul 6 15:36:37 2007 UTC (4 years, 7 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.73: preferred, colored
Changes since revision 1.73: +11 -7 lines
New "version stamp" simplifies determining the exact version of libarchive being used. I've been taking advantage of this with a recent round of updates to libarchive_test so that it can test older and newer versions of the library. Approved by: re (Ken Smith)
Revision 1.36.2.5: download - view: text, markup, annotated - select for diffs
Thu Jul 5 01:56:39 2007 UTC (4 years, 7 months ago) by kientzle
Branches: RELENG_6
Diff to: previous 1.36.2.4: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.4: +52 -10 lines
MFC libarchive 1.9. This is identical to libarchive 2.2.3 from -CURRENT, with all of the performance improvements, bug fixes, and new formats, except that: * archive_read_finish() and archive_write_finish() don't return errors * archive_write_data() has a different return type * user-provided skip callbacks have a slightly different signature These differences maintain ABI compatibility with libarchive 1.3.1 (hence the "1" in "1.9") and allows libarchive 1.9 to have the same SHLIB_MAJOR and otherwise serve as a straight replacement for libarchive 1.3.1 (only better). Thanks to: Many, many people who contributed error reports, bug fixes, and suggestions over the last three years. ;-)
Revision 1.73: download - view: text, markup, annotated - select for diffs
Fri Jun 22 05:47:00 2007 UTC (4 years, 7 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +1 -0 lines
Support for writing the 'newc' cpio format, plus a minimal test harness for the cpio formats. Thanks to: Rudolf Marek Approved by: re@
Revision 1.72: download - view: text, markup, annotated - select for diffs
Tue May 29 01:00:18 2007 UTC (4 years, 8 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.71: preferred, colored
Changes since revision 1.71: +23 -2 lines
libarchive 2.2.3
* "compression_program" support uses an external program
* Portability: no longer uses "struct stat" as a primary
data interchange structure internally
* Part of the above: refactor archive_entry to separate
out copy_stat() and stat() functions
* More complete tests for archive_entry
* Finish archive_entry_clone()
* Isolate major()/minor()/makedev() in archive_entry; remove
these from everywhere else.
* Bug fix: properly handle decompression look-ahead at end-of-data
* Bug fixes to 'ar' support
* Fix memory leak in ZIP reader
* Portability: better timegm() emulation in iso9660 reader
* New write_disk flags to suppress auto dir creation and not
overwrite newer files (for future cpio front-end)
* Simplify trailing-'/' fixup when writing tar and pax
* Test enhancements: fix various compiler warnings, improve
portability, add lots of new tests.
* Documentation: document new functions, first draft of
libarchive_internals.3
MFC after: 14 days
Thanks to: Joerg Sonnenberger (compression_program)
Thanks to: Kai Wang (ar)
Thanks to: Colin Percival (many small fixes)
Thanks to: Many others who sent me various patches and problem reports.
Revision 1.71: download - view: text, markup, annotated - select for diffs
Wed May 2 05:29:55 2007 UTC (4 years, 9 months ago) by cperciva
Branches: MAIN
Diff to: previous 1.70: preferred, colored
Changes since revision 1.70: +1 -1 lines
s/@VERSION@/@ARCHIVE_VERSION@/ This is a no-op as far as FreeBSD is concerned, but makes libarchive more autoconf-friendly. Approved by: kientzle
Revision 1.70: download - view: text, markup, annotated - select for diffs
Sun Apr 15 00:53:38 2007 UTC (4 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.69: preferred, colored
Changes since revision 1.69: +1 -1 lines
Consolidate numeric limit macros in one place; include them only on platforms that need them. FreeBSD doesn't.
Revision 1.69: download - view: text, markup, annotated - select for diffs
Sat Apr 14 22:34:10 2007 UTC (4 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.68: preferred, colored
Changes since revision 1.68: +1 -0 lines
Overhaul of 'ar' support: * use "AR_GNU" as the format name instead of AR_SVR4 (it's what everyone is going to call it anyway) * Simplify numeric parsing to unsigned (none of the numeric values should ever be negative); don't run off end of numeric fields. * Finish parsing the common header fields before the next I/O request (which might dump the contents) * Be smarter about format guessing and trimming filenames. * Most of the magic values are only used in one place, so just inline them. * Many more comments. * Be smarter about handling damaged entries; return something reasonable. * Call it a "filename table" instead of a "string table" * Update tests. Enable selection of 'ar', 'arbsd', and 'argnu' formats by name (this allows bsdtar to create ar format archives). The 'ar' writer still needs some work; it should reject entries that aren't regular files and should probably also strip leading paths from filenames.
Revision 1.68: download - view: text, markup, annotated - select for diffs
Sat Apr 14 18:24:42 2007 UTC (4 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.67: preferred, colored
Changes since revision 1.67: +0 -1 lines
Fix the build by temporarily disabling 'ar' support until I can clean it up.
Revision 1.67: download - view: text, markup, annotated - select for diffs
Sat Apr 14 08:42:50 2007 UTC (4 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +1 -1 lines
Fix the build. N.B. 'ar' format support is broken right now, it's not passing tests. If I can't find the problem soon, I'll back out the last commit.
Revision 1.66: download - view: text, markup, annotated - select for diffs
Sat Apr 14 08:20:30 2007 UTC (4 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.65: preferred, colored
Changes since revision 1.65: +1 -1 lines
Conventionally, tar archives have always included a trailing '/' for directories. bsdtar used to add this, but that recently got lost somehow. So now I'm adding it back in libarchive. The only odd part of doing this in libarchive: Adding a directory to a tar archive and then reading it back again can yield a different name. Add a test case to exercise some boundary conditions with tar filenames and ensure that trailing slashes are added to dir names only as necessary. Thanks to: Oliver Lehmann for bringing this regression to my attention.
Revision 1.65: download - view: text, markup, annotated - select for diffs
Thu Apr 12 04:44:21 2007 UTC (4 years, 10 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.64: preferred, colored
Changes since revision 1.64: +2 -1 lines
Now that libarchive is being built in more environments, factor out the platform-specific configuration header a bit more cleanly. Suggested by: Joerg Sonnenberger
Revision 1.64: download - view: text, markup, annotated - select for diffs
Sat Apr 7 05:54:23 2007 UTC (4 years, 10 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +3 -1 lines
Enable 'ar' support; hook it up to the build and enable it with _read_support_format_all().
Revision 1.63: download - view: text, markup, annotated - select for diffs
Thu Apr 5 15:51:19 2007 UTC (4 years, 10 months ago) by cperciva
Branches: MAIN
Diff to: previous 1.62: preferred, colored
Changes since revision 1.62: +0 -1 lines
Move archive_read_data_into_buffer into archive_read.c, simplify its implementation, and mark it as deprecated. It will be removed entirely in libarchive 3.0 (in FreeBSD 8.0?) but there's no reason for anyone to use it instead of archive_read_data. Approved by: kientzle
Revision 1.62: download - view: text, markup, annotated - select for diffs
Sat Mar 24 05:02:15 2007 UTC (4 years, 10 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.61: preferred, colored
Changes since revision 1.61: +1 -1 lines
Notice when mkdir() fails. Don't change permissions on an existing dir unless _EXTRACT_PERM is requested. In particular, bsdtar -x should not edit mode of existing dirs now; bsdtar -xp will.
Revision 1.61: download - view: text, markup, annotated - select for diffs
Tue Mar 13 06:04:24 2007 UTC (4 years, 11 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.60: preferred, colored
Changes since revision 1.60: +1 -1 lines
When ARCHIVE_EXTRACT_UNLINK is requested: * Only try to remove the existing item if we're not restoring a directory. * If unlink fails, try rmdir next. This should fix the broken --unlink option in bsdtar. Thanks again to: Kris Kennaway, for beating up bsdtar on pointyhat.
Revision 1.60: download - view: text, markup, annotated - select for diffs
Sun Mar 11 10:29:52 2007 UTC (4 years, 11 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.59: preferred, colored
Changes since revision 1.59: +1 -1 lines
Libarchive 2.0.23:
* The ACL formatter was mis-formatting entries which had a
user/group ID but no name. Make the parser tolerant of
these, so that old archives can be correctly restored;
fix the formatter to generate correct entries.
* Fix overwrite detection by introducing a new "FAILED" return
code that indicates the current entry cannot be continued
but the archive as a whole is still sound.
* Header cleanup: Remove some unused headers, add some that
are required with new Linux systems.
Revision 1.59: download - view: text, markup, annotated - select for diffs
Sat Mar 3 07:37:35 2007 UTC (4 years, 11 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.58: preferred, colored
Changes since revision 1.58: +16 -2 lines
libarchive 2.0
* libarchive_test program exercises many of the core features
* Refactored old "read_extract" into new "archive_write_disk", which
uses archive_write methods to put entries onto disk. In particular,
you can now use archive_write_disk to create objects on disk
without having an archive available.
* Pushed some security checks from bsdtar down into libarchive, where
they can be better optimized.
* Rearchitected the logic for creating objects on disk to reduce
the number of system calls. Several common cases now use a
minimum number of system calls.
* Virtualized some internal interfaces to provide a clearer separation
of read and write handling and make it simpler to override key
methods.
* New "empty" format reader.
* Corrected return types (this ABI breakage required the "2.0" version bump)
* Many bug fixes.
Revision 1.36.2.4: download - view: text, markup, annotated - select for diffs
Wed Feb 14 08:29:35 2007 UTC (4 years, 11 months ago) by kientzle
Branches: RELENG_6
Diff to: previous 1.36.2.3: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.3: +1 -0 lines
MFC: "empty" format support PR: bin/108607
Revision 1.58: download - view: text, markup, annotated - select for diffs
Thu Feb 1 06:18:16 2007 UTC (5 years ago) by kientzle
Branches: MAIN
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +1 -0 lines
Add support for a new archive format "empty" that reads empty files.
Revision 1.36.2.3: download - view: text, markup, annotated - select for diffs
Sat Jan 27 06:44:52 2007 UTC (5 years ago) by kientzle
Branches: RELENG_6
Diff to: previous 1.36.2.2: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.2: +26 -13 lines
MFC: synchronize libarchive with FreeBSD-CURRENT. This includes the following: * License updates. * Fixes for FreeBSD/arm * New read_open_filename, read_open_memory * New write_open_filename, write_open_memory * Write-blocking cleanup (cperciva@) * Adjust API so read_open/write_open funcs only need public API * Portability improvements (casts, include guards, etc.) * Properly pad sparse archive entries with blocks of zero bytes (cperciva@) * Correct copy of data to file when very large reads are possible * Be more flexible about dir permissions to avoid some fixups * Correct skip handling for entries over 2G (cperciva@) * ISO9660: skip entries faster, support entries over 2G * Tar: correct position accounting when skipping large entries (cperciva@) * Support unbuffered write as a special case (blocksize=0) (cperciva@) * Documentation corrections, improvements * Spelling corrections (cperciva@) * Improve some internal error returns A few of these changes break the API/ABI and are therefore conditional on the version number. FreeBSD 6 will continue to use libarchive 1.x, which will continue to use the old API/ABI. When all of these changes are ready, the libarchive version number will be changed in -CURRENT to enable the new API. Hopefully, this will allow the actual source to remain identical between FreeBSD 6 and 7; only the version parameters in the Makefile will be different.
Revision 1.57: download - view: text, markup, annotated - select for diffs
Sun Nov 26 19:09:42 2006 UTC (5 years, 2 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +6 -5 lines
Bump the libarchive version number, correct the shell hackery to break the full version down into major/minor values.
Revision 1.56: download - view: text, markup, annotated - select for diffs
Sun Nov 26 19:00:49 2006 UTC (5 years, 2 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.55: preferred, colored
Changes since revision 1.55: +3 -1 lines
Write-blocking cleanup, largely thanks to Colin Percival (cperciva@).
* If write block size is zero, don't block at all.
This supports the unusual requirement of applications
that need "no-delay" writes.
* Expose _write_finish_entry() to give such applications more
control over write boundaries. (Normal applications do not
need this, as entries are completed automatically.)
* Correct the type of write callbacks; this is a minor API
change that does not affect the ABI.
* Correct the error handling in _write_next_header() around
completing the previous entry.
* Correct the documentation for block-size markers: Remove
docs for the long-defunct _read_set_block_size(); document
all of the write block size manipulators.
MFC after: 14 days
Revision 1.55: download - view: text, markup, annotated - select for diffs
Sun Nov 26 05:39:28 2006 UTC (5 years, 2 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.54: preferred, colored
Changes since revision 1.54: +0 -5 lines
Unbreak libarchive on arm. Two parts of libarchive relied on a traditional shortcut of defining on-disk layouts using structures of character arrays. Unfortunately, as recently discussed on cvs-all@, this usage is not actually sanctioned by the standards and specifically fails on GCC/arm (unless your data structures happen to be "naturally aligned"). The new code defines offsets/sizes for data fields and accesses them using explicit pointer arithmetic, instead of casting to a structure and accessing structure fields. In particular, the new code is now clean with WARNS=6 on arm. MFC after: 14 days
Revision 1.54: download - view: text, markup, annotated - select for diffs
Fri Nov 24 16:35:54 2006 UTC (5 years, 2 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +9 -1 lines
Connect four new files to the build. PR: bin/86742
Revision 1.53: download - view: text, markup, annotated - select for diffs
Mon Nov 20 16:48:04 2006 UTC (5 years, 2 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.52: preferred, colored
Changes since revision 1.52: +4 -2 lines
Officially rename archive_{read,write}_open_file() to
archive_{read,write}_open_filename():
* Update Makefile to build the files using the new name.
* Update docs to document the new names, mentioning the
old ones as "deprecated synonyms."
* The old filenames will be reconnected to the build soon;
I'll soon recyce those files for a slightly different purpose.
Revision 1.52: download - view: text, markup, annotated - select for diffs
Mon Nov 6 00:28:46 2006 UTC (5 years, 3 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.51: preferred, colored
Changes since revision 1.51: +0 -1 lines
Eliminate documentation references to a non-existent function.
Revision 1.51: download - view: text, markup, annotated - select for diffs
Mon Nov 6 00:24:57 2006 UTC (5 years, 3 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.50: preferred, colored
Changes since revision 1.50: +3 -6 lines
Computing SHLIB_MAJOR is not a good idea. It's really a FreeBSD system value that has no real relation to the libarchive version. (Except, of course, that any ABI breakage will force both to be incremented.)
Revision 1.50: download - view: text, markup, annotated - select for diffs
Tue Sep 5 05:59:45 2006 UTC (5 years, 5 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.49: preferred, colored
Changes since revision 1.49: +4 -0 lines
Some minor corrections: * Expose functions for setting the "skip file" dev/ino information * Expose functions for setting/querying the block size on reads * Correctly propagate errors out of archive_read_close/archive_write_close * Update manpage with information about new functions
Revision 1.36.2.2: download - view: text, markup, annotated - select for diffs
Sun Jul 30 06:30:00 2006 UTC (5 years, 6 months ago) by kientzle
Branches: RELENG_6
CVS tags: RELENG_6_2_BP, RELENG_6_2_0_RELEASE, RELENG_6_2
Diff to: previous 1.36.2.1: preferred, colored; branchpoint 1.36: preferred, colored
Changes since revision 1.36.2.1: +31 -53 lines
MFC libarchive 1.2.53 to FreeBSD 6. * Fixes bin/86690 (sparse file extraction) * Fixes bin/87911 (assertion failure after failed open) * Corrects handling of very old files (negative mtime) * Better error checking for memory allocation failures * Style and portability fixes * Documentation corrections * Initial extended attribute support
Revision 1.49: download - view: text, markup, annotated - select for diffs
Mon May 1 01:02:19 2006 UTC (5 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.48: preferred, colored
Changes since revision 1.48: +1 -1 lines
Simplify some of the wide-character handling, inspired in part by OpenBSD's not-quite-standard-compliant standard libraries. (No loss of functionality, just minor recoding to not rely on certain "standard" facilities that weren't actually needed.)
Revision 1.48: download - view: text, markup, annotated - select for diffs
Tue Mar 21 16:55:46 2006 UTC (5 years, 10 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.47: preferred, colored
Changes since revision 1.47: +1 -1 lines
POSIX.1e-style Extended Attribute support This commit implements storing/reading POSIX.1e-style extended attribute information in "pax" format archives. An outline of the storage format is in the tar.5 manpage. The archive_read_extract() function has code to restore those archives to disk for Linux; FreeBSD implementation is forthcoming. Many thanks to Jaakko Heinonen for finding flaws in earlier proposals and doing the bulk of the coding in this work.
Revision 1.47: download - view: text, markup, annotated - select for diffs
Sat Mar 11 23:59:43 2006 UTC (5 years, 11 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +0 -1 lines
The idea of supporting 'tp' was a fun one, but it is really not worth the effort to develop and maintain support for a format that hasn't been used for 30 years. ;-/
Revision 1.46: download - view: text, markup, annotated - select for diffs
Wed Mar 8 01:56:06 2006 UTC (5 years, 11 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.45: preferred, colored
Changes since revision 1.45: +27 -91 lines
Remove configure.ac.in and reorganize a few other things. This is part of a program to remove the non-FreeBSD autoconf/automake build system for libarchive from the FreeBSD source tree.
Revision 1.45: download - view: text, markup, annotated - select for diffs
Thu Jan 26 05:28:56 2006 UTC (6 years ago) by kientzle
Branches: MAIN
Diff to: previous 1.44: preferred, colored
Changes since revision 1.44: +1 -0 lines
Fix an aliasing error in the new TP support and reenable it in the build.
Revision 1.44: download - view: text, markup, annotated - select for diffs
Wed Jan 18 06:26:42 2006 UTC (6 years ago) by kientzle
Branches: MAIN
Diff to: previous 1.43: preferred, colored
Changes since revision 1.43: +0 -1 lines
Disable "tp" support until I figure out why it's breaking the build. <sigh>
Revision 1.43: download - view: text, markup, annotated - select for diffs
Tue Jan 17 03:40:42 2006 UTC (6 years ago) by kientzle
Branches: MAIN
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +2 -1 lines
Add support for "tp" format. tp was the standard system archiver for Fourth Edition through Sixth Edition Unix; it was replaced by tar in Seventh Edition. (First Edition through Third Edition used "tap.") Unfortunately, tp was not so very standard; there were a few different variants. The code here attempts to support what I believe were the most common variants. tp support is not yet enabled by archive_read_support_format_all(), as I'm not yet entirely comfortable with the detection heuristics. People interested in experimenting can add archive_read_support_format_tp() just after any calls to archive_read_support_format_all() in bsdtar to see how well this works. TODO: tp format is roughly similar in structure to dump/restore archive formats used by many systems. It should be possible to generalize this code to handle many dump/restore variants. Format detection heuristics are going to be rough, though. Thanks to: Warren Toomey, whose very basic tp extraction programs and documentation made this possible.
Revision 1.42: download - view: text, markup, annotated - select for diffs
Thu Nov 10 18:07:05 2005 UTC (6 years, 3 months ago) by ru
Branches: MAIN
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +2 -0 lines
Add missing shared library interdependencies.
Revision 1.41: download - view: text, markup, annotated - select for diffs
Fri Oct 14 16:32:50 2005 UTC (6 years, 3 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.40: preferred, colored
Changes since revision 1.40: +2 -2 lines
Fix installworld breakage. <sigh> expr and printf are not available during installworld, so use /bin/sh arithmetic expansion instead of expr and simply give up on vanity formatting. ;-)
Revision 1.20.2.7: download - view: text, markup, annotated - select for diffs
Fri Oct 14 16:06:35 2005 UTC (6 years, 3 months ago) by kientzle
Branches: RELENG_5
CVS tags: RELENG_5_5_BP, RELENG_5_5_0_RELEASE, RELENG_5_5
Diff to: previous 1.20.2.6: preferred, colored; branchpoint 1.20: preferred, colored; next MAIN 1.21: preferred, colored
Changes since revision 1.20.2.6: +2 -2 lines
Correct the SHLIB_MAJOR back to 1 for libarchive. In a recent MFC, I accidentally picked up a SHLIB_MAJOR version bump for FreeBSD 6. Anyone that updated their 5-STABLE system between October 4, 2005 and now should delete /usr/lib/libarchive.so.2. Apologies.
Revision 1.40: download - view: text, markup, annotated - select for diffs
Thu Oct 13 05:51:37 2005 UTC (6 years, 4 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +65 -21 lines
1) Use GNU libtool to build shared libraries on non-FreeBSD systems (or on FreeBSD systems when using ports). 2) Overhaul the versioning logic. In particular, SHLIB_MAJOR number is now computed as "major+minor", which ensures library versions are the same for the FreeBSD build system and the portable libtool/autoconf/automake build system.
Revision 1.20.2.6: download - view: text, markup, annotated - select for diffs
Tue Oct 4 05:39:39 2005 UTC (6 years, 4 months ago) by kientzle
Branches: RELENG_5
Diff to: previous 1.20.2.5: preferred, colored; branchpoint 1.20: preferred, colored
Changes since revision 1.20.2.5: +2 -2 lines
MFC: Update libarchive to 1.02.033. (Synchronize with -CURRENT.)
Among other fixes:
* C++ support
* Portability: remove C99 requirements
* Portability: don't require wchar.h
* Check for memory allocation failures
* Portability: better detection of ACL support
* Signed/unsigned fixes
* Fix crash when archive_read_next_header called after an
open failure
* Fix archive_read_data
* Reduce window for attribute restore security race
* Clean up pathnames before creating leading dirs
* assign default inode/dev values to extracted tar entries
to better support tar->cpio conversions
* Trim mode and time values for inner ustar header when constructing
pax entries
* Sample code in archive_read.3 and archive_write.3 works now
* Many comment and documentation corrections
Revision 1.39: download - view: text, markup, annotated - select for diffs
Wed Sep 21 04:25:05 2005 UTC (6 years, 4 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.38: preferred, colored
Changes since revision 1.38: +1 -1 lines
Add a lot of error checks, based on the patches provided by Dan Lukes. Also fixes a memory leak reported by Andrew Turner. PR: bin/83476 Thanks to: Dan Lukes, Andrew Turner
Revision 1.38: download - view: text, markup, annotated - select for diffs
Sat Sep 10 22:58:06 2005 UTC (6 years, 5 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +1 -1 lines
Style issue: Don't include <wchar.h> where it is not actually needed. (wchar_t is defined in stddef.h, and only two files need more than that.) Portability: Since the wchar requirements are really quite modest, it's easy to define basic replacements for wcslen, wcscmp, wcscpy, etc, for use on systems that lack <wchar.h>. In particular, this allows libarchive to be used on older OpenBSD systems.
Revision 1.36.2.1: download - view: text, markup, annotated - select for diffs
Fri Jul 22 17:29:03 2005 UTC (6 years, 6 months ago) by kensmith
Branches: RELENG_6
CVS tags: RELENG_6_1_BP, RELENG_6_1_0_RELEASE, RELENG_6_1, RELENG_6_0_BP, RELENG_6_0_0_RELEASE, RELENG_6_0
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +1 -1 lines
Insta-MFC of the shared library version bump. All shared libraries whose version has not already been bumped since RELENG_5 are being bumped. Revisions of files being MFC-ed: > Path Revision > src/gnu/lib/libdialog/Makefile 1.43 > src/gnu/lib/libg2c/Makefile 1.16 > src/gnu/lib/libobjc/Makefile 1.27 > src/gnu/lib/libreadline/Makefile.inc 1.12 > src/gnu/lib/libregex/Makefile 1.32 > src/gnu/lib/libstdc++/Makefile 1.56 > src/kerberos5/lib/Makefile.inc 1.7 > src/lib/Makefile.inc 1.3 > src/lib/libalias/Makefile 1.31 > src/lib/libarchive/Makefile 1.37 > src/lib/libbegemot/Makefile 1.3 > src/lib/libbluetooth/Makefile 1.2 > src/lib/libbsnmp/Makefile.inc 1.6 > src/lib/libbz2/Makefile 1.6 > src/lib/libc_r/Makefile 1.42 > src/lib/libcrypt/Makefile 1.36 > src/lib/libdevstat/Makefile 1.15 > src/lib/libdevstat/devstat.h 1.11 > src/lib/libedit/Makefile 1.29 > src/lib/libexpat/Makefile 1.5 > src/lib/libfetch/Makefile 1.45 > src/lib/libftpio/Makefile 1.14 > src/lib/libgpib/Makefile 1.2 > src/lib/libipsec/Makefile 1.17 > src/lib/libkiconv/Makefile 1.3 > src/lib/libmagic/Makefile 1.7 > src/lib/libmp/Makefile 1.10 > src/lib/libncp/Makefile 1.6 > src/lib/libncurses/Makefile 1.79 > src/lib/libnetgraph/Makefile 1.11 > src/lib/libngatm/Makefile 1.6 > src/lib/libopie/Makefile 1.21 > src/lib/libpam/Makefile.inc 1.17 > src/lib/libpthread/Makefile 1.54 > src/lib/libradius/Makefile 1.12 > src/lib/libsdp/Makefile 1.4 > src/lib/libsmb/Makefile 1.8 > src/lib/libtacplus/Makefile 1.7 > src/lib/libthr/Makefile 1.14 > src/lib/libthread_db/Makefile 1.6 > src/lib/libugidfw/Makefile 1.7 > src/lib/libusbhid/Makefile 1.10 > src/lib/libutil/Makefile 1.57 > src/lib/libvgl/Makefile 1.11 > src/lib/libwrap/Makefile 1.17 > src/lib/libypclnt/Makefile 1.13 > src/lib/msun/Makefile 1.72 > src/secure/lib/libcrypto/Makefile 1.74 > src/secure/lib/libssh/Makefile 1.35 > src/secure/lib/libssl/Makefile 1.22 > src/usr.sbin/bsnmpd/modules/Makefile.inc 1.10 Reviewed by: ru Approved by: re (scottl)
Revision 1.37: download - view: text, markup, annotated - select for diffs
Fri Jul 22 17:18:59 2005 UTC (6 years, 6 months ago) by kensmith
Branches: MAIN
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +1 -1 lines
Bump the shared library version number of all libraries that have not been bumped since RELENG_5. Reviewed by: ru Approved by: re (not needed for commit check but in principle...)
Revision 1.36: download - view: text, markup, annotated - select for diffs
Sat Jun 4 22:30:36 2005 UTC (6 years, 8 months ago) by kientzle
Branches: MAIN
CVS tags: RELENG_6_BP
Branch point for: RELENG_6
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +1 -1 lines
Minor clean up for flags restoration: Use fchflags/lchflags when available, stub out flags restore on platforms that don't support it, update autoconf to probe for fchflags and lchflags support.
Revision 1.35: download - view: text, markup, annotated - select for diffs
Sat May 21 19:45:56 2005 UTC (6 years, 8 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +1 -1 lines
Start to address the race issue between restoring a file's contents and restoring the metadata. In particular, the metadata-restore functions now all accept a file descriptor and a pathname. If the file descriptor is set and the platform supports the appropriate syscall, restore the metadata through the file descriptor. Otherwise, restore it through the pathname. This is complicated by varying syscall support (FreeBSD has an fchmod(2) but no fchflags(2), for example) and because non-file entries don't have an fd to use in restoring attributes (for example, mknod(2) doesn't return a file handle). MFC after: 14 days
Revision 1.20.2.5: download - view: text, markup, annotated - select for diffs
Mon May 16 04:37:59 2005 UTC (6 years, 8 months ago) by kientzle
Branches: RELENG_5
Diff to: previous 1.20.2.4: preferred, colored; branchpoint 1.20: preferred, colored
Changes since revision 1.20.2.4: +3 -2 lines
MFC several libarchive bugfixes:
* "make distfile" uses correct automake/autoconf commands
* Rewrite path shortening to avoid crash on certain paths
between 245 and 255 characters long
* Fix broken ACL configuration on FreeBSD 4 and Linux
* Fix GNU tar long symlink handling
Revision 1.20.2.4: download - view: text, markup, annotated - select for diffs
Mon May 16 02:54:04 2005 UTC (6 years, 8 months ago) by kientzle
Branches: RELENG_5
Diff to: previous 1.20.2.3: preferred, colored; branchpoint 1.20: preferred, colored
Changes since revision 1.20.2.3: +1 -1 lines
MFC Makefile 1.32, archive_entry.c 1.25, archive_entry.h 1.13, archive_read_extract.c 1.38 Support extracting very long pathnames.
Revision 1.34: download - view: text, markup, annotated - select for diffs
Sat Apr 23 17:56:34 2005 UTC (6 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +3 -2 lines
Fix broken ACL configuration on FreeBSD 4 and Linux. Thanks to: Greg Lewis, Juergen Lock, Jaakko Heinonen for reporting and testing
Revision 1.33: download - view: text, markup, annotated - select for diffs
Sun Apr 17 17:48:50 2005 UTC (6 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +2 -2 lines
Update "make distfile" to use newest automake/autoconf from ports. Thanks to: Juergen Lock
Revision 1.32: download - view: text, markup, annotated - select for diffs
Tue Mar 29 05:24:08 2005 UTC (6 years, 10 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +1 -1 lines
Clean up the support for extracting very long pathnames.
Revision 1.31: download - view: text, markup, annotated - select for diffs
Sun Mar 13 02:53:42 2005 UTC (6 years, 11 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +1 -1 lines
Support extracting entries with pathnames longer than PATH_MAX. In testing, I've archived and restored dir trees with ~1MB pathnames. Most formats, of course, have much smaller limits.
Revision 1.20.2.3: download - view: text, markup, annotated - select for diffs
Fri Feb 25 05:10:23 2005 UTC (6 years, 11 months ago) by kientzle
Branches: RELENG_5
CVS tags: RELENG_5_4_BP, RELENG_5_4_0_RELEASE, RELENG_5_4
Diff to: previous 1.20.2.2: preferred, colored; branchpoint 1.20: preferred, colored
Changes since revision 1.20.2.2: +5 -5 lines
MFC: Sync libarchive with -CURRENT. This brings a number of new features (iso9660 and ZIP support), some important bug fixes and a number of documentation enhancements. All in time for 5.4. ;-)
Revision 1.30: download - view: text, markup, annotated - select for diffs
Sun Feb 13 23:29:54 2005 UTC (6 years, 11 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +1 -1 lines
Fix a buffer overflow in the "none" decompression handler that occurred with large read-ahead requests. This only affected formats that incorrectly make large requests (ZIP did this until recently) or with block sizes over 32k.
Revision 1.29: download - view: text, markup, annotated - select for diffs
Tue Jan 25 06:07:28 2005 UTC (7 years ago) by kientzle
Branches: MAIN
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +3 -1 lines
Basic support for ZIP archives. Only supports "deflate" and "none" compression for now. Also, add a few clarifications to the archive_read.3 manpage as requested by William Dean DeVries.
Revision 1.28: download - view: text, markup, annotated - select for diffs
Sat Jan 8 19:51:04 2005 UTC (7 years, 1 month ago) by kientzle
Branches: MAIN
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +1 -0 lines
Documentation improvements. In particular, expand and clarify the description of the client callback functions and how they should handle errors. Thanks to: Antony Dovgal
Revision 1.27: download - view: text, markup, annotated - select for diffs
Sun Jan 2 05:21:15 2005 UTC (7 years, 1 month ago) by kientzle
Branches: MAIN
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +2 -1 lines
First cut support for extracting from ISO9660 disk images. This seems to be able to extract a TOC and extract files from the couple of ISO images I've tested it with. Treat this as experimental proof-of-concept code for the moment. There are still a bunch of debug messages (there are a few oddities in ISO9660 that I haven't yet figured out how to handle), a lot of bugs to be addressed (this code leaks memory very badly), and a lot of missing features (no Rockridge support, in particular). I'd appreciate feedback from anyone who understands ISO9660 format better than I do. ;-) Suggested by: Robert Watson
Revision 1.20.2.2: download - view: text, markup, annotated - select for diffs
Wed Dec 22 00:01:55 2004 UTC (7 years, 1 month ago) by kientzle
Branches: RELENG_5
Diff to: previous 1.20.2.1: preferred, colored; branchpoint 1.20: preferred, colored
Changes since revision 1.20.2.1: +3 -2 lines
MFC: Synchronize libarchive with -current.
Among other fixes:
* Corrected handling of write errors,
use consistent error return values throughout.
* Correct assembly/disassembly of major/minor device
numbers so that very large minor numbers don't
result in incorrect major numbers.
* Allow tar format to read a non-existent file.
(It will be treated as empty.) This allows
bsdtar -r/-u to work with empty files.
* Update some comments/documentation, prune out
some dead code, other minor changes.
Revision 1.26: download - view: text, markup, annotated - select for diffs
Fri Nov 5 05:38:15 2004 UTC (7 years, 3 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +3 -2 lines
Makefile tweaks: * Update Version * Add a missing MLINK * Fix 'distfile' target so it works from a clean checkout
Revision 1.25: download - view: text, markup, annotated - select for diffs
Fri Nov 5 05:29:36 2004 UTC (7 years, 3 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +1 -1 lines
Revert 1.24: Brain glitch. <sigh>
Revision 1.24: download - view: text, markup, annotated - select for diffs
Fri Nov 5 05:23:18 2004 UTC (7 years, 3 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +1 -1 lines
archive.h gets built in ${.OBJDIR}
Revision 1.23: download - view: text, markup, annotated - select for diffs
Mon Oct 11 22:04:05 2004 UTC (7 years, 4 months ago) by obrien
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +0 -4 lines
Build as a shared lib again. Discussed with: kientzle
Revision 1.20.2.1: download - view: text, markup, annotated - select for diffs
Thu Sep 9 05:42:22 2004 UTC (7 years, 5 months ago) by kientzle
Branches: RELENG_5
CVS tags: RELENG_5_3_BP, RELENG_5_3_0_RELEASE, RELENG_5_3
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +11 -17 lines
MFC: Correct the handling of the dynamically-generated .h file Approved by: re (Ken Smith)
Revision 1.22: download - view: text, markup, annotated - select for diffs
Wed Sep 1 05:07:17 2004 UTC (7 years, 5 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +0 -0 lines
Forced commit to remind me to... MFC after: 3 days
Revision 1.21: download - view: text, markup, annotated - select for diffs
Wed Sep 1 05:06:42 2004 UTC (7 years, 5 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +11 -17 lines
Per Ruslan, bsd.lib.mk already has support for dynamically-generated .h files. This simplifies the Makefile here a bit and makes it behave better in a couple of situations. While I'm here, clean up some comments and try to improve the organization a bit. Thanks to: Ruslan Ermilov (The Marvelous Makefile Guru)
Revision 1.20: download - view: text, markup, annotated - select for diffs
Sat Aug 14 03:45:45 2004 UTC (7 years, 5 months ago) by kientzle
Branches: MAIN
CVS tags: RELENG_5_BP
Branch point for: RELENG_5
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +1 -1 lines
Eliminate reliance on non-portable <err.h> by implementing a very simple errx() function. Improve behavior when bzlib/zlib are missing by detecting and issuing an error message on attempts to read gzip/bzip2 compressed archives.
Revision 1.19: download - view: text, markup, annotated - select for diffs
Sat Aug 7 19:22:50 2004 UTC (7 years, 6 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +5 -4 lines
Split archive_{read,write}_finish into separate "close" (finish the archive
and close it) and "finish" (destroy the object) functions. For backwards
compat and simplicity, have "finish" invoke "close" transparently if needed.
This allows clients to close the archive and check end-of-operation
statistics before destroying the object.
Revision 1.18: download - view: text, markup, annotated - select for diffs
Sat Aug 7 06:38:40 2004 UTC (7 years, 6 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +2 -2 lines
Fix the calculation of the most negative int64_t value, which is used on systems that lack C99 headers (such as FreeBSD 4).
Revision 1.17: download - view: text, markup, annotated - select for diffs
Sat Aug 7 03:09:28 2004 UTC (7 years, 6 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +217 -1 lines
libarchive now has two complete build systems. The usual "Makefile" is present for FreeBSD. If you "make distfile" on FreeBSD, you will soon have a tar.gz file suitable for deploying to other systems (complete with the expected "configure" script, etc). This latter relies (at least for now) on the GNU auto??? tools. (I like autoconf okay, but someday I hope to write a custom Makefile.in and dispense with automake, which is somewhat odious.) As part of this, I've cleaned up some of the conditional compilation options, added make-foo to construct archive.h dynamically (it now contains some version constants), and added some useful informational files.
Revision 1.16: download - view: text, markup, annotated - select for diffs
Sun Aug 1 19:30:56 2004 UTC (7 years, 6 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +1 -159 lines
For the "portable" distribution, the configure script will overwrite "Makefile," so I'm moving all the FreeBSD build machinery to "Makefile.freebsd", with the default "Makefile" containing a single include.
Revision 1.15: download - view: text, markup, annotated - select for diffs
Mon Jul 26 02:54:42 2004 UTC (7 years, 6 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +1 -1 lines
When writing "pax" format, readers are supposed to ignore fields
in the regular ustar header that are overridden by the pax
extended attributes. As a result, it makes perfect sense to
use numeric extensions in the regular ustar header so that readers
that don't understand pax extensions but do understand some other
extensions can still get useful information out of it.
This is especially important for filesizes, as the failure to
read a file size correctly can get the reader out of sync.
This commit introduces a "non-strict" option into the internal
function to format a ustar header. In non-strict mode, the formatter
will use longer octal values (overwriting terminators) or binary
("base-256") values as needed to ensure that large file sizes,
negative mtimes, etc, have the correct values stored in the regular
ustar header.
Revision 1.14: download - view: text, markup, annotated - select for diffs
Sat Jul 24 20:45:04 2004 UTC (7 years, 6 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +3 -0 lines
Define the PACKAGE_NAME and PACKAGE_VERSION macros.
Revision 1.13: download - view: text, markup, annotated - select for diffs
Sun Jun 27 23:16:42 2004 UTC (7 years, 7 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +21 -4 lines
Add two new convenience functions to query the uid/gid from an archive_entry. Update the Makefile MLINKS and manpage to bring it up-to-date with the current status of archive_entry. At least the manpage actually lists all of the functions now, even if it doesn't really yet explain them all.
Revision 1.12: download - view: text, markup, annotated - select for diffs
Wed Jun 2 08:16:21 2004 UTC (7 years, 8 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +3 -2 lines
Add MLINKS for new API functions.
Revision 1.11: download - view: text, markup, annotated - select for diffs
Thu May 27 23:57:45 2004 UTC (7 years, 8 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +3 -1 lines
Connect libarchive decompress support to the build. Also, add it to archive_read_support_compression_all() so that typical clients get it pulled in by default.
Revision 1.10: download - view: text, markup, annotated - select for diffs
Fri May 14 13:31:19 2004 UTC (7 years, 8 months ago) by cognet
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +4 -0 lines
Use WARNS?=3 for these in the arm case for now, due to toolchain issues.
Revision 1.9: download - view: text, markup, annotated - select for diffs
Thu May 13 06:04:21 2004 UTC (7 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +1 -0 lines
Add MLINK for newly-added archive_read_extract_set_progress_callback(3).
Revision 1.8: download - view: text, markup, annotated - select for diffs
Wed Apr 28 04:34:07 2004 UTC (7 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +1 -0 lines
Add the libarchive-formats.5 manpage. This summarizes the various archive formats supported by libarchive, with some information about the relative strengths and weaknesses of each format and notes about issues with libarchive's support for those formats. This page should make it unnecessary to list all of the libarchive formats in the manpage of each program that uses libarchive. Such programs can simply refer to libarchive-formats(5).
Revision 1.7: download - view: text, markup, annotated - select for diffs
Mon Apr 26 23:37:54 2004 UTC (7 years, 9 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +13 -1 lines
Update file flag handling. The new fflags support in archive_entry supports Linux and FreeBSD file flags and is a bit more gracious about unrecognized flag names than strtofflags(3). This involves some minor API breakage. The default tar format ("restricted pax") now enables pax extensions when archiving files that have flags. In particular, copying dir heirarchies with 'bsdtar cf - -C src . | bsdtar xpf - -C dest' now preserves file flags. (Note the "p" on extract!) While I'm here, fill in some additional explanation in the archive_entry.3 manpage, fill in some missing MLINKS, mark some overlooked internal functions 'static', and make a few minor style fixes.
Revision 1.6: download - view: text, markup, annotated - select for diffs
Mon Apr 12 01:16:16 2004 UTC (7 years, 10 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +72 -83 lines
More work on ACLs: fix error in archive_entry's ACL parsing code, try to set ACLs even if fflag restore fails, first cut at reading Solaris tar ACLs Code improvement: merge gnu tar read support into main tar reader; this eliminates a lot of duplicate code and generalizes the tar reader to handle formats with GNU-like extensions. Style: Makefile cleanup, eliminate 'dmalloc' references, remove 'tartype' from archive_entry (this makes archive_entry more format-agnostic) Thanks to: David Magda for providing Solaris tar test files
Revision 1.5: download - view: text, markup, annotated - select for diffs
Mon Apr 5 21:12:29 2004 UTC (7 years, 10 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +8 -5 lines
Overhauled ACL support. This makes us compatible with 'star' ACL handling, though there's still a bit more work needed in this area. Added 'write_open_fd' and 'read_open_fd' to simplify, e.g., tar's u and r modes. Eliminated old 'write_open_file_position' as a bad idea. (It required closing/reopening files to do updates, which led to unpleasant implications.) Various other minor fixes, API tweaks, etc.
Revision 1.4: download - view: text, markup, annotated - select for diffs
Fri Mar 19 22:37:06 2004 UTC (7 years, 10 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +9 -3 lines
Many fixes: * Disabled shared-library building, as some API breakage is still likely. (I didn't realize it was turned on by default.) If you have an existing /usr/lib/libarchive.so.2, I recommend deleting it. * Pax interchange format now correctly stores and reads UTF8 for extended attributes. In particular, pax format can portably handle arbitrarily long pathnames containing arbitrary characters. * Library compiles cleanly at -O2, -O3, and WARNS=6 on all FreeBSD-CURRENT platforms. * Minor portability improvements inspired by Juergen Lock and Greg Lewis. (Less reliance on stdint.h, isolating of various portability-challenged constructs.) * archive_entry transparently converts multi-byte <-> wide character strings, allowing clients and format handlers to deal with either one, as appropriate. * Support for reading 'L' and 'K' entries in standard tar archives for star compatibility. * Recognize (but don't yet handle) ACL entries from Solaris tar. * Pushed format-specific data for format readers down into format-specific storage and out of library-global storage. This should make it easier to maintain individual formats without mucking with the core library management. * Documentation updates to track the above changes. * Updates to tar.5 to correct a few mistakes and add some additional information about GNU tar and Solaris tar formats. Notes: * The basic 'tar' reader is getting more general; there's not much point in keeping the 'gnutar' reader separate. Merging the two would lose a bunch of duplicate code. * The libc ACL support is looking increasingly inadequate for my needs here. I might need to assemble some fairly significant code for parsing and building ACLs. <sigh>
Revision 1.3: download - view: text, markup, annotated - select for diffs
Tue Mar 9 19:50:41 2004 UTC (7 years, 11 months ago) by kientzle
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +5 -5 lines
Many fixes.
Portability: Thanks to Juergen Lock, libarchive now compiles cleanly
on Linux. Along the way, I cleaned up a lot of error return codes and
reorganized some code to simplify conditional compilation of certain
sections.
Bug fixes:
* pax format now actually stores filenames that are 101-154
characters long.
* pax format now allows newline characters in extended attributes
(this fixes a long-standing bug in ACL handling)
* mtime/atime are now restored for directories
* directory list is now sorted prior to fix-up to permit
correct restore of non-writable dir heirarchies
Revision 1.2: download - view: text, markup, annotated - select for diffs
Thu Feb 12 04:11:40 2004 UTC (8 years ago) by kientzle
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +3 -1 lines
libarchive itself is now completely clean at WARNS=10 on all architectures. Unfortunately, the stock zlib.h is not: line 885: 'err' parameter shadows global 'err' definition from <err.h> Back the WARNS level down to 3 to accomodate borked zlib.h.
Revision 1.1: download - view: text, markup, annotated - select for diffs
Mon Feb 9 23:22:53 2004 UTC (8 years ago) by kientzle
Branches: MAIN
Initial import of libarchive.
What it is:
A library for reading and writing various streaming archive
formats, especially tar and cpio. Being a library, it should
be easy to incorporate into pkg_* tools, sysinstall, and any
other place that needs to read or write such archives.
Features:
* Full automatic detection of both compression and archive format.
* Extensible internal architecture to make it easy to add new formats.
* Support for "pax interchange format," a new POSIX-standard tar format
that eliminates essentially all of the restrictions of historic formats.
* BSD license
Thanks to: jkh for pushing me to start this work, gordon for
encouraging me to commit it, bde for answering endless style
questions, and many others for feedback and encouragement.
Status: Pretty good overall, though there are still a few rough edges and
the library could always use more testing. Feedback eagerly solicited.
