| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
'RELENG_7_0_0_RELEASE'.
This commit was manufactured to restore the state of the 7.0-RELEASE image.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* "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.
Notes:
svn path=/head/; revision=170079
|
| |
|
|
|
|
|
| |
only on platforms that need them. FreeBSD doesn't.
Notes:
svn path=/head/; revision=168743
|
| |
|
|
|
|
|
|
|
| |
factor out the platform-specific configuration header a bit
more cleanly.
Suggested by: Joerg Sonnenberger
Notes:
svn path=/head/; revision=168648
|
| |
|
|
|
|
|
|
|
|
|
|
| |
a vanilla 2-clause BSD license, but somehow some confusing
extra verbage get copied from somewhere.
Also, update the copyright dates to 2007 for all of the files.
Prompted by: several questions about what those extra words really mean
Notes:
svn path=/head/; revision=165912
|
| |
|
|
| |
Notes:
svn path=/head/; revision=165874
|
| |
|
|
|
|
|
|
|
| |
config_freebsd.h. archive_platform.h decides which config file
to bring in and uses some of those selectors to define wrapper
macros and other compatibility glue.
Notes:
svn path=/head/; revision=165000
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Actually use the HAVE_<header>_H macros to conditionally include
system headers. They've been defined for a long time, but only
used in a few places. Now they're used pretty consistently
throughout.
* Fill in a lot of missing casts for conversions from void*.
Although Standard C doesn't require this, some people have been
trying to use C++ compilers with this code, and they do require it.
Bit-for-bit, the compiled object files are identical, except for
one assert() whose line number changed, so I'm pretty confident I
didn't break anything. ;-)
Notes:
svn path=/head/; revision=164142
|
| |
|
|
|
|
|
|
| |
part of a program to remove the non-FreeBSD autoconf/automake build
system for libarchive from the FreeBSD source tree.
Notes:
svn path=/head/; revision=156417
|
| |
|
|
|
|
|
|
|
| |
the configure script and substitute mktime() when necessary.
Thanks to: Darin Broady
Notes:
svn path=/head/; revision=152146
|
| |
|
|
| |
Notes:
svn path=/head/; revision=151251
|
| |
|
|
|
|
|
|
|
| |
lacks ACL_USER).
Thanks to: Marcus Geiger, Joe Esch, and Markus Slopianka
Notes:
svn path=/head/; revision=148932
|
| |
|
|
|
|
|
|
| |
available, stub out flags restore on platforms that don't support it,
update autoconf to probe for fchflags and lchflags support.
Notes:
svn path=/head/; revision=146980
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
Notes:
svn path=/head/; revision=146471
|
| |
|
|
|
|
|
| |
Thanks to: Greg Lewis, Juergen Lock, Jaakko Heinonen for reporting and testing
Notes:
svn path=/head/; revision=145455
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
for libarchive error messages. Mostly, this
avoids a portability headache related to
copying va_list arguments (some FreeBSD 5
platforms require va_copy; FreeBSD 4 doesn't
support va_copy at all). It also dramatically reduces the
size of libarchive for embedded applications:
a minimal "untar" program using libarchive can now be
under 64k statically linked (as opposed to ~100k
using library *printf() functions).
MFC after: 14 days
Notes:
svn path=/head/; revision=140362
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
Notes:
svn path=/head/; revision=133244
|
| |
|
|
| |
Notes:
svn path=/head/; revision=132618
|
| |
|
|
|
|
|
| |
it will work cleanly with autoconf.
Notes:
svn path=/head/; revision=132615
|
| |
|
|
|
|
|
|
|
|
|
| |
Thanks to: David O'Brien for pointing this out.
Also, add in a few additional portability tweaks and make a few
more things conditional on features (HAVE_XXXX macros) rather
than platform.
Notes:
svn path=/head/; revision=132604
|
| |
|
|
|
|
|
| |
Pointed out by: Simon Nielsen
Notes:
svn path=/head/; revision=128855
|
| |
|
|
|
|
|
|
|
| |
High-resolution mtime/ctime/atime is not POSIX-standard, so hide
set/get of high-resolution time fields behind easily-mutable macros.
That makes it easier to change how those fields are accessed.
Notes:
svn path=/head/; revision=128515
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Earlier versions of FreeBSD don't support ACLs.
Note that the ACL support code in archive_entry is standalone code and
unaffected by this. (In particular, it should be possible to
manipulate archives containing ACLs even if the ACLs cannot be
restored on the current system.)
Notes:
svn path=/head/; revision=128296
|
| |
|
|
|
|
|
| |
Linux.
Notes:
svn path=/head/; revision=128014
|
| |
|
|
| |
Notes:
svn path=/head/; revision=127295
|
| |
|
|
|
|
|
|
| |
Portability: Eliminate an accidental __unused, accomodate
systems with non-POSIX strerror_r
Notes:
svn path=/head/; revision=127244
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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>
Notes:
svn path=/head/; revision=127212
|
|
|
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
Notes:
svn path=/head/; revision=126782
|