<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/lib/libarchive/archive_read_support_compression_program.c, branch release/8.1.0_cvs</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F8.1.0_cvs</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F8.1.0_cvs'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2010-07-17T05:41:01Z</updated>
<entry>
<title>Copy releng/8.1 to release/8.1.0 for 8.1-RELEASE.</title>
<updated>2010-07-17T05:41:01Z</updated>
<author>
<name>Ken Smith</name>
<email>kensmith@FreeBSD.org</email>
</author>
<published>2010-07-17T05:41:01Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=90d6fa76a8141fc596ad376ecd86a8a493836298'/>
<id>urn:sha1:90d6fa76a8141fc596ad376ecd86a8a493836298</id>
<content type='text'>
Approved by:	re (implicit)

This commit was manufactured to restore the state of the 8.1-RELEASE image.
</content>
</entry>
<entry>
<title>Merge from libarchive.googlecode.com r791, r879, r884, r948: Various</title>
<updated>2009-04-12T05:47:23Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2009-04-12T05:47:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=cc2a51aaf778c4e85b1677c35f59f88ddc0fd870'/>
<id>urn:sha1:cc2a51aaf778c4e85b1677c35f59f88ddc0fd870</id>
<content type='text'>
fixes to read_support_compression_program.  In particular, failure of
the external program is detected a lot earlier, which gives much more
reasonable error handling.
</content>
</entry>
<entry>
<title>Merge from libarchive.googlecode.com:  Mostly a bunch of</title>
<updated>2009-04-12T05:33:34Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2009-04-12T05:33:34Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=e2421f76676c33a8de3054504f3ecb9ca3d1ee75'/>
<id>urn:sha1:e2421f76676c33a8de3054504f3ecb9ca3d1ee75</id>
<content type='text'>
corrections to the Windows support to reconcile differences
between Visual Studio and Cygwin.  Includes parts of
revisions 757, 774, 787, 815, 817, 819, 820, 844, and 886.

Of particular note, r886 overhauled the UTF-8/Unicode conversions to
work correctly regardless of whether the local system uses 16-bit
or 32-bit wchar_t.  (I assume that systems with 16-bit wchar_t
use UTF-16 and those with 32-bit wchar_t use UCS-4.)  This revision
also added a preference for wcrtomb() (which is thread-safe) on
platforms that support it.
</content>
</entry>
<entry>
<title>Merge r550,584,587,609,647,674 from libarchive.googlecode.com:</title>
<updated>2009-03-07T02:47:04Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2009-03-07T02:47:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=de01c3b1eb13cee76fc0a11545d7bb90ea487047'/>
<id>urn:sha1:de01c3b1eb13cee76fc0a11545d7bb90ea487047</id>
<content type='text'>
Refactor the read_compression_program to add two new abilities:
 * Public API:  You can now include a signature string when you
   register a program; the program will run only on input that
   matches the signature string.
 * Internal API: You can use the init() function to instantiate
   an external program as part of a filter pipeline.  This
   can be used for graceful fallback (if zlib is unavailable, use
   external gzip instead) and to use external programs with
   bidders that are more sophisticated than a static signature check.
</content>
</entry>
<entry>
<title>Merge r491,493,500,507,510,530,543 from libarchive.googlecode.com:</title>
<updated>2009-03-06T05:58:56Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2009-03-06T05:58:56Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=634fb9dd4872ad89170b514d8c0bf9125bfa0d3e'/>
<id>urn:sha1:634fb9dd4872ad89170b514d8c0bf9125bfa0d3e</id>
<content type='text'>
This implements the new generic options framework that provides a way
to override format- and compression-specific parameters.
</content>
</entry>
<entry>
<title>Merge r398 from libarchive.googlecode.com: Check that bidder</title>
<updated>2009-03-06T04:22:34Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2009-03-06T04:22:34Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=74aced1051fd7b49111cde220c7d12a449ab53e5'/>
<id>urn:sha1:74aced1051fd7b49111cde220c7d12a449ab53e5</id>
<content type='text'>
object was allocated before we try to use it.
</content>
</entry>
<entry>
<title>Merge r364, r378, r379, r393, and r539 from libarchive.googlecode.com:</title>
<updated>2009-03-05T02:19:42Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2009-03-05T02:19:42Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=facbbae9f9c0085b9c8ccc26b5c42069f14eb5f1'/>
<id>urn:sha1:facbbae9f9c0085b9c8ccc26b5c42069f14eb5f1</id>
<content type='text'>
This is the last phase of the "big decompression refactor" that
puts a lazy reblocking layer between each pair of read filters.
I've also changed the terminology for this area---the two kinds
of objects are now called "read filters" and "read filter bidders"---and
moved ownership of these objects to the archive_read core.

This greatly simplifies implementing new read filters, which
can now use peek/consume I/O semantics both for bidding (arbitrary
look-ahead!) and for reading streams (look-ahead simplifies handling
concatenated streams, for instance).

The first merge here is the overhaul proper; the remainder are small
fixes to correct errors in the initial implementation.
</content>
</entry>
<entry>
<title>MfP4: Big read filter refactoring.</title>
<updated>2008-12-06T06:45:15Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2008-12-06T06:45:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=b1ff9c25b85752421491eb42f56c4cf65f451f98'/>
<id>urn:sha1:b1ff9c25b85752421491eb42f56c4cf65f451f98</id>
<content type='text'>
This is an attempt to eliminate a lot of redundant
code from the read ("decompression") filters by
changing them to juggle arbitrary-sized blocks
and consolidate reblocking code at a single point
in archive_read.c.

Along the way, I've changed the internal read/consume
API used by the format handlers to a slightly
different style originally suggested by des@.  It
does seem to simplify a lot of common cases.

The most dramatic change is, of course, to
archive_read_support_compression_none(), which
has just evaporated into a no-op as the blocking
code this used to hold has all been moved up
a level.

There's at least one more big round of refactoring
yet to come before the individual filters are as
straightforward as I think they should be...
</content>
</entry>
<entry>
<title>Windows compatibility:  The stub replacement for compression_program</title>
<updated>2008-09-12T03:53:54Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2008-09-12T03:53:54Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=6d35d9a6e9aacf7465613823d434f2336a371209'/>
<id>urn:sha1:6d35d9a6e9aacf7465613823d434f2336a371209</id>
<content type='text'>
(which always returns an error when invoked) needs its prototype.
</content>
</entry>
<entry>
<title>A number of minor corrections to the support for external compression</title>
<updated>2008-06-15T10:45:57Z</updated>
<author>
<name>Tim Kientzle</name>
<email>kientzle@FreeBSD.org</email>
</author>
<published>2008-06-15T10:45:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=936d273c3ae5d1589b5789392b3603bed46af91c'/>
<id>urn:sha1:936d273c3ae5d1589b5789392b3603bed46af91c</id>
<content type='text'>
programs:
  * Support platforms that have fork() but not vfork()
  * Don't write(), select(), or poll() against closed file descriptors
</content>
</entry>
</feed>
