summaryrefslogtreecommitdiffstats
path: root/lib/libarchive/archive_read.3
Commit message (Collapse)AuthorAgeFilesLines
* Fill in a missing 'e'kientzle2007-09-191-1/+1
| | | | | | Thanks to: Kai Wang, for pointing this out Approved by: re (bmah) MFC after: 3 days
* libarchive 2.2.3kientzle2007-05-291-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * "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.
* Clarification: Point people to archive_read_data(), whichkientzle2007-04-071-1/+4
| | | | should be used instead of archive_read_data_into_buffer().
* Move archive_read_data_into_buffer into archive_read.c, simplify itscperciva2007-04-051-4/+7
| | | | | | | | 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
* libarchive 2.0kientzle2007-03-031-71/+26
| | | | | | | | | | | | | | | | | | | * 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.
* Add support for a new archive format "empty" that reads empty files.kientzle2007-02-011-1/+15
|
* Fix the copyright notice; it was always intended to bekientzle2007-01-091-1/+1
| | | | | | | | | 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
* Change the client skipper API to use off_t instead of size_t/ssize_t; butcperciva2007-01-051-0/+5
| | | | | | wrap this within #if/#else/#endif so that it will only take effect once ARCHIVE_API_VERSION is increased (which should happen on HEAD some time between now and when RELENG_7 is branched).
* Write-blocking cleanup, largely thanks to Colin Percival (cperciva@).kientzle2006-11-261-8/+0
| | | | | | | | | | | | | | | | | | * 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
* Document the new _open_FILE() and _open_memory() interfaces.kientzle2006-11-241-2/+23
| | | | PR: bin/86742
* Officially rename archive_{read,write}_open_file() tokientzle2006-11-201-3/+6
| | | | | | | | | 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.
* Some minor corrections:kientzle2006-09-051-12/+39
| | | | | | | * 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
* Fix prototypes.ru2005-11-241-2/+2
|
* Correct the documentation for archive_read_data_into_buffer()kientzle2005-09-201-1/+1
| | | | | | Thanks to: Marcus Alves Grando PR: docs/85854 MFC after: 7 days
* Fix all the spelling mistakes I could find in the man pages for wordskeramida2005-07-311-3/+3
| | | | | | | | that have at least 3 characters. MFC after: 1 week Thanks to: Music band ``Chingon'' for keeping me company while searching for these.
* Correct return values in myopen() and myclose() in Example code.kientzle2005-05-211-2/+2
| | | | | | Bug: docs/79318 Thanks to: Derek Tattersall MFC after: 7 days
* Expand *n't contractions.ru2005-02-131-1/+1
|
* Update the format descriptions to include ISO9660 and ZIP support.kientzle2005-02-121-2/+0
| | | | Also remove some unnecessary blank lines from archive_read.3.
* Basic support for ZIP archives.kientzle2005-01-251-5/+31
| | | | | | | 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.
* Bring some file descriptions in line with reality.kientzle2005-01-121-6/+31
| | | | | Also, add some hints to help people understand which functions are most appropriate for typical uses.
* Scheduled mdoc(7) sweep.ru2005-01-111-1/+1
|
* libarchive does much more than just tar ;-)kientzle2005-01-101-1/+1
|
* Documentation improvements. In particular,kientzle2005-01-081-19/+59
| | | | | | | expand and clarify the description of the client callback functions and how they should handle errors. Thanks to: Antony Dovgal
* Correctly document the order of argumentskientzle2005-01-081-1/+1
| | | | | | to archive_read_open and archive_write_open. Thanks to: Antony Dovgal
* Split archive_{read,write}_finish into separate "close" (finish the archivekientzle2004-08-071-2/+8
| | | | | | | 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.
* Fixed cross-references in SEE ALSO.ru2004-07-041-1/+1
| | | | Emininated double space and hard sentence breaks.
* Mechanically kill hard sentence breaks.ru2004-07-021-1/+2
|
* Read gtar-style sparse archives.kientzle2004-06-271-3/+4
| | | | | | | This change also pointed out one API deficiency: the archive_read_data_into_XXX functions were originally defined to return the total bytes read. This is, of course, ambiguous when dealing with non-contiguous files. Change it to just return a status value.
* Correct some spelling errors.kientzle2004-06-081-6/+6
|
* Refactor read_data:kientzle2004-06-021-6/+21
| | | | | | | | | | | * New read_data_block is both sparse-file aware and uses zero-copy semantics * Push read_data_block down into specific formats (opens door to various encoded entry bodies, such as zip or gtar -S) * Reimplement read_data, read_data_skip, read_data_into_fd in terms of new read_data_block. * Update documentation It's unfortunate that I couldn't just call the new interface archive_read_data, but didn't want to upset the API that much.
* Document support for reading .Z compressed archives.kientzle2004-05-271-12/+12
| | | | Correct a few other minor nits.
* Add hook for a client-provided progress callback to be invokedkientzle2004-05-131-0/+12
| | | | during lengthy extract operations.
* Overhauled ACL support. This makes us compatiblekientzle2004-04-051-0/+18
| | | | | | | | | | | | 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.
* Add ARCHIVE_EXTRACT_UNLINK option to permit clients tokientzle2004-03-061-0/+5
| | | | | control how archive_extract handles pre-existing files. (Not implemented yet, but documented.)
* Initial import of libarchive.kientzle2004-02-091-0/+346
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.
OpenPOWER on IntegriCloud