123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- ARCHIVE_READ_EXTRACT(3) manual page
- == NAME ==
- '''archive_read_extract''',
- '''archive_read_extract2''',
- '''archive_read_extract_set_progress_callback'''
- - functions for reading streaming archives
- == LIBRARY ==
- Streaming Archive Library (libarchive, -larchive)
- == SYNOPSIS ==
- '''<nowiki>#include <archive.h></nowiki>'''
- <br>
- ''int''
- <br>
- '''archive_read_extract'''(''struct archive *'', ''struct archive_entry *'', ''int flags'');
- <br>
- ''int''
- <br>
- '''archive_read_extract2'''(''struct archive *src'', ''struct archive_entry *'', ''struct archive *dest'');
- <br>
- ''void''
- <br>
- '''archive_read_extract_set_progress_callback'''(''struct archive *'', ''void (*func)(void *)'', ''void *user_data'');
- == DESCRIPTION ==
- <dl>
- <dt>'''archive_read_extract'''(), '''archive_read_extract_set_skip_file'''()</dt><dd>
- A convenience function that wraps the corresponding
- [[ManPageArchiveWriteDisk3]]
- interfaces.
- The first call to
- '''archive_read_extract'''()
- creates a restore object using
- [[ManPageArchiveWriteDiskNew3]]
- and
- [[ManPageArchiveWriteDiskSetStandardLookup3]],
- then transparently invokes
- [[ManPageArchiveWriteDiskSetOptions3]],
- [[ManPageArchiveWriteHeader3]],
- [[ManPageArchiveWriteData3]],
- and
- [[ManPageArchiveWriteFinishEntry3]]
- to create the entry on disk and copy data into it.
- The
- ''flags''
- argument is passed unmodified to
- [[ManPageArchiveWriteDiskSetOptions3]].
- </dd><dt>'''archive_read_extract2'''()</dt><dd>
- This is another version of
- '''archive_read_extract'''()
- that allows you to provide your own restore object.
- In particular, this allows you to override the standard lookup functions
- using
- [[ManPageArchiveWriteDiskSetGroupLookup3]],
- and
- [[ManPageArchiveWriteDiskSetUserLookup3]].
- Note that
- '''archive_read_extract2'''()
- does not accept a
- ''flags''
- argument; you should use
- '''archive_write_disk_set_options'''()
- to set the restore options yourself.
- </dd><dt>'''archive_read_extract_set_progress_callback'''()</dt><dd>
- Sets a pointer to a user-defined callback that can be used
- for updating progress displays during extraction.
- The progress function will be invoked during the extraction of large
- regular files.
- The progress function will be invoked with the pointer provided to this call.
- Generally, the data pointed to should include a reference to the archive
- object and the archive_entry object so that various statistics
- can be retrieved for the progress display.
- </dd></dl>
- == RETURN VALUES ==
- Most functions return zero on success, non-zero on error.
- The possible return codes include:
- '''ARCHIVE_OK'''
- (the operation succeeded),
- '''ARCHIVE_WARN'''
- (the operation succeeded but a non-critical error was encountered),
- '''ARCHIVE_EOF'''
- (end-of-archive was encountered),
- '''ARCHIVE_RETRY'''
- (the operation failed but can be retried),
- and
- '''ARCHIVE_FATAL'''
- (there was a fatal error; the archive should be closed immediately).
- == ERRORS ==
- Detailed error codes and textual descriptions are available from the
- '''archive_errno'''()
- and
- '''archive_error_string'''()
- functions.
- == SEE ALSO ==
- [[ManPageBsdtar1]],
- [[ManPageArchiveRead3]],
- [[ManPageArchiveReadData3]],
- [[ManPageArchiveReadFilter3]],
- [[ManPageArchiveReadFormat3]],
- [[ManPageArchiveReadOpen3]],
- [[ManPageArchiveReadSetOptions3]],
- [[ManPageArchiveUtil3]],
- [[ManPageLibarchive3]],
- [[ManPageTar5]]
|