<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/lib/libarchive/archive_string_sprintf.c, branch release/6.3.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F6.3.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F6.3.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2007-07-19T14:31:52Z</updated>
<entry>
<title>MFC better error handling from archive_string_ensure()</title>
<updated>2007-07-19T14:31:52Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2007-07-19T14:31:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=4f59f943e21be96a94b28fd4e6b1499bbeb56086'/>
<id>urn:sha1:4f59f943e21be96a94b28fd4e6b1499bbeb56086</id>
<content type='text'>
failures.  Several key users of this function now simply
return ENOMEM to the caller instead of aborting the
program.
</content>
</entry>
<entry>
<title>MFC: synchronize libarchive with FreeBSD-CURRENT.  This includes</title>
<updated>2007-01-27T06:44:54Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2007-01-27T06:44:54Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=cb89eb833287d8e19d1252e8276f8c698d6af732'/>
<id>urn:sha1:cb89eb833287d8e19d1252e8276f8c698d6af732</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>Implement a custom print formatter (archive_string_vsprintf)</title>
<updated>2005-01-16T22:13:51Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2005-01-16T22:13:51Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c47a0d494c881078635f92b433d3e592e55ce811'/>
<id>urn:sha1:c47a0d494c881078635f92b433d3e592e55ce811</id>
<content type='text'>
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
</content>
</entry>
<entry>
<title>Remove the unused archive_string_sprintf() utility function.</title>
<updated>2004-11-05T05:32:04Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2004-11-05T05:32:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=88507deac27c3ee1293b8a380f632edb61410bb8'/>
<id>urn:sha1:88507deac27c3ee1293b8a380f632edb61410bb8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>It is not legal to re-use a va_list variable.  This caused</title>
<updated>2004-08-26T03:33:53Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2004-08-26T03:33:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c85db499ac3451cc7b8273cd87a2cd83f1b5c82e'/>
<id>urn:sha1:c85db499ac3451cc7b8273cd87a2cd83f1b5c82e</id>
<content type='text'>
a crash on amd64, in particular.

Thanks to: Sean McNeil
</content>
</entry>
<entry>
<title>Eliminate reliance on non-portable &lt;err.h&gt; by implementing a very</title>
<updated>2004-08-14T03:45:45Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2004-08-14T03:45:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=57b665990ad3baa0b0fc0611984b502b3f8f26d5'/>
<id>urn:sha1:57b665990ad3baa0b0fc0611984b502b3f8f26d5</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>More work on ACLs: fix error in archive_entry's ACL parsing code,</title>
<updated>2004-04-12T01:16:16Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2004-04-12T01:16:16Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=aee47dd7c8c398c64249c74e8ba592fd9369e26d'/>
<id>urn:sha1:aee47dd7c8c398c64249c74e8ba592fd9369e26d</id>
<content type='text'>
  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
</content>
</entry>
<entry>
<title>Many fixes.</title>
<updated>2004-03-09T19:50:41Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2004-03-09T19:50:41Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=df3c1316b07d107960eddb0873b86ed561163949'/>
<id>urn:sha1:df3c1316b07d107960eddb0873b86ed561163949</id>
<content type='text'>
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
</content>
</entry>
<entry>
<title>Initial import of libarchive.</title>
<updated>2004-02-09T23:22:54Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2004-02-09T23:22:54Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2710e4d1ef34d45be2425905dd5b4282d29600ef'/>
<id>urn:sha1:2710e4d1ef34d45be2425905dd5b4282d29600ef</id>
<content type='text'>
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.
</content>
</entry>
</feed>
