diff options
author | joerg <joerg@pkgsrc.org> | 2008-05-25 19:41:18 +0000 |
---|---|---|
committer | joerg <joerg@pkgsrc.org> | 2008-05-25 19:41:18 +0000 |
commit | 02817a895bea75b65dbc718ef8a9845f64b4f53e (patch) | |
tree | 59b008076bf4fb6579b6176e2bf59f2c8a31694e /archivers/libarchive/files/doc/man | |
parent | 899ff7764531c3d365340a37ee193a4d38839bad (diff) | |
download | pkgsrc-02817a895bea75b65dbc718ef8a9845f64b4f53e.tar.gz |
Import libarchive-2.5.4b. Major changes:
- much improved mtree support
- fix a number of non-exploitable integer and buffer overflows
- bsdtar get -s and SIGINFO/SIGUSR1 support
- fix hardlink extraction bug where latter hardlinks would overwrite the
permissions of earlier entries even when they don't carry data
- fix bsdtar crashes on entries with empty filenames
Diffstat (limited to 'archivers/libarchive/files/doc/man')
-rw-r--r-- | archivers/libarchive/files/doc/man/archive_entry.3 | 30 | ||||
-rw-r--r-- | archivers/libarchive/files/doc/man/archive_read.3 | 37 | ||||
-rw-r--r-- | archivers/libarchive/files/doc/man/archive_write.3 | 13 | ||||
-rw-r--r-- | archivers/libarchive/files/doc/man/archive_write_disk.3 | 5 | ||||
-rw-r--r-- | archivers/libarchive/files/doc/man/bsdtar.1 | 63 | ||||
-rw-r--r-- | archivers/libarchive/files/doc/man/libarchive-formats.5 | 8 | ||||
-rw-r--r-- | archivers/libarchive/files/doc/man/mtree.5 | 9 |
7 files changed, 154 insertions, 11 deletions
diff --git a/archivers/libarchive/files/doc/man/archive_entry.3 b/archivers/libarchive/files/doc/man/archive_entry.3 index 02261c50cf6..994b4743c33 100644 --- a/archivers/libarchive/files/doc/man/archive_entry.3 +++ b/archivers/libarchive/files/doc/man/archive_entry.3 @@ -1,4 +1,4 @@ -.TH archive_entry 3 "December 15, 2003" "" +.TH archive_entry 3 "May 12, 2008" "" .SH NAME \fBarchive_entry_acl_add_entry\fP, \fBarchive_entry_acl_add_entry_w\fP, @@ -12,6 +12,7 @@ \fBarchive_entry_atime_nsec\fP, \fBarchive_entry_clear\fP, \fBarchive_entry_clone\fP, +\fBarchive_entry_copy_fflags_text\fP, \fBarchive_entry_copy_fflags_text_w\fP, \fBarchive_entry_copy_gname\fP, \fBarchive_entry_copy_gname_w\fP, @@ -20,6 +21,7 @@ \fBarchive_entry_copy_link\fP, \fBarchive_entry_copy_link_w\fP, \fBarchive_entry_copy_pathname_w\fP, +\fBarchive_entry_copy_sourcepath\fP, \fBarchive_entry_copy_stat\fP, \fBarchive_entry_copy_symlink\fP, \fBarchive_entry_copy_symlink_w\fP, @@ -67,6 +69,7 @@ \fBarchive_entry_set_uid\fP, \fBarchive_entry_set_uname\fP, \fBarchive_entry_size\fP, +\fBarchive_entry_sourcepath\fP, \fBarchive_entry_stat\fP, \fBarchive_entry_symlink\fP, \fBarchive_entry_uid\fP, @@ -165,6 +168,12 @@ Fc \fBarchive_entry_clone\fP .hy ("struct archive_entry *"); +\fIconst char * *\fP +.RE +.nh +\fBarchive_entry_copy_fflags_text_w\fP +.hy +("struct archive_entry *" "const char *"); \fIconst wchar_t *\fP .RE .nh @@ -198,6 +207,12 @@ Fc \fIvoid\fP .RE .nh +\fBarchive_entry_copy_sourcepath\fP +.hy +("struct archive_entry *" "const char *"); +\fIvoid\fP +.RE +.nh \fBarchive_entry_copy_pathname_w\fP .hy ("struct archive_entry *" "const wchar_t *"); @@ -485,6 +500,12 @@ Fc \fBarchive_entry_size\fP .hy ("struct archive_entry *"); +\fIconst char *\fP +.RE +.nh +\fBarchive_entry_sourcepath\fP +.hy +("struct archive_entry *"); \fIconst struct stat *\fP .RE .nh @@ -627,10 +648,15 @@ will be ignored. The canonical text format is a comma-separated list of flag names. The .nh +\fBarchive_entry_copy_fflags_text\fP +.hy +(); +and +.nh \fBarchive_entry_copy_fflags_text_w\fP .hy (); -function parses the provided text and sets the internal bitmap values. +functions parse the provided text and sets the internal bitmap values. This is a platform-specific operation; names that are not meaningful on the current platform will be ignored. The function returns a pointer to the start of the first name that was not diff --git a/archivers/libarchive/files/doc/man/archive_read.3 b/archivers/libarchive/files/doc/man/archive_read.3 index 9548c5403a1..91908e824ec 100644 --- a/archivers/libarchive/files/doc/man/archive_read.3 +++ b/archivers/libarchive/files/doc/man/archive_read.3 @@ -26,6 +26,7 @@ \fBarchive_read_data_into_buffer\fP, \fBarchive_read_data_into_fd\fP, \fBarchive_read_extract\fP, +\fBarchive_read_extract2\fP, \fBarchive_read_extract_set_progress_callback\fP, \fBarchive_read_close\fP, \fBarchive_read_finish\fP @@ -200,6 +201,13 @@ Fa "struct archive *" Fa "struct archive_entry *" Fa "int flags" Fc +\fIint\fP +.RE +Fo archive_read_extract2 +Fa "struct archive *src" +Fa "struct archive_entry *" +Fa "struct archive *dest" +Fc \fIvoid\fP .RE Fo archive_read_extract_set_progress_callback @@ -540,6 +548,35 @@ argument is passed unmodified to \fBarchive_write_disk_set_options\fP(3). .TP .nh +\fBarchive_read_extract2\fP +.hy +(); +This is another version of +.nh +\fBarchive_read_extract\fP +.hy +(); +that allows you to provide your own restore object. +In particular, this allows you to override the standard lookup functions +using +\fBarchive_write_disk_set_group_lookup\fP(3), +and +\fBarchive_write_disk_set_user_lookup\fP(3). +Note that +.nh +\fBarchive_read_extract2\fP +.hy +(); +does not accept a +\fIflags\fP +argument; you should use +.nh +\fBarchive_write_disk_set_options\fP +.hy +(); +to set the restore options yourself. +.TP +.nh \fBarchive_read_extract_set_progress_callback\fP .hy (); diff --git a/archivers/libarchive/files/doc/man/archive_write.3 b/archivers/libarchive/files/doc/man/archive_write.3 index 32a3e17198e..3c02d5222d4 100644 --- a/archivers/libarchive/files/doc/man/archive_write.3 +++ b/archivers/libarchive/files/doc/man/archive_write.3 @@ -1,4 +1,4 @@ -.TH archive_write 3 "August 19, 2006" "" +.TH archive_write 3 "May 11, 2008" "" .SH NAME \fBarchive_write_new\fP, \fBarchive_write_set_format_cpio\fP, @@ -11,6 +11,7 @@ \fBarchive_write_set_bytes_per_block\fP, \fBarchive_write_set_bytes_in_last_block\fP, \fBarchive_write_set_compression_bzip2\fP, +\fBarchive_write_set_compression_compress\fP, \fBarchive_write_set_compression_gzip\fP, \fBarchive_write_set_compression_none\fP, \fBarchive_write_set_compression_program\fP, @@ -61,6 +62,12 @@ \fIint\fP .RE .nh +\fBarchive_write_set_compression_compress\fP +.hy +("struct archive *"); +\fIint\fP +.RE +.nh \fBarchive_write_set_compression_gzip\fP .hy ("struct archive *"); @@ -303,6 +310,10 @@ Xo .hy (,); .nh +\fBarchive_write_set_compression_compress\fP +.hy +(,); +.nh \fBarchive_write_set_compression_gzip\fP .hy (,); diff --git a/archivers/libarchive/files/doc/man/archive_write_disk.3 b/archivers/libarchive/files/doc/man/archive_write_disk.3 index f6f23b4ddb5..e48292d0e47 100644 --- a/archivers/libarchive/files/doc/man/archive_write_disk.3 +++ b/archivers/libarchive/files/doc/man/archive_write_disk.3 @@ -210,6 +210,11 @@ Note that paths ending in \fI\& ..\fP always cause an error, regardless of this flag. .TP +\fBARCHIVE_EXTRACT_SPARSE\fP +Scan data for blocks of NUL bytes and try to recreate them with holes. +This results in sparse files, independent of whether the archive format +supports or uses them. +.TP Xo .nh \fBarchive_write_disk_set_group_lookup\fP diff --git a/archivers/libarchive/files/doc/man/bsdtar.1 b/archivers/libarchive/files/doc/man/bsdtar.1 index d1cc8ddad04..c1088d9e861 100644 --- a/archivers/libarchive/files/doc/man/bsdtar.1 +++ b/archivers/libarchive/files/doc/man/bsdtar.1 @@ -1,4 +1,4 @@ -.TH BSDTAR 1 "April 13, 2004" "" +.TH BSDTAR 1 "May 15, 2008" "" .SH NAME \fBtar\fP \- manipulate tape archives @@ -149,7 +149,7 @@ Note that exclusions take precedence over patterns or filenames specified on the command line. .TP \fB\--format\fP \fIformat\fP (\fB\-W\fP \fBformat\fP=\fIformat\fP) -(c mode only) +(c, r, u mode only) Use the specified format for the created archive. Supported formats include ``cpio'', @@ -160,6 +160,8 @@ and Other formats may also be supported; see \fBlibarchive-formats\fP(5) for more information about currently-supported formats. +In r and u modes, when extending an existing archive, the format specified +here must be compatible with the format of the existing archive on disk. .TP \fB\-f\fP \fIfile\fP Read the archive from or write the archive to the specified file. @@ -223,6 +225,11 @@ Do not overwrite existing files. In particular, if a file appears more than once in an archive, later copies will not overwrite earlier copies. .TP +\fB\--keep-newer-files\fP (\fB\-W\fP \fBkeep-newer-files\fP) +(x mode only) +Do not overwrite existing files that are newer than the +versions appearing in the archive being extracted. +.TP \fB\-L\fP (c and r mode only) All symbolic links will be followed. @@ -282,6 +289,11 @@ This is often used to read filenames output by the option to \fBfind\fP(1). .TP +\fB\--numeric-owner\fP +(x mode only) +Ignore symbolic user and group names when restoring archives to disk, +only numeric uid and gid values will be obeyed. +.TP \fB\-O\fP (x, t modes only) In extract (-x) mode, files will be written to standard out rather than @@ -290,7 +302,7 @@ In list (-t) mode, the file listing will be written to stderr rather than the usual stdout. .TP \fB\-o\fP -(x mode only) +(x mode) Use the user and group of the user running the program rather than those specified in the archive. Note that this has no significance unless @@ -300,6 +312,11 @@ In this case, the file modes and flags from the archive will be restored, but ACLs or owner information in the archive will be discarded. .TP +\fB\-o\fP +(c, r, u mode) +A synonym for +\fB\--format\fP \fIustar\fP +.TP \fB\--one-file-system\fP (\fB\-W\fP \fBone-file-system\fP) (c, r, and u modes) Do not cross mount points. @@ -341,6 +358,13 @@ there can be multiple entries with the same name and, by convention, later entries overwrite earlier entries. This option is provided as a performance optimization. .TP +\fB\-S\fP +(x mode only) +Extract files as sparse files. +For every block on disk, check first if it contains only NULL bytes and seek +over it otherwise. +This works similiar to the conv=sparse option of dd. +.TP \fB\--strip-components\fP \fIcount\fP (\fB\-W\fP \fBstrip-components\fP=\fIcount\fP) (x and t mode only) Remove the specified number of leading path elements. @@ -348,6 +372,23 @@ Pathnames with fewer elements will be silently skipped. Note that the pathname is edited after checking inclusion/exclusion patterns but before security checks. .TP +\fB\-s\fP \fIpattern\fP +Modify file or archive member names according to +\fIpattern\fP. +The pattern has the format /old/new/[gps]. +old is a basic regular expression. +If it doesn't apply, the pattern is skipped. +new is the replacement string of the matched part. +~ is substituted with the match, \1 to \9 with the content of +the corresponding captured group. +The optional trailing g specifies that matching should continue +after the matched part and stopped on the first unmatched pattern. +The optional trailing s specifies that the pattern applies to the value +of symbolic links. +The optional trailing p specifies that after a successful substitution +the original path name and the new path name should be printed to +standard error. +.TP \fB\-T\fP \fIfilename\fP In x or t mode, \fBtar\fP @@ -535,6 +576,22 @@ Finally, it will switch to the directory and add \fIfoo2\fP to the output archive. +An input file in +\fBmtree\fP(5) +format can be used to create an output archive with arbitrary ownership, +permissions, or names that differ from existing data on disk: +.RS +$ cat input.mtree +.RE +.RS +usr/bin uid=0 gid=0 mode=0755 type=dir +.RE +.RS +usr/bin/ls uid=0 gid=0 mode=0755 type=file content=myls +.RE +.RS +$ tar -cvf output.tar @input.mtree +.RE The \fB\--newer\fP and diff --git a/archivers/libarchive/files/doc/man/libarchive-formats.5 b/archivers/libarchive/files/doc/man/libarchive-formats.5 index 1e88dd2d2ae..580aaeaa071 100644 --- a/archivers/libarchive/files/doc/man/libarchive-formats.5 +++ b/archivers/libarchive/files/doc/man/libarchive-formats.5 @@ -226,6 +226,14 @@ There are two common variants: the GNU format derived from SVR4, and the BSD format, which first appeared in 4.4BSD. Libarchive provides read and write support for both variants. +.SS mtree +Libarchive can read files in +\fBmtree\fP(5) +format. This format is not a true archive format, but rather a description +of a file hierarchy. When requested, libarchive obtains the contents of +the files described by the +\fBmtree\fP(5) +format from files on disk instead. .SH SEE ALSO \fBar\fP(1), \fBcpio\fP(1), diff --git a/archivers/libarchive/files/doc/man/mtree.5 b/archivers/libarchive/files/doc/man/mtree.5 index 7b7d74afe7a..0f4c255b495 100644 --- a/archivers/libarchive/files/doc/man/mtree.5 +++ b/archivers/libarchive/files/doc/man/mtree.5 @@ -1,12 +1,12 @@ .TH MTREE 5 "August 20, 2007" "" .SH NAME \fBmtree\fP -\- format of mtree dir heirarchy files +\- format of mtree dir hierarchy files .SH DESCRIPTION The \fBmtree\fP format is a textual format that describes a collection of filesystem objects. -Such files are typically used to create or verify directory heirarchies. +Such files are typically used to create or verify directory hierarchies. .SS General Format An \fBmtree\fP @@ -105,8 +105,7 @@ the utility. .TP \fBcontents\fP -The full pathname of a file whose contents should be -compared to the contents of this file. +The full pathname of a file that holds the contents of this file. .TP \fBflags\fP The file flags as a symbolic name. @@ -127,7 +126,7 @@ The file group as a symbolic name. Ignore any file hierarchy below this file. .TP \fBlink\fP -The file the symbolic link is expected to reference. +The target of the symbolic link when type=link. .TP \fBmd5\fP The MD5 message digest of the file. |