<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/lib/libarchive/archive_string.h, branch stable/6</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=stable%2F6</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=stable%2F6'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2008-08-13T04:29:05Z</updated>
<entry>
<title>MFC r179791-179792,179800,180269,180271: Several minor portability tweaks:</title>
<updated>2008-08-13T04:29:05Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2008-08-13T04:29:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=0cea62b4727f6dc946f3a0aebded84aab8c43184'/>
<id>urn:sha1:0cea62b4727f6dc946f3a0aebded84aab8c43184</id>
<content type='text'>
</content>
</entry>
<entry>
<title>MFC r179321,179349,179790,179797,179801-179802</title>
<updated>2008-08-13T03:27:33Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2008-08-13T03:27:33Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=3e6d289319a679c846ff757e9047d8758c060075'/>
<id>urn:sha1:3e6d289319a679c846ff757e9047d8758c060075</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>MFC r177185,r177186,r177187:  Rework the versioning interface again.</title>
<updated>2008-08-11T02:31:07Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2008-08-11T02:31:07Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=19553f901e7571e0676838b286c489caccb646cc'/>
<id>urn:sha1:19553f901e7571e0676838b286c489caccb646cc</id>
<content type='text'>
The new interface has fewer elements and seems to be easier to use.
Of course, I'm retaining the old interface until libarchive 3.x.
</content>
</entry>
<entry>
<title>MFC libarchive 1.9.</title>
<updated>2007-07-05T01:56:41Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2007-07-05T01:56:41Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=61c4e41c761f9f2dd339ae1af0266fd243fd644e'/>
<id>urn:sha1:61c4e41c761f9f2dd339ae1af0266fd243fd644e</id>
<content type='text'>
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. ;-)
</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-test2/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-test2/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>Add __archive_strappend_int to format a decimal</title>
<updated>2004-12-22T06:12:40Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2004-12-22T06:12:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=74199b07099e4deb80d1bf4295c002c43168f9fc'/>
<id>urn:sha1:74199b07099e4deb80d1bf4295c002c43168f9fc</id>
<content type='text'>
number into a variable-length archive_string.
</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-test2/commit/?id=88507deac27c3ee1293b8a380f632edb61410bb8'/>
<id>urn:sha1:88507deac27c3ee1293b8a380f632edb61410bb8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Consistify:  #define gets 1 tab character afterwards</title>
<updated>2004-05-03T01:40:34Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2004-05-03T01:40:34Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=71125f3eb4223cadd445705a72c178eab82a9858'/>
<id>urn:sha1:71125f3eb4223cadd445705a72c178eab82a9858</id>
<content type='text'>
Pointed out by: Simon Nielsen
</content>
</entry>
<entry>
<title>Many fixes:</title>
<updated>2004-03-19T22:37:06Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2004-03-19T22:37:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=44a3d3420660428261dd253c41ec4bec245db4fc'/>
<id>urn:sha1:44a3d3420660428261dd253c41ec4bec245db4fc</id>
<content type='text'>
* 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 &lt;-&gt; 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. &lt;sigh&gt;
</content>
</entry>
</feed>
