summaryrefslogtreecommitdiff
path: root/archivers/libarchive/files/doc/text
diff options
context:
space:
mode:
Diffstat (limited to 'archivers/libarchive/files/doc/text')
-rw-r--r--archivers/libarchive/files/doc/text/Makefile5
-rw-r--r--archivers/libarchive/files/doc/text/archive_entry.3.txt4
-rw-r--r--archivers/libarchive/files/doc/text/archive_entry_acl.3.txt49
-rw-r--r--archivers/libarchive/files/doc/text/archive_entry_linkify.3.txt38
-rw-r--r--archivers/libarchive/files/doc/text/archive_entry_misc.3.txt36
-rw-r--r--archivers/libarchive/files/doc/text/archive_entry_perms.3.txt4
-rw-r--r--archivers/libarchive/files/doc/text/archive_entry_stat.3.txt19
-rw-r--r--archivers/libarchive/files/doc/text/archive_read.3.txt6
-rw-r--r--archivers/libarchive/files/doc/text/archive_read_data.3.txt4
-rw-r--r--archivers/libarchive/files/doc/text/archive_read_disk.3.txt48
-rw-r--r--archivers/libarchive/files/doc/text/archive_read_extract.3.txt23
-rw-r--r--archivers/libarchive/files/doc/text/archive_read_format.3.txt24
-rw-r--r--archivers/libarchive/files/doc/text/archive_read_header.3.txt4
-rw-r--r--archivers/libarchive/files/doc/text/archive_read_open.3.txt16
-rw-r--r--archivers/libarchive/files/doc/text/archive_util.3.txt10
-rw-r--r--archivers/libarchive/files/doc/text/archive_write.3.txt12
-rw-r--r--archivers/libarchive/files/doc/text/archive_write_data.3.txt10
-rw-r--r--archivers/libarchive/files/doc/text/archive_write_disk.3.txt64
-rw-r--r--archivers/libarchive/files/doc/text/archive_write_finish_entry.3.txt6
-rw-r--r--archivers/libarchive/files/doc/text/archive_write_free.3.txt4
-rw-r--r--archivers/libarchive/files/doc/text/archive_write_open.3.txt14
-rw-r--r--archivers/libarchive/files/doc/text/archive_write_set_options.3.txt34
-rw-r--r--archivers/libarchive/files/doc/text/bsdcpio.1.txt4
-rw-r--r--archivers/libarchive/files/doc/text/bsdtar.1.txt190
-rw-r--r--archivers/libarchive/files/doc/text/cpio.5.txt18
-rw-r--r--archivers/libarchive/files/doc/text/libarchive-formats.5.txt105
-rw-r--r--archivers/libarchive/files/doc/text/libarchive.3.txt72
-rw-r--r--archivers/libarchive/files/doc/text/libarchive_changes.3.txt34
-rw-r--r--archivers/libarchive/files/doc/text/libarchive_internals.3.txt26
-rw-r--r--archivers/libarchive/files/doc/text/mtree.5.txt24
-rw-r--r--archivers/libarchive/files/doc/text/tar.5.txt132
31 files changed, 538 insertions, 501 deletions
diff --git a/archivers/libarchive/files/doc/text/Makefile b/archivers/libarchive/files/doc/text/Makefile
index d58f7d94b4e..d533e84adf6 100644
--- a/archivers/libarchive/files/doc/text/Makefile
+++ b/archivers/libarchive/files/doc/text/Makefile
@@ -11,6 +11,9 @@ archive_entry_acl.3.txt: ../../libarchive/archive_entry_acl.3
archive_entry_linkify.3.txt: ../../libarchive/archive_entry_linkify.3
nroff -mdoc ../../libarchive/archive_entry_linkify.3 | col -b > archive_entry_linkify.3.txt
+archive_entry_misc.3.txt: ../../libarchive/archive_entry_misc.3
+ nroff -mdoc ../../libarchive/archive_entry_misc.3 | col -b > archive_entry_misc.3.txt
+
archive_entry_paths.3.txt: ../../libarchive/archive_entry_paths.3
nroff -mdoc ../../libarchive/archive_entry_paths.3 | col -b > archive_entry_paths.3.txt
@@ -127,4 +130,4 @@ bsdtar.1.txt: ../../tar/bsdtar.1
bsdcpio.1.txt: ../../cpio/bsdcpio.1
nroff -mdoc ../../cpio/bsdcpio.1 | col -b > bsdcpio.1.txt
-all: archive_entry.3.txt archive_entry_acl.3.txt archive_entry_linkify.3.txt archive_entry_paths.3.txt archive_entry_perms.3.txt archive_entry_stat.3.txt archive_entry_time.3.txt archive_read.3.txt archive_read_add_passphrase.3.txt archive_read_data.3.txt archive_read_disk.3.txt archive_read_extract.3.txt archive_read_filter.3.txt archive_read_format.3.txt archive_read_free.3.txt archive_read_header.3.txt archive_read_new.3.txt archive_read_open.3.txt archive_read_set_options.3.txt archive_util.3.txt archive_write.3.txt archive_write_blocksize.3.txt archive_write_data.3.txt archive_write_disk.3.txt archive_write_filter.3.txt archive_write_finish_entry.3.txt archive_write_format.3.txt archive_write_free.3.txt archive_write_header.3.txt archive_write_new.3.txt archive_write_open.3.txt archive_write_set_options.3.txt archive_write_set_passphrase.3.txt cpio.5.txt libarchive.3.txt libarchive_changes.3.txt libarchive-formats.5.txt libarchive_internals.3.txt mtree.5.txt tar.5.txt bsdtar.1.txt bsdcpio.1.txt
+all: archive_entry.3.txt archive_entry_acl.3.txt archive_entry_linkify.3.txt archive_entry_misc.3.txt archive_entry_paths.3.txt archive_entry_perms.3.txt archive_entry_stat.3.txt archive_entry_time.3.txt archive_read.3.txt archive_read_add_passphrase.3.txt archive_read_data.3.txt archive_read_disk.3.txt archive_read_extract.3.txt archive_read_filter.3.txt archive_read_format.3.txt archive_read_free.3.txt archive_read_header.3.txt archive_read_new.3.txt archive_read_open.3.txt archive_read_set_options.3.txt archive_util.3.txt archive_write.3.txt archive_write_blocksize.3.txt archive_write_data.3.txt archive_write_disk.3.txt archive_write_filter.3.txt archive_write_finish_entry.3.txt archive_write_format.3.txt archive_write_free.3.txt archive_write_header.3.txt archive_write_new.3.txt archive_write_open.3.txt archive_write_set_options.3.txt archive_write_set_passphrase.3.txt cpio.5.txt libarchive.3.txt libarchive_changes.3.txt libarchive-formats.5.txt libarchive_internals.3.txt mtree.5.txt tar.5.txt bsdtar.1.txt bsdcpio.1.txt
diff --git a/archivers/libarchive/files/doc/text/archive_entry.3.txt b/archivers/libarchive/files/doc/text/archive_entry.3.txt
index d9dd1c0ed39..2d3a65bf0b3 100644
--- a/archivers/libarchive/files/doc/text/archive_entry.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_entry.3.txt
@@ -65,8 +65,8 @@ DESCRIPTION
Stores the provided data in the object. In particular, for
strings, the pointer is stored, not the referenced string.
archive_entry_copy_XXXX()
- As above, except that the referenced data is copied into the
- object.
+ As above, except that the referenced data is copied into the ob‐
+ ject.
archive_entry_XXXX()
Returns the specified data. In the case of strings, a const-
qualified pointer to the string is returned.
diff --git a/archivers/libarchive/files/doc/text/archive_entry_acl.3.txt b/archivers/libarchive/files/doc/text/archive_entry_acl.3.txt
index 429e5d86103..21818e1773e 100644
--- a/archivers/libarchive/files/doc/text/archive_entry_acl.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_entry_acl.3.txt
@@ -6,8 +6,8 @@ NAME
archive_entry_acl_from_text, archive_entry_acl_from_text_w,
archive_entry_acl_next, archive_entry_acl_next_w,
archive_entry_acl_reset, archive_entry_acl_to_text,
- archive_entry_acl_to_text_w, archive_entry_acl_types — functions for
- manipulating Access Control Lists in archive entry descriptions
+ archive_entry_acl_to_text_w, archive_entry_acl_types — functions for ma‐
+ nipulating Access Control Lists in archive entry descriptions
LIBRARY
Streaming Archive Library (libarchive, -larchive)
@@ -101,14 +101,14 @@ DESCRIPTION
Entries (ACEs).
There are four possible types of a NFSv4 ACE:
- ARCHIVE_ENTRY_ACL_TYPE_ALLOW Allow principal to perform actions
- requiring given permissions.
- ARCHIVE_ENTRY_ACL_TYPE_DENY Prevent principal from performing
- actions requiring given permissions.
+ ARCHIVE_ENTRY_ACL_TYPE_ALLOW Allow principal to perform actions re‐
+ quiring given permissions.
+ ARCHIVE_ENTRY_ACL_TYPE_DENY Prevent principal from performing ac‐
+ tions requiring given permissions.
ARCHIVE_ENTRY_ACL_TYPE_AUDIT Log access attempts by principal which
require given permissions.
- ARCHIVE_ENTRY_ACL_TYPE_ALARM Trigger a system alarm on access
- attempts by principal which require
+ ARCHIVE_ENTRY_ACL_TYPE_ALARM Trigger a system alarm on access at‐
+ tempts by principal which require
given permissions.
The tag specifies the principal to which the permission applies. Valid
@@ -199,9 +199,9 @@ DESCRIPTION
ARCHIVE_ENTRY_ACL_TYPE_DENY
ARCHIVE_ENTRY_ACL_TYPE_AUDIT
ARCHIVE_ENTRY_ACL_TYPE_ALARM
- for NFSv4 ACLs. For POSIX.1e ACLs if ARCHIVE_ENTRY_ACL_TYPE_ACCESS is
- included and at least one extended ACL entry is found, the three non-
- extended ACLs are added.
+ for NFSv4 ACLs. For POSIX.1e ACLs if ARCHIVE_ENTRY_ACL_TYPE_ACCESS is in‐
+ cluded and at least one extended ACL entry is found, the three non-ex‐
+ tended ACLs are added.
archive_entry_acl_from_text() and archive_entry_acl_from_text_w() add new
(or merge with existing) ACL entries from (wide) text. The argument type
@@ -219,14 +219,14 @@ DESCRIPTION
archive_entry_acl_next() and archive_entry_acl_next_w() return the next
entry of the ACL list. This functions may only be called after
- archive_entry_acl_reset() has indicated the presence of extended ACL
- entries.
+ archive_entry_acl_reset() has indicated the presence of extended ACL en‐
+ tries.
archive_entry_acl_reset() prepare reading the list of ACL entries with
- archive_entry_acl_next() or archive_entry_acl_next_w(). The function
- returns either 0, if no non-extended ACLs are found. In this case, the
- access permissions should be obtained by archive_entry_mode(3) or set
- using chmod(2). Otherwise, the function returns the same value as
+ archive_entry_acl_next() or archive_entry_acl_next_w(). The function re‐
+ turns either 0, if no non-extended ACLs are found. In this case, the ac‐
+ cess permissions should be obtained by archive_entry_mode(3) or set using
+ chmod(2). Otherwise, the function returns the same value as
archive_entry_acl_count().
archive_entry_acl_to_text() and archive_entry_acl_to_text_w() convert the
@@ -257,23 +257,22 @@ DESCRIPTION
ARCHIVE_ENTRY_ACL_STYLE_SEPARATOR_COMMA
Separate ACL entries with comma instead of newline.
- If the archive entry contains NFSv4 ACLs, all types of NFSv4 ACLs are
- returned. It the entry contains POSIX.1e ACLs and none of the flags
+ If the archive entry contains NFSv4 ACLs, all types of NFSv4 ACLs are re‐
+ turned. It the entry contains POSIX.1e ACLs and none of the flags
ARCHIVE_ENTRY_ACL_TYPE_ACCESS or ARCHIVE_ENTRY_ACL_TYPE_DEFAULT are spec‐
ified, both access and default entries are returned and default entries
are prefixed with “default:”.
- archive_entry_acl_types() get ACL entry types contained in an archive
- entry's ACL. As POSIX.1e and NFSv4 ACL entries cannot be mixed, this
- function is a very efficient way to detect if an ACL already contains
+ archive_entry_acl_types() get ACL entry types contained in an archive en‐
+ try's ACL. As POSIX.1e and NFSv4 ACL entries cannot be mixed, this func‐
+ tion is a very efficient way to detect if an ACL already contains
POSIX.1e or NFSv4 ACL entries.
RETURN VALUES
archive_entry_acl_count() and archive_entry_acl_reset() returns the num‐
ber of ACL entries that match the given type mask. For POSIX.1e ACLS if
- the type mask includes ARCHIVE_ENTRY_ACL_TYPE_ACCESS and at least one
- extended ACL entry exists, the three classic Unix permissions are
- counted.
+ the type mask includes ARCHIVE_ENTRY_ACL_TYPE_ACCESS and at least one ex‐
+ tended ACL entry exists, the three classic Unix permissions are counted.
archive_entry_acl_from_text() and archive_entry_acl_from_text_w() return
ARCHIVE_OK if all entries were successfully parsed and ARCHIVE_WARN if
diff --git a/archivers/libarchive/files/doc/text/archive_entry_linkify.3.txt b/archivers/libarchive/files/doc/text/archive_entry_linkify.3.txt
index 62eb5226bf0..6c8a5ddc81b 100644
--- a/archivers/libarchive/files/doc/text/archive_entry_linkify.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_entry_linkify.3.txt
@@ -27,8 +27,8 @@ SYNOPSIS
DESCRIPTION
Programs that want to create archives have to deal with hardlinks.
- Hardlinks are handled in different ways by the archive formats. The
- basic strategies are:
+ Hardlinks are handled in different ways by the archive formats. The ba‐
+ sic strategies are:
1. Ignore hardlinks and store the body for each reference (old cpio,
zip).
@@ -37,23 +37,23 @@ DESCRIPTION
3. Store the body the last time an inode is seen (new cpio).
- The archive_entry_linkresolver functions help by providing a unified
- interface and handling the complexity behind the scene.
+ The archive_entry_linkresolver functions help by providing a unified in‐
+ terface and handling the complexity behind the scene.
- The archive_entry_linkresolver functions assume that archive_entry
- instances have valid nlinks, inode and device values. The inode and
- device value is used to match entries. The nlinks value is used to
- determined if all references have been found and if the internal refer‐
- ences can be recycled.
+ The archive_entry_linkresolver functions assume that archive_entry in‐
+ stances have valid nlinks, inode and device values. The inode and device
+ value is used to match entries. The nlinks value is used to determined
+ if all references have been found and if the internal references can be
+ recycled.
- The archive_entry_linkresolver_new() function allocates a new link
- resolver. The instance can be freed using
+ The archive_entry_linkresolver_new() function allocates a new link re‐
+ solver. The instance can be freed using
archive_entry_linkresolver_free(). All deferred entries are flushed and
the internal storage is freed.
The archive_entry_linkresolver_set_strategy() function selects the opti‐
- mal hardlink strategy for the given format. The format code can be
- obtained from archive_format(3). The function can be called more than
+ mal hardlink strategy for the given format. The format code can be ob‐
+ tained from archive_format(3). The function can be called more than
once, but it is recommended to flush all deferred entries first.
The archive_entry_linkify() function is the core of
@@ -66,8 +66,8 @@ DESCRIPTION
2. For tar like archive formats, *sparse is set to NULL. If *entry is
NULL, no action is taken. If the hardlink count of *entry is larger
- than 1 and the file type is a regular file or symbolic link, the
- internal list is searched for a matching inode. If such an inode is
+ than 1 and the file type is a regular file or symbolic link, the in‐
+ ternal list is searched for a matching inode. If such an inode is
found, the link count is decremented and the file size of *entry is
set to 0 to notify that no body should be written. If no such inode
is found, a copy of the entry is added to the internal cache with a
@@ -83,8 +83,8 @@ DESCRIPTION
Otherwise, the internal list is searched for a matching inode. If
such an inode is not found, the entry is added to the internal list,
both *entry and *sparse are set to NULL and the function returns.
- If such an inode is found, the link count is decremented. If it
- remains larger than one, the existing entry on the internal list is
+ If such an inode is found, the link count is decremented. If it re‐
+ mains larger than one, the existing entry on the internal list is
swapped with *entry after retaining the link count. The existing
entry is returned in *entry. If the link count reached one, the new
entry is also removed from the internal list and returned in
@@ -101,8 +101,8 @@ DESCRIPTION
4. If *sparse is not NULL, archive it.
5. After all entries have been written to disk, call
- archive_entry_linkify() with *entry set to NULL and archive the
- returned entry as long as it is not NULL.
+ archive_entry_linkify() with *entry set to NULL and archive the re‐
+ turned entry as long as it is not NULL.
RETURN VALUES
archive_entry_linkresolver_new() returns NULL on malloc(3) failures.
diff --git a/archivers/libarchive/files/doc/text/archive_entry_misc.3.txt b/archivers/libarchive/files/doc/text/archive_entry_misc.3.txt
new file mode 100644
index 00000000000..d6d888ad674
--- /dev/null
+++ b/archivers/libarchive/files/doc/text/archive_entry_misc.3.txt
@@ -0,0 +1,36 @@
+ARCHIVE_ENTRY_MISC(3) BSD Library Functions Manual ARCHIVE_ENTRY_MISC(3)
+
+NAME
+ archive_entry_symlink_type, archive_entry_set_symlink_type — miscella‐
+ neous functions for manipulating properties of archive_entry.
+
+LIBRARY
+ Streaming Archive Library (libarchive, -larchive)
+
+SYNOPSIS
+ #include <archive_entry.h>
+
+ int
+ archive_entry_symlink_type(struct archive_entry *a);
+
+ void
+ archive_entry_set_symlink_type(struct archive_entry *a, int);
+
+DESCRIPTION
+ The function archive_entry_symlink_type() returns and the function
+ archive_entry_set_symlink_type() sets the type of the symbolic link
+ stored in an archive entry. These functions have special meaning on oper‐
+ ating systems that support multiple symbolic link types (e.g. Microsoft
+ Windows).
+
+ Supported values are:
+ AE_SYMLINK_TYPE_UNDEFINED Symbolic link target type is not defined (de‐
+ fault on unix systems)
+ AE_SYMLINK_TYPE_FILE Symbolic link points to a file
+ AE_SYMLINK_TYPE_DIRECTORY Symbolic link points to a directory
+
+SEE ALSO
+ archive_entry(3), archive_entry_paths(3), archive_entry_stat(3),
+ libarchive(3)
+
+BSD April 15, 2019 BSD
diff --git a/archivers/libarchive/files/doc/text/archive_entry_perms.3.txt b/archivers/libarchive/files/doc/text/archive_entry_perms.3.txt
index b0a546f2e22..3c133af7e34 100644
--- a/archivers/libarchive/files/doc/text/archive_entry_perms.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_entry_perms.3.txt
@@ -11,8 +11,8 @@ NAME
archive_entry_update_gname_utf8, archive_entry_fflags,
archive_entry_fflags_text, archive_entry_set_fflags,
archive_entry_copy_fflags_text, archive_entry_copy_fflags_text_w — func‐
- tions for manipulating ownership and permissions in archive entry
- descriptions
+ tions for manipulating ownership and permissions in archive entry de‐
+ scriptions
LIBRARY
Streaming Archive Library (libarchive, -larchive)
diff --git a/archivers/libarchive/files/doc/text/archive_entry_stat.3.txt b/archivers/libarchive/files/doc/text/archive_entry_stat.3.txt
index 32270ed43a7..21e180e50d1 100644
--- a/archivers/libarchive/files/doc/text/archive_entry_stat.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_entry_stat.3.txt
@@ -113,14 +113,13 @@ SYNOPSIS
DESCRIPTION
Copying to and from struct stat
The function archive_entry_stat() converts the various fields stored in
- the archive entry to the format used by stat(2). The return value
- remains valid until either archive_entry_clear() or archive_entry_free()
- is called. It is not affected by calls to the set accessor functions.
- It currently sets the following values in struct stat: st_atime,
- st_ctime, st_dev, st_gid, st_ino, st_mode, st_mtime, st_nlink, st_rdev,
- st_size, st_uid. In addition, st_birthtime and high-precision informa‐
- tion for time-related fields will be included on platforms that support
- it.
+ the archive entry to the format used by stat(2). The return value re‐
+ mains valid until either archive_entry_clear() or archive_entry_free() is
+ called. It is not affected by calls to the set accessor functions. It
+ currently sets the following values in struct stat: st_atime, st_ctime,
+ st_dev, st_gid, st_ino, st_mode, st_mtime, st_nlink, st_rdev, st_size,
+ st_uid. In addition, st_birthtime and high-precision information for
+ time-related fields will be included on platforms that support it.
The function archive_entry_copy_stat() copies fields from the platform's
struct stat. Fields not provided by struct stat are unchanged.
@@ -167,8 +166,8 @@ DESCRIPTION
The inode number can be obtained using archive_entry_ino(). This is a
legacy interface that uses the platform ino_t, which may be very small.
- To set the inode number, archive_entry_set_ino64() is the preferred
- interface.
+ To set the inode number, archive_entry_set_ino64() is the preferred in‐
+ terface.
Accessor functions for block and character devices
Block and character devices are characterised either using a device num‐
diff --git a/archivers/libarchive/files/doc/text/archive_read.3.txt b/archivers/libarchive/files/doc/text/archive_read.3.txt
index 3421d88041e..b38142e45c9 100644
--- a/archivers/libarchive/files/doc/text/archive_read.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_read.3.txt
@@ -11,9 +11,9 @@ SYNOPSIS
DESCRIPTION
These functions provide a complete API for reading streaming archives.
- The general process is to first create the struct archive object, set
- options, initialize the reader, iterate over the archive headers and
- associated data, then close the archive and release all resources.
+ The general process is to first create the struct archive object, set op‐
+ tions, initialize the reader, iterate over the archive headers and asso‐
+ ciated data, then close the archive and release all resources.
Create archive object
See archive_read_new(3).
diff --git a/archivers/libarchive/files/doc/text/archive_read_data.3.txt b/archivers/libarchive/files/doc/text/archive_read_data.3.txt
index 499b0c5fc10..c4a2e412c28 100644
--- a/archivers/libarchive/files/doc/text/archive_read_data.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_read_data.3.txt
@@ -54,8 +54,8 @@ RETURN VALUES
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 opera‐
- tion failed but can be retried), and ARCHIVE_FATAL (there was a fatal
- error; the archive should be closed immediately).
+ tion failed but can be retried), and ARCHIVE_FATAL (there was a fatal er‐
+ ror; the archive should be closed immediately).
archive_read_data() returns a count of bytes actually read or zero at the
end of the entry. On error, a value of ARCHIVE_FATAL, ARCHIVE_WARN, or
diff --git a/archivers/libarchive/files/doc/text/archive_read_disk.3.txt b/archivers/libarchive/files/doc/text/archive_read_disk.3.txt
index 420371e073d..c3ff4164843 100644
--- a/archivers/libarchive/files/doc/text/archive_read_disk.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_read_disk.3.txt
@@ -70,9 +70,9 @@ DESCRIPTION
(file flag) set. By default, the nodump file atrribute
is ignored.
ARCHIVE_READDISK_MAC_COPYFILE
- Mac OS X specific. Read metadata (ACLs and extended
- attributes) with copyfile(3). By default, metadata is
- read using copyfile(3).
+ Mac OS X specific. Read metadata (ACLs and extended at‐
+ tributes) with copyfile(3). By default, metadata is read
+ using copyfile(3).
ARCHIVE_READDISK_NO_ACL
Do not read Access Control Lists. By default, ACLs are
read from disk.
@@ -85,14 +85,14 @@ DESCRIPTION
Do not traverse mount points. By defaut, moint points
are traversed.
ARCHIVE_READDISK_NO_XATTR
- Do not read extended file attributes (xattrs). By
- default, extended file attributes are read from disk.
- See xattr(7) (Linux), xattr(2) (Mac OS X), or
- getextattr(8) (FreeBSD) for more information on extended
- file attributes.
+ Do not read extended file attributes (xattrs). By de‐
+ fault, extended file attributes are read from disk. See
+ xattr(7) (Linux), xattr(2) (Mac OS X), or getextattr(8)
+ (FreeBSD) for more information on extended file at‐
+ tributes.
ARCHIVE_READDISK_RESTORE_ATIME
- Restore access time of traversed files. By default,
- access time of traversed files is not restored.
+ Restore access time of traversed files. By default, ac‐
+ cess time of traversed files is not restored.
archive_read_disk_set_symlink_logical(),
archive_read_disk_set_symlink_physical(),
@@ -103,16 +103,16 @@ DESCRIPTION
behaves identically to the “logical” mode.
archive_read_disk_gname(), archive_read_disk_uname()
- Returns a user or group name given a gid or uid value. By
- default, these always return a NULL string.
+ Returns a user or group name given a gid or uid value. By de‐
+ fault, these always return a NULL string.
archive_read_disk_set_gname_lookup(),
archive_read_disk_set_uname_lookup()
These allow you to override the functions used for user and group
name lookups. You may also provide a void * pointer to a private
data structure and a cleanup function for that data. The cleanup
- function will be invoked when the struct archive object is
- destroyed or when new lookup functions are registered.
+ function will be invoked when the struct archive object is de‐
+ stroyed or when new lookup functions are registered.
archive_read_disk_set_standard_lookup()
This convenience function installs a standard set of user and
@@ -130,13 +130,13 @@ DESCRIPTION
source path will be used.)
Information is read from disk using the path name from the struct
- archive_entry object. If a file descriptor is provided, some
- information will be obtained using that file descriptor, on plat‐
+ archive_entry object. If a file descriptor is provided, some in‐
+ formation will be obtained using that file descriptor, on plat‐
forms that support the appropriate system calls.
If a pointer to a struct stat is provided, information from that
- structure will be used instead of reading from the disk where
- appropriate. This can provide performance benefits in scenarios
+ structure will be used instead of reading from the disk where ap‐
+ propriate. This can provide performance benefits in scenarios
where struct stat information has already been read from the disk
as a side effect of some other operation. (For example, direc‐
tory traversal libraries often provide this information.)
@@ -204,18 +204,18 @@ SEE ALSO
HISTORY
The libarchive library first appeared in FreeBSD 5.3. The
- archive_read_disk interface was added to libarchive 2.6 and first
- appeared in FreeBSD 8.0.
+ archive_read_disk interface was added to libarchive 2.6 and first ap‐
+ peared in FreeBSD 8.0.
AUTHORS
The libarchive library was written by Tim Kientzle
<kientzle@FreeBSD.org>.
BUGS
- The “standard” user name and group name lookup functions are not the
- defaults because getgrgid(3) and getpwuid(3) are sometimes too large for
- particular applications. The current design allows the application
- author to use a more compact implementation when appropriate.
+ The “standard” user name and group name lookup functions are not the de‐
+ faults because getgrgid(3) and getpwuid(3) are sometimes too large for
+ particular applications. The current design allows the application au‐
+ thor to use a more compact implementation when appropriate.
The full list of metadata read from disk by
archive_read_disk_entry_from_file() is necessarily system-dependent.
diff --git a/archivers/libarchive/files/doc/text/archive_read_extract.3.txt b/archivers/libarchive/files/doc/text/archive_read_extract.3.txt
index ca1fec5ad49..3f58d112ab1 100644
--- a/archivers/libarchive/files/doc/text/archive_read_extract.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_read_extract.3.txt
@@ -29,12 +29,11 @@ DESCRIPTION
archive_write_disk(3) interfaces. The first call to
archive_read_extract() creates a restore object using
archive_write_disk_new(3) and
- archive_write_disk_set_standard_lookup(3), then transparently
- invokes archive_write_disk_set_options(3),
- archive_write_header(3), archive_write_data(3), and
- archive_write_finish_entry(3) to create the entry on disk and
- copy data into it. The flags argument is passed unmodified to
- archive_write_disk_set_options(3).
+ archive_write_disk_set_standard_lookup(3), then transparently in‐
+ vokes archive_write_disk_set_options(3), archive_write_header(3),
+ archive_write_data(3), and archive_write_finish_entry(3) to cre‐
+ ate the entry on disk and copy data into it. The flags argument
+ is passed unmodified to archive_write_disk_set_options(3).
archive_read_extract2()
This is another version of archive_read_extract() that allows you
to provide your own restore object. In particular, this allows
@@ -49,18 +48,18 @@ DESCRIPTION
updating progress displays during extraction. The progress func‐
tion 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.
+ provided to this call. Generally, the data pointed to should in‐
+ clude a reference to the archive object and the archive_entry ob‐
+ ject so that various statistics can be retrieved for the progress
+ display.
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 opera‐
- tion failed but can be retried), and ARCHIVE_FATAL (there was a fatal
- error; the archive should be closed immediately).
+ tion failed but can be retried), and ARCHIVE_FATAL (there was a fatal er‐
+ ror; the archive should be closed immediately).
ERRORS
Detailed error codes and textual descriptions are available from the
diff --git a/archivers/libarchive/files/doc/text/archive_read_format.3.txt b/archivers/libarchive/files/doc/text/archive_read_format.3.txt
index 38f1d8adfa2..6e8cbf170d9 100644
--- a/archivers/libarchive/files/doc/text/archive_read_format.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_read_format.3.txt
@@ -85,21 +85,21 @@ DESCRIPTION
archive_read_support_format_by_code()
Enables a single format specified by the format code. This can
be useful when reading a single archive twice; use
- archive_format() after reading the first time and pass the
- resulting code to this function to selectively enable only the
- necessary format support. Note: In statically-linked executa‐
- bles, this will cause your program to include support for every
- format. If executable size is a concern, you may wish to avoid
- using this function.
+ archive_format() after reading the first time and pass the re‐
+ sulting code to this function to selectively enable only the nec‐
+ essary format support. Note: In statically-linked executables,
+ this will cause your program to include support for every format.
+ If executable size is a concern, you may wish to avoid using this
+ function.
archive_read_support_format_empty()
- Enables support for treating empty files as empty archives.
- Because empty files are valid for several different formats, it
- is not possible to accurately determine a format for an empty
- file based purely on contents. So empty files are treated by
+ Enables support for treating empty files as empty archives. Be‐
+ cause empty files are valid for several different formats, it is
+ not possible to accurately determine a format for an empty file
+ based purely on contents. So empty files are treated by
libarchive as a distinct format.
archive_read_support_format_raw()
- The “raw” format handler allows libarchive to be used to read
- arbitrary data. It treats any data stream as an archive with a
+ The “raw” format handler allows libarchive to be used to read ar‐
+ bitrary data. It treats any data stream as an archive with a
single entry. The pathname of this entry is “data”; all other
entry fields are unset. This is not enabled by
archive_read_support_format_all() in order to avoid erroneous
diff --git a/archivers/libarchive/files/doc/text/archive_read_header.3.txt b/archivers/libarchive/files/doc/text/archive_read_header.3.txt
index 29f29a4b749..cd53005947d 100644
--- a/archivers/libarchive/files/doc/text/archive_read_header.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_read_header.3.txt
@@ -30,8 +30,8 @@ RETURN VALUES
These functions return 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 opera‐
- tion failed but can be retried), and ARCHIVE_FATAL (there was a fatal
- error; the archive should be closed immediately).
+ tion failed but can be retried), and ARCHIVE_FATAL (there was a fatal er‐
+ ror; the archive should be closed immediately).
ERRORS
Detailed error codes and textual descriptions are available from the
diff --git a/archivers/libarchive/files/doc/text/archive_read_open.3.txt b/archivers/libarchive/files/doc/text/archive_read_open.3.txt
index 10fcd7040c1..a6f74566bce 100644
--- a/archivers/libarchive/files/doc/text/archive_read_open.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_read_open.3.txt
@@ -61,15 +61,15 @@ DESCRIPTION
This is a deprecated synonym for archive_read_open_filename().
archive_read_open_filename()
Like archive_read_open(), except that it accepts a simple file‐
- name and a block size. A NULL filename represents standard
- input. This function is safe for use with tape drives or other
+ name and a block size. A NULL filename represents standard in‐
+ put. This function is safe for use with tape drives or other
blocked devices.
archive_read_open_memory()
Like archive_read_open(), except that it accepts a pointer and
size of a block of memory containing the archive data.
- A complete description of the struct archive and struct archive_entry
- objects can be found in the overview manual page for libarchive(3).
+ A complete description of the struct archive and struct archive_entry ob‐
+ jects can be found in the overview manual page for libarchive(3).
CLIENT CALLBACKS
The callback functions must match the following prototypes:
@@ -88,8 +88,8 @@ CLIENT CALLBACKS
The open callback is invoked by archive_open(). It should return
ARCHIVE_OK if the underlying file or data source is successfully opened.
- If the open fails, it should call archive_set_error() to register an
- error code and message and return ARCHIVE_FATAL.
+ If the open fails, it should call archive_set_error() to register an er‐
+ ror code and message and return ARCHIVE_FATAL.
The read callback is invoked whenever the library requires raw bytes from
the archive. The read callback should read data into a buffer, set the
@@ -98,8 +98,8 @@ CLIENT CALLBACKS
callback again only after it has consumed this data. The library imposes
no constraints on the size of the data blocks returned. On end-of-file,
the read callback should return zero. On error, the read callback should
- invoke archive_set_error() to register an error code and message and
- return -1.
+ invoke archive_set_error() to register an error code and message and re‐
+ turn -1.
The skip callback is invoked when the library wants to ignore a block of
data. The return value is the number of bytes actually skipped, which
diff --git a/archivers/libarchive/files/doc/text/archive_util.3.txt b/archivers/libarchive/files/doc/text/archive_util.3.txt
index 94d7c6c3a8c..b2deb3d1ad2 100644
--- a/archivers/libarchive/files/doc/text/archive_util.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_util.3.txt
@@ -70,8 +70,8 @@ DESCRIPTION
Copies error information from one archive to another.
archive_errno()
Returns a numeric error code (see errno(2)) indicating the reason
- for the most recent error return. Note that this can not be
- reliably used to detect whether an error has occurred. It should
+ for the most recent error return. Note that this can not be re‐
+ liably used to detect whether an error has occurred. It should
be used only after another libarchive function has returned an
error status.
archive_error_string()
@@ -87,9 +87,9 @@ DESCRIPTION
archive_filter_count() for details of the numbering.
archive_filter_count()
Returns the number of filters in the current pipeline. For read
- archive handles, these filters are added automatically by the
- automatic format detection. For write archive handles, these
- filters are added by calls to the various
+ archive handles, these filters are added automatically by the au‐
+ tomatic format detection. For write archive handles, these fil‐
+ ters are added by calls to the various
archive_write_add_filter_XXX() functions. Filters in the result‐
ing pipeline are numbered so that filter 0 is the filter closest
to the format handler. As a convenience, functions that expect a
diff --git a/archivers/libarchive/files/doc/text/archive_write.3.txt b/archivers/libarchive/files/doc/text/archive_write.3.txt
index 6a097658fdc..cbafabc5a67 100644
--- a/archivers/libarchive/files/doc/text/archive_write.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_write.3.txt
@@ -38,8 +38,8 @@ DESCRIPTION
Once you have prepared the struct archive object, you call
archive_write_open() to actually open the archive and prepare it for
- writing. There are several variants of this function; the most basic
- expects you to provide pointers to several functions that can provide
+ writing. There are several variants of this function; the most basic ex‐
+ pects you to provide pointers to several functions that can provide
blocks of bytes from the archive. There are convenience forms that allow
you to specify a filename, file descriptor, FILE * object, or a block of
memory from which to write the archive data.
@@ -61,8 +61,8 @@ DESCRIPTION
tion to release all resources.
EXAMPLE
- The following sketch illustrates basic usage of the library. In this
- example, the callback functions are simply wrappers around the standard
+ The following sketch illustrates basic usage of the library. In this ex‐
+ ample, the callback functions are simply wrappers around the standard
open(2), write(2), and close(2) system calls.
#ifdef __linux__
@@ -173,8 +173,8 @@ AUTHORS
BUGS
There are many peculiar bugs in historic tar implementations that may
cause certain programs to reject archives written by this library. For
- example, several historic implementations calculated header checksums
- incorrectly and will thus reject valid archives; GNU tar does not fully
+ example, several historic implementations calculated header checksums in‐
+ correctly and will thus reject valid archives; GNU tar does not fully
support pax interchange format; some old tar implementations required
specific field terminations.
diff --git a/archivers/libarchive/files/doc/text/archive_write_data.3.txt b/archivers/libarchive/files/doc/text/archive_write_data.3.txt
index c42e91a0c78..dc65e08dd80 100644
--- a/archivers/libarchive/files/doc/text/archive_write_data.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_write_data.3.txt
@@ -39,11 +39,11 @@ ERRORS
archive_errno() and archive_error_string() functions.
BUGS
- In libarchive 3.x, this function sometimes returns zero on success
- instead of returning the number of bytes written. Specifically, this
- occurs when writing to an archive_write_disk handle. Clients should
- treat any value less than zero as an error and consider any non-negative
- value as success.
+ In libarchive 3.x, this function sometimes returns zero on success in‐
+ stead of returning the number of bytes written. Specifically, this oc‐
+ curs when writing to an archive_write_disk handle. Clients should treat
+ any value less than zero as an error and consider any non-negative value
+ as success.
SEE ALSO
tar(1), libarchive(3), archive_write_finish_entry(3),
diff --git a/archivers/libarchive/files/doc/text/archive_write_disk.3.txt b/archivers/libarchive/files/doc/text/archive_write_disk.3.txt
index ab9aca41f10..1c21375cfe9 100644
--- a/archivers/libarchive/files/doc/text/archive_write_disk.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_write_disk.3.txt
@@ -37,13 +37,13 @@ SYNOPSIS
DESCRIPTION
These functions provide a complete API for creating objects on disk from
- struct archive_entry descriptions. They are most naturally used when
- extracting objects from an archive using the archive_read() interface.
- The general process is to read struct archive_entry objects from an ar‐
- chive, then write those objects to a struct archive object created using
- the archive_write_disk() family functions. This interface is deliber‐
- ately very similar to the archive_write() interface used to write objects
- to a streaming archive.
+ struct archive_entry descriptions. They are most naturally used when ex‐
+ tracting objects from an archive using the archive_read() interface. The
+ general process is to read struct archive_entry objects from an archive,
+ then write those objects to a struct archive object created using the
+ archive_write_disk() family functions. This interface is deliberately
+ very similar to the archive_write() interface used to write objects to a
+ streaming archive.
archive_write_disk_new()
Allocates and initializes a struct archive object suitable for
@@ -52,38 +52,38 @@ DESCRIPTION
archive_write_disk_set_skip_file()
Records the device and inode numbers of a file that should not be
overwritten. This is typically used to ensure that an extraction
- process does not overwrite the archive from which objects are
- being read. This capability is technically unnecessary but can
- be a significant performance optimization in practice.
+ process does not overwrite the archive from which objects are be‐
+ ing read. This capability is technically unnecessary but can be
+ a significant performance optimization in practice.
archive_write_disk_set_options()
The options field consists of a bitwise OR of one or more of the
following values:
ARCHIVE_EXTRACT_ACL
- Attempt to restore Access Control Lists. By default,
- extended ACLs are ignored.
+ Attempt to restore Access Control Lists. By default, ex‐
+ tended ACLs are ignored.
ARCHIVE_EXTRACT_CLEAR_NOCHANGE_FFLAGS
Before removing a file system object prior to replacing
it, clear platform-specific file flags which might pre‐
vent its removal.
ARCHIVE_EXTRACT_FFLAGS
- Attempt to restore file attributes (file flags). By
- default, file attributes are ignored. See chattr(1)
+ Attempt to restore file attributes (file flags). By de‐
+ fault, file attributes are ignored. See chattr(1)
(Linux) or chflags(1) (FreeBSD, Mac OS X) for more infor‐
mation on file attributes.
ARCHIVE_EXTRACT_MAC_METADATA
Mac OS X specific. Restore metadata using copyfile(3).
By default, copyfile(3) metadata is ignored.
ARCHIVE_EXTRACT_NO_OVERWRITE
- Existing files on disk will not be overwritten. By
- default, existing regular files are truncated and over‐
- written; existing directories will have their permissions
- updated; other pre-existing objects are unlinked and
- recreated from scratch.
+ Existing files on disk will not be overwritten. By de‐
+ fault, existing regular files are truncated and overwrit‐
+ ten; existing directories will have their permissions up‐
+ dated; other pre-existing objects are unlinked and recre‐
+ ated from scratch.
ARCHIVE_EXTRACT_OWNER
The user and group IDs should be set on the restored
- file. By default, the user and group IDs are not
- restored.
+ file. By default, the user and group IDs are not re‐
+ stored.
ARCHIVE_EXTRACT_PERM
Full permissions (including SGID, SUID, and sticky bits)
should be restored exactly as specified, without obeying
@@ -101,8 +101,8 @@ DESCRIPTION
ARCHIVE_EXTRACT_SECURE_NODOTDOT
Refuse to extract a path that contains a .. element any‐
where within it. The default is to not refuse such
- paths. Note that paths ending in .. always cause an
- error, regardless of this flag.
+ paths. Note that paths ending in .. always cause an er‐
+ ror, regardless of this flag.
ARCHIVE_EXTRACT_SECURE_SYMLINKS
Refuse to extract any object whose final location would
be altered by a symlink on disk. This is intended to
@@ -119,12 +119,12 @@ DESCRIPTION
it finds and return an error only if such symlink could
not be removed.
ARCHIVE_EXTRACT_TIME
- The timestamps (mtime, ctime, and atime) should be
- restored. By default, they are ignored. Note that
- restoring of atime is not currently supported.
+ The timestamps (mtime, ctime, and atime) should be re‐
+ stored. By default, they are ignored. Note that restor‐
+ ing of atime is not currently supported.
ARCHIVE_EXTRACT_UNLINK
- Existing files on disk will be unlinked before any
- attempt to create them. In some cases, this can prove to
+ Existing files on disk will be unlinked before any at‐
+ tempt to create them. In some cases, this can prove to
be a significant performance improvement. By default,
existing files are truncated and rewritten, but the file
is not recreated. In particular, the default behavior
@@ -182,8 +182,8 @@ SEE ALSO
HISTORY
The libarchive library first appeared in FreeBSD 5.3. The
- archive_write_disk interface was added to libarchive 2.0 and first
- appeared in FreeBSD 6.3.
+ archive_write_disk interface was added to libarchive 2.0 and first ap‐
+ peared in FreeBSD 6.3.
AUTHORS
The libarchive library was written by Tim Kientzle <kientzle@acm.org>.
@@ -212,8 +212,8 @@ BUGS
with a single request. Of course, this does not work if the
ARCHIVE_EXTRACT_NODOTDOT option is specified.
- Implicit directories are always created obeying the current umask.
- Explicit objects are created obeying the current umask unless
+ Implicit directories are always created obeying the current umask. Ex‐
+ plicit objects are created obeying the current umask unless
ARCHIVE_EXTRACT_PERM is specified, in which case they current umask is
ignored.
diff --git a/archivers/libarchive/files/doc/text/archive_write_finish_entry.3.txt b/archivers/libarchive/files/doc/text/archive_write_finish_entry.3.txt
index 236486cfe80..e4c9ec79627 100644
--- a/archivers/libarchive/files/doc/text/archive_write_finish_entry.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_write_finish_entry.3.txt
@@ -13,9 +13,9 @@ SYNOPSIS
archive_write_finish_entry(struct archive *);
DESCRIPTION
- Close out the entry just written. In particular, this writes out the
- final padding required by some formats. Ordinarily, clients never need
- to call this, as it is called automatically by archive_write_header() and
+ Close out the entry just written. In particular, this writes out the fi‐
+ nal padding required by some formats. Ordinarily, clients never need to
+ call this, as it is called automatically by archive_write_header() and
archive_write_close() as needed. For archive_write_disk handles, this
flushes pending file attribute changes like modification time.
diff --git a/archivers/libarchive/files/doc/text/archive_write_free.3.txt b/archivers/libarchive/files/doc/text/archive_write_free.3.txt
index d599ca3bdca..b275b67a277 100644
--- a/archivers/libarchive/files/doc/text/archive_write_free.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_write_free.3.txt
@@ -38,8 +38,8 @@ DESCRIPTION
This is a deprecated synonym for archive_write_free().
archive_write_free()
- Invokes archive_write_close() if necessary, then releases all
- resources. If you need detailed information about
+ Invokes archive_write_close() if necessary, then releases all re‐
+ sources. If you need detailed information about
archive_write_close() failures, you should be careful to call it
separately, as you cannot obtain error information after
archive_write_free() returns.
diff --git a/archivers/libarchive/files/doc/text/archive_write_open.3.txt b/archivers/libarchive/files/doc/text/archive_write_open.3.txt
index 734135993a2..38ad962fcf4 100644
--- a/archivers/libarchive/files/doc/text/archive_write_open.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_write_open.3.txt
@@ -33,9 +33,9 @@ DESCRIPTION
archive_write_open()
Freeze the settings, open the archive, and prepare for writing
entries. This is the most generic form of this function, which
- accepts pointers to three callback functions which will be
- invoked by the compression layer to write the constructed ar‐
- chive. This does not alter the default archive padding.
+ accepts pointers to three callback functions which will be in‐
+ voked by the compression layer to write the constructed archive.
+ This does not alter the default archive padding.
archive_write_open_fd()
A convenience form of archive_write_open() that accepts a file
@@ -60,8 +60,8 @@ DESCRIPTION
archive_write_open_filename() will adjust the last-block padding
depending on the file: it will enable padding when writing to
standard output or to a character or block device node, it will
- disable padding otherwise. You can override this by manually
- invoking archive_write_set_bytes_in_last_block() before calling
+ disable padding otherwise. You can override this by manually in‐
+ voking archive_write_set_bytes_in_last_block() before calling
archive_write_open(). The archive_write_open_filename() function
is safe for use with tape drives or other block-oriented devices.
@@ -90,8 +90,8 @@ CLIENT CALLBACKS
The open callback is invoked by archive_write_open(). It should return
ARCHIVE_OK if the underlying file or data source is successfully opened.
- If the open fails, it should call archive_set_error() to register an
- error code and message and return ARCHIVE_FATAL.
+ If the open fails, it should call archive_set_error() to register an er‐
+ ror code and message and return ARCHIVE_FATAL.
typedef la_ssize_t archive_write_callback(struct archive *,
void *client_data, const void *buffer, size_t length)
diff --git a/archivers/libarchive/files/doc/text/archive_write_set_options.3.txt b/archivers/libarchive/files/doc/text/archive_write_set_options.3.txt
index 2a10224fb08..9bf03e2e456 100644
--- a/archivers/libarchive/files/doc/text/archive_write_set_options.3.txt
+++ b/archivers/libarchive/files/doc/text/archive_write_set_options.3.txt
@@ -124,8 +124,8 @@ OPTIONS
fier in the ISO9660 metadata. It is limited to 32 bytes.
Default: none.
Format iso9660 - boot support
- These options are used to make an ISO9660 image that can be
- directly booted on various systems.
+ These options are used to make an ISO9660 image that can be di‐
+ rectly booted on various systems.
boot=filename
The file matching this name will be used as the El Torito
boot image file.
@@ -151,16 +151,16 @@ OPTIONS
Specifies the boot semantics used by the El Torito boot
image: If the value is fd, then the boot image is assumed
to be a bootable floppy image. If the value is hd, then
- the boot image is assumed to be a bootable hard disk
- image. If the value is no-emulation, the boot image is
+ the boot image is assumed to be a bootable hard disk im‐
+ age. If the value is no-emulation, the boot image is
used without floppy or hard disk emulation. If the boot
- image is exactly 1.2MB, 1.44MB, or 2.88MB, then the
- default is fd, otherwise the default is no-emulation.
+ image is exactly 1.2MB, 1.44MB, or 2.88MB, then the de‐
+ fault is fd, otherwise the default is no-emulation.
Format iso9660 - filename and size extensions
Various extensions to the base ISO9660 format.
allow-ldots
- If enabled, allows filenames to begin with a leading
- period. If disabled, filenames that begin with a leading
+ If enabled, allows filenames to begin with a leading pe‐
+ riod. If disabled, filenames that begin with a leading
period will have that period replaced by an underscore
character in the standard ISO9660 namespace. This does
not impact names stored in the Rockridge or Joliet exten‐
@@ -173,8 +173,8 @@ OPTIONS
allow-multidot
If enabled, allows filenames to contain multiple period
characters, in violation of the ISO9660 specification.
- If disabled, additional periods will be converted to
- underscore characters. This does not impact names stored
+ If disabled, additional periods will be converted to un‐
+ derscore characters. This does not impact names stored
in the Rockridge or Joliet extension area. Default: dis‐
abled.
allow-period
@@ -260,8 +260,8 @@ OPTIONS
default.
compression-level=number
The compression level used by the deflate compressor.
- Ranges from 0 (least effort) to 9 (most effort).
- Default: 6
+ Ranges from 0 (least effort) to 9 (most effort). De‐
+ fault: 6
zisofs Synonym for zisofs=direct.
zisofs=direct
Compress each file in the archive. Unlike
@@ -298,9 +298,9 @@ OPTIONS
hdrcharset
This sets the character set used for filenames.
zip64 Zip64 extensions provide additional file size information
- for entries larger than 4 GiB. They also provide
- extended file offset and archive size information when
- archives exceed 4 GiB. By default, the Zip writer selec‐
+ for entries larger than 4 GiB. They also provide ex‐
+ tended file offset and archive size information when ar‐
+ chives exceed 4 GiB. By default, the Zip writer selec‐
tively enables these extensions only as needed. In par‐
ticular, if the file size is unknown, the Zip writer will
include Zip64 extensions to guard against the possibility
@@ -313,8 +313,8 @@ OPTIONS
Disabling this option with !zip64 will force the Zip
writer to avoid Zip64 extensions: It will reject files
- with size greater than 4 GiB, it will reject any new
- entries once the total archive size reaches 4 GiB, and it
+ with size greater than 4 GiB, it will reject any new en‐
+ tries once the total archive size reaches 4 GiB, and it
will not use Zip64 extensions for files with unknown
size. In particular, this can improve compatibility when
generating archives where the entry sizes are not known
diff --git a/archivers/libarchive/files/doc/text/bsdcpio.1.txt b/archivers/libarchive/files/doc/text/bsdcpio.1.txt
index 34e5c8ca2cd..0e069323cc8 100644
--- a/archivers/libarchive/files/doc/text/bsdcpio.1.txt
+++ b/archivers/libarchive/files/doc/text/bsdcpio.1.txt
@@ -202,8 +202,8 @@ OPTIONS
bzip2 compression is recognized automatically on input.
-Z (o mode only) Compress the archive with compress-compatible com‐
- pression before writing it. In input mode, this option is
- ignored; compression is recognized automatically on input.
+ pression before writing it. In input mode, this option is ig‐
+ nored; compression is recognized automatically on input.
-z (o mode only) Compress the archive with gzip-compatible compres‐
sion before writing it. In input mode, this option is ignored;
diff --git a/archivers/libarchive/files/doc/text/bsdtar.1.txt b/archivers/libarchive/files/doc/text/bsdtar.1.txt
index 69e12c41080..c840c0175f6 100644
--- a/archivers/libarchive/files/doc/text/bsdtar.1.txt
+++ b/archivers/libarchive/files/doc/text/bsdtar.1.txt
@@ -33,16 +33,16 @@ DESCRIPTION
ular files. The -f option is required. The long form is
--update.
-x Extract to disk from the archive. If a file with the same name
- appears more than once in the archive, each copy will be
- extracted, with later copies overwriting (replacing) earlier
+ appears more than once in the archive, each copy will be ex‐
+ tracted, with later copies overwriting (replacing) earlier
copies. The long option form is --extract.
In -c, -r, or -u mode, each specified file or directory is added to the
archive in the order specified on the command line. By default, the con‐
tents of each directory are also archived.
- In extract or list mode, the entire command line is read and parsed
- before the archive is opened. The pathnames or patterns on the command
+ In extract or list mode, the entire command line is read and parsed be‐
+ fore the archive is opened. The pathnames or patterns on the command
line indicate which items in the archive should be processed. Patterns
are shell-style globbing patterns as documented in tcsh(1).
@@ -51,9 +51,9 @@ OPTIONS
ating modes.
@archive
- (c and r modes only) The specified archive is opened and the
- entries in it will be appended to the current archive. As a sim‐
- ple example,
+ (c and r modes only) The specified archive is opened and the en‐
+ tries in it will be appended to the current archive. As a simple
+ example,
tar -c -f - newfile @original.tar
writes a new archive to standard output containing a file newfile
and all of the entries from original.tar. In contrast,
@@ -77,8 +77,8 @@ OPTIONS
tar -a -cf archive.zip source.c source.h
creates a new archive with zip format,
tar -a -jcf archive.tgz source.c source.h
- ignores the “-j” option, and creates a new archive with
- restricted pax format and gzip compression,
+ ignores the “-j” option, and creates a new archive with re‐
+ stricted pax format and gzip compression,
tar -a -jcf archive.xxx source.c source.h
if it is unknown suffix or no suffix, creates a new archive with
restricted pax format and bzip2 compression.
@@ -110,18 +110,24 @@ OPTIONS
--clear-nochange-fflags
(x mode only) Before removing file system objects to replace
- them, clear platform-specific file flags that might prevent
- removal.
+ them, clear platform-specific file attributes or file flags that
+ might prevent removal.
--exclude pattern
Do not process files or directories that match the specified pat‐
tern. Note that exclusions take precedence over patterns or
filenames specified on the command line.
+ --exclude-vcs
+ Do not process files or directories internally used by the ver‐
+ sion control systems ‘CVS’, ‘RCS’, ‘SCCS’, ‘SVN’, ‘Arch’,
+ ‘Bazaar’, ‘Mercurial’ and ‘Darcs’.
+
--fflags
- (c, r, u, x modes only) Archive or extract file flags. This is
- the reverse of --no-fflags and the default behavior in c, r, and
- u modes or if tar is run in x mode as root.
+ (c, r, u, x modes only) Archive or extract platform-specific file
+ attributes or file flags. This is the reverse of --no-fflags and
+ the default behavior in c, r, and u modes or if tar is run in x
+ mode as root.
--format format
(c, r, u mode only) Use the specified format for the created ar‐
@@ -164,8 +170,8 @@ OPTIONS
--help Show usage.
--hfsCompression
- (x mode only) Mac OS X specific (v10.6 or later). Compress
- extracted regular files with HFS+ compression.
+ (x mode only) Mac OS X specific (v10.6 or later). Compress ex‐
+ tracted regular files with HFS+ compression.
--ignore-zeros
An alias of --options read_concatenated_archives for compatibil‐
@@ -183,10 +189,10 @@ OPTIONS
old.tgz containing the string ‘foo’.
-J, --xz
- (c mode only) Compress the resulting archive with xz(1). In
- extract or list modes, this option is ignored. Note that this
- tar implementation recognizes XZ compression automatically when
- reading archives.
+ (c mode only) Compress the resulting archive with xz(1). In ex‐
+ tract or list modes, this option is ignored. Note that this tar
+ implementation recognizes XZ compression automatically when read‐
+ ing archives.
-j, --bzip, --bzip2, --bunzip2
(c mode only) Compress the resulting archive with bzip2(1). In
@@ -229,11 +235,10 @@ OPTIONS
pression automatically when reading archives.
--lzma (c mode only) Compress the resulting archive with the original
- LZMA algorithm. In extract or list modes, this option is
- ignored. Use of this option is discouraged and new archives
- should be created with --xz instead. Note that this tar imple‐
- mentation recognizes LZMA compression automatically when reading
- archives.
+ LZMA algorithm. In extract or list modes, this option is ig‐
+ nored. Use of this option is discouraged and new archives should
+ be created with --xz instead. Note that this tar implementation
+ recognizes LZMA compression automatically when reading archives.
--lzop (c mode only) Compress the resulting archive with lzop(1). In
extract or list modes, this option is ignored. Note that this
@@ -246,22 +251,21 @@ OPTIONS
--mac-metadata
(c, r, u and x mode only) Mac OS X specific. Archive or extract
- extended ACLs and extended attributes using copyfile(3) in Apple‐
- Double format. This is the reverse of --no-mac-metadata. and the
- default behavior in c, r, and u modes or if tar is run in x mode
- as root.
+ extended ACLs and extended file attributes using copyfile(3) in
+ AppleDouble format. This is the reverse of --no-mac-metadata.
+ and the default behavior in c, r, and u modes or if tar is run in
+ x mode as root.
-n, --norecurse, --no-recursion
- (c, r, u modes only) Do not recursively archive the contents of
- directories.
+ Do not operate recursively on the content of directories.
--newer date
(c, r, u modes only) Only include files and directories newer
than the specified date. This compares ctime entries.
--newer-mtime date
- (c, r, u modes only) Like --newer, except it compares mtime
- entries instead of ctime entries.
+ (c, r, u modes only) Like --newer, except it compares mtime en‐
+ tries instead of ctime entries.
--newer-than file
(c, r, u modes only) Only include files and directories newer
@@ -292,17 +296,15 @@ OPTIONS
in c, r, u and x modes).
--no-fflags
- (c, r, u, x modes only) Do not archive or extract file flags.
- This is the reverse of --fflags and the default behavior if tar
- is run as non-root in x mode.
+ (c, r, u, x modes only) Do not archive or extract file attributes
+ or file flags. This is the reverse of --fflags and the default
+ behavior if tar is run as non-root in x mode.
--no-mac-metadata
(x mode only) Mac OS X specific. Do not archive or extract ACLs
- and extended attributes using copyfile(3) in AppleDouble format.
- This is the reverse of --mac-metadata. and the default behavior
- if tar is run as non-root in x mode.
-
- -n, --norecurse, --no-recursion
+ and extended file attributes using copyfile(3) in AppleDouble
+ format. This is the reverse of --mac-metadata. and the default
+ behavior if tar is run as non-root in x mode.
--no-same-owner
(x mode only) Do not extract owner and group IDs. This is the
@@ -311,14 +313,14 @@ OPTIONS
--no-same-permissions
(x mode only) Do not extract full permissions (SGID, SUID, sticky
- bit, ACLs, extended attributes or extended file flags). This is
- the reverse of -p and the default behavior if tar is run as non-
- root.
+ bit, file attributes or file flags, extended file attributes and
+ ACLs). This is the reverse of -p and the default behavior if tar
+ is run as non-root.
--no-xattrs
- (c, r, u, x modes only) Do not archive or extract extended
- attributes. This is the reverse of --xattrs and the default
- behavior if tar is run as non-root in x mode.
+ (c, r, u, x modes only) Do not archive or extract extended file
+ attributes. This is the reverse of --xattrs and the default be‐
+ havior if tar is run as non-root in x mode.
--numeric-owner
This is equivalent to --uname "" --gname "". On extract, it
@@ -346,8 +348,8 @@ OPTIONS
than the specified date. This compares ctime entries.
--older-mtime date
- (c, r, u modes only) Like --older, except it compares mtime
- entries instead of ctime entries.
+ (c, r, u modes only) Like --older, except it compares mtime en‐
+ tries instead of ctime entries.
--older-than file
(c, r, u modes only) Only include files and directories older
@@ -382,8 +384,8 @@ OPTIONS
Support Joliet extensions. This is enabled by default,
use !joliet or iso9660:!joliet to disable.
iso9660:rockridge
- Support Rock Ridge extensions. This is enabled by
- default, use !rockridge or iso9660:!rockridge to disable.
+ Support Rock Ridge extensions. This is enabled by de‐
+ fault, use !rockridge or iso9660:!rockridge to disable.
gzip:compression-level
A decimal integer from 1 to 9 specifying the gzip com‐
pression level.
@@ -460,17 +462,17 @@ OPTIONS
begin with a / character) have the leading slash removed both
when creating archives and extracting from them. Also, tar will
refuse to extract archive entries whose pathnames contain .. or
- whose target directory would be altered by a symlink. This
- option suppresses these behaviors.
+ whose target directory would be altered by a symlink. This op‐
+ tion suppresses these behaviors.
-p, --insecure, --preserve-permissions
(x mode only) Preserve file permissions. Attempt to restore the
- full permissions, including owner, file modes, ACLs, extended
- attributes and extended file flags, if available, for each item
- extracted from the archive. This is te reverse of
- --no-same-permissions and the default if tar is being run by root
- and can be partially overridden by also specifying --no-acls,
- --no-fflags, --no-mac-metadata or --no-xattrs.
+ full permissions, including file modes, file attributes or file
+ flags, extended file attributes and ACLs, if available, for each
+ item extracted from the archive. This is the reverse of
+ --no-same-permissions and the default if tar is being run as
+ root. It can be partially overridden by also specifying
+ --no-acls, --no-fflags, --no-mac-metadata or --no-xattrs.
--passphrase passphrase
The passphrase is used to extract or create an encrypted archive.
@@ -486,8 +488,8 @@ OPTIONS
that matches each pattern or filename operand. Exit as soon as
each specified pattern or filename has been matched. By default,
the archive is always read to the very end, since there can be
- multiple entries with the same name and, by convention, later
- entries overwrite earlier entries. This option is provided as a
+ multiple entries with the same name and, by convention, later en‐
+ tries overwrite earlier entries. This option is provided as a
performance optimization.
-S (x mode only) Extract files as sparse files. For every block on
@@ -531,8 +533,8 @@ OPTIONS
from filename. In c mode, tar will read names to be archived
from filename. The special name “-C” on a line by itself will
cause the current directory to be changed to the directory speci‐
- fied on the following line. Names are terminated by newlines
- unless --null is specified. Note that --null also disables the
+ fied on the following line. Names are terminated by newlines un‐
+ less --null is specified. Note that --null also disables the
special handling of lines containing “-C”. Note: If you are
generating lists of files using find(1), you probably want to use
-n as well.
@@ -545,9 +547,9 @@ OPTIONS
(x mode only) Unlink files before creating them. This can be a
minor performance optimization if most files already exist, but
can make things slower if most files do not already exist. This
- flag also causes tar to remove intervening directory symlinks
- instead of reporting an error. See the SECURITY section below
- for more details.
+ flag also causes tar to remove intervening directory symlinks in‐
+ stead of reporting an error. See the SECURITY section below for
+ more details.
--uid id
Use the provided user id number and ignore the user name from the
@@ -584,9 +586,9 @@ OPTIONS
--exclude for more information about the handling of exclusions.
--xattrs
- (c, r, u, x modes only) Archive or extract extended attributes.
- This is the reverse of --no-xattrs and the default behavior in c,
- r, and u modes or if tar is run in x mode as root.
+ (c, r, u, x modes only) Archive or extract extended file at‐
+ tributes. This is the reverse of --no-xattrs and the default be‐
+ havior in c, r, and u modes or if tar is run in x mode as root.
-y (c mode only) Compress the resulting archive with bzip2(1). In
extract or list modes, this option is ignored. Note that this
@@ -652,8 +654,8 @@ EXAMPLES
tar -c -f new.tar foo1 @old.tgz -C/tmp foo2
will create a new archive new.tar. tar will read the file foo1 from the
current directory and add it to the output archive. It will then read
- each entry from old.tgz and add those entries to the output archive.
- Finally, it will switch to the /tmp directory and add foo2 to the output
+ each entry from old.tgz and add those entries to the output archive. Fi‐
+ nally, it will switch to the /tmp directory and add foo2 to the output
archive.
An input file in mtree(5) format can be used to create an output archive
@@ -704,25 +706,25 @@ COMPATIBILITY
SECURITY
Certain security issues are common to many archiving programs, including
- tar. In particular, carefully-crafted archives can request that tar
- extract files to locations outside of the target directory. This can
- potentially be used to cause unwitting users to overwrite files they did
+ tar. In particular, carefully-crafted archives can request that tar ex‐
+ tract files to locations outside of the target directory. This can po‐
+ tentially be used to cause unwitting users to overwrite files they did
not intend to overwrite. If the archive is being extracted by the supe‐
ruser, any file on the system can potentially be overwritten. There are
three ways this can happen. Although tar has mechanisms to protect
against each one, savvy users should be aware of the implications:
- · Archive entries can have absolute pathnames. By default, tar
- removes the leading / character from filenames before restoring
+ • Archive entries can have absolute pathnames. By default, tar re‐
+ moves the leading / character from filenames before restoring
them to guard against this problem.
- · Archive entries can have pathnames that include .. components.
+ • Archive entries can have pathnames that include .. components.
By default, tar will not extract files containing .. components
in their pathname.
- · Archive entries can exploit symbolic links to restore files to
- other directories. An archive can restore a symbolic link to
- another directory, then use that link to restore a file into that
+ • Archive entries can exploit symbolic links to restore files to
+ other directories. An archive can restore a symbolic link to an‐
+ other directory, then use that link to restore a file into that
directory. To guard against this, tar checks each extracted path
for symlinks. If the final path element is a symlink, it will be
removed and replaced with the archive entry. If -U is specified,
@@ -733,8 +735,8 @@ SECURITY
untrusted sources. You should examine the contents of an archive with
tar -tf filename
before extraction. You should use the -k option to ensure that tar will
- not overwrite any existing files or the -U option to remove any pre-
- existing files. You should generally not extract archives while running
+ not overwrite any existing files or the -U option to remove any pre-ex‐
+ isting files. You should generally not extract archives while running
with super-user privileges. Note that the -P option to tar disables the
security checks above and allows you to extract an archive while preserv‐
ing any absolute pathnames, .. components, or symlinks to other directo‐
@@ -757,9 +759,9 @@ STANDARDS
HISTORY
A tar command appeared in Seventh Edition Unix, which was released in
January, 1979. There have been numerous other implementations, many of
- which extended the file format. John Gilmore's pdtar public-domain
- implementation (circa November, 1987) was quite influential, and formed
- the basis of GNU tar. GNU tar was included as the standard system tar in
+ which extended the file format. John Gilmore's pdtar public-domain im‐
+ plementation (circa November, 1987) was quite influential, and formed the
+ basis of GNU tar. GNU tar was included as the standard system tar in
FreeBSD beginning with FreeBSD 1.0.
This is a complete re-implementation based on the libarchive(3) library.
@@ -774,10 +776,10 @@ BUGS
All archive output is written in correctly-sized blocks, even if the out‐
put is being compressed. Whether or not the last output block is padded
- to a full block size varies depending on the format and the output
- device. For tar and cpio formats, the last block of output is padded to
- a full block size if the output is being written to standard output or to
- a character or block device such as a tape drive. If the output is being
+ to a full block size varies depending on the format and the output de‐
+ vice. For tar and cpio formats, the last block of output is padded to a
+ full block size if the output is being written to standard output or to a
+ character or block device such as a tape drive. If the output is being
written to a regular file, the last block will not be padded. Many com‐
pressors, including gzip(1) and bzip2(1), complain about the null padding
when decompressing an archive created by tar, although they still extract
@@ -807,9 +809,9 @@ BUGS
There is not yet any support for multi-volume archives.
- Converting between dissimilar archive formats (such as tar and cpio)
- using the @- convention can cause hard link information to be lost.
- (This is a consequence of the incompatible ways that different archive
- formats store hardlink information.)
+ Converting between dissimilar archive formats (such as tar and cpio) us‐
+ ing the @- convention can cause hard link information to be lost. (This
+ is a consequence of the incompatible ways that different archive formats
+ store hardlink information.)
-BSD October 1, 2017 BSD
+BSD June 3, 2019 BSD
diff --git a/archivers/libarchive/files/doc/text/cpio.5.txt b/archivers/libarchive/files/doc/text/cpio.5.txt
index 395a560aa76..1862129dc93 100644
--- a/archivers/libarchive/files/doc/text/cpio.5.txt
+++ b/archivers/libarchive/files/doc/text/cpio.5.txt
@@ -13,9 +13,9 @@ DESCRIPTION
basic numeric metadata followed by the full pathname of the entry and the
file data. The header record stores a series of integer values that gen‐
erally follow the fields in struct stat. (See stat(2) for details.) The
- variants differ primarily in how they store those integers (binary,
- octal, or hexadecimal). The header is followed by the pathname of the
- entry (the length of the pathname is stored in the header) and any file
+ variants differ primarily in how they store those integers (binary, oc‐
+ tal, or hexadecimal). The header is followed by the pathname of the en‐
+ try (the length of the pathname is stored in the header) and any file
data. The end of the archive is indicated by a special record with the
pathname “TRAILER!!!”.
@@ -184,8 +184,8 @@ DESCRIPTION
numbers differently XXX.
Other Extensions and Variants
- Sun Solaris uses additional file types to store extended file data,
- including ACLs and extended attributes, as special entries in cpio ar‐
+ Sun Solaris uses additional file types to store extended file data, in‐
+ cluding ACLs and extended attributes, as special entries in cpio ar‐
chives.
XXX Others? XXX
@@ -215,11 +215,11 @@ BUGS
The “CRC” format is mis-named, as it uses a simple checksum and not a
cyclic redundancy check.
- The old binary format is limited to 16 bits for user id, group id,
- device, and inode numbers. It is limited to 4 gigabyte file sizes.
+ The old binary format is limited to 16 bits for user id, group id, de‐
+ vice, and inode numbers. It is limited to 4 gigabyte file sizes.
- The old ASCII format is limited to 18 bits for the user id, group id,
- device, and inode numbers. It is limited to 8 gigabyte file sizes.
+ The old ASCII format is limited to 18 bits for the user id, group id, de‐
+ vice, and inode numbers. It is limited to 8 gigabyte file sizes.
The new ASCII format is limited to 4 gigabyte file sizes.
diff --git a/archivers/libarchive/files/doc/text/libarchive-formats.5.txt b/archivers/libarchive/files/doc/text/libarchive-formats.5.txt
index fe095e36b45..253bd3d62c9 100644
--- a/archivers/libarchive/files/doc/text/libarchive-formats.5.txt
+++ b/archivers/libarchive/files/doc/text/libarchive-formats.5.txt
@@ -27,8 +27,8 @@ DESCRIPTION
and mode information, and the file data is stored in subsequent records.
Later variants have extended this by either appropriating undefined areas
of the header record, extending the header to multiple records, or by
- storing special entries that modify the interpretation of subsequent
- entries.
+ storing special entries that modify the interpretation of subsequent en‐
+ tries.
gnutar The libarchive(3) library can read most GNU-format tar archives.
It currently supports the most popular GNU extensions, including
@@ -45,12 +45,12 @@ DESCRIPTION
interchange format archives. Pax interchange format archives are
an extension of the older ustar format that adds a separate entry
with additional attributes stored as key/value pairs immediately
- before each regular entry. The presence of these additional
- entries is the only difference between pax interchange format and
+ before each regular entry. The presence of these additional en‐
+ tries is the only difference between pax interchange format and
the older ustar format. The extended attributes are of unlimited
length and are stored as UTF-8 Unicode strings. Keywords defined
- in the standard are in all lowercase; vendors are allowed to
- define custom keys by preceding them with the vendor name in all
+ in the standard are in all lowercase; vendors are allowed to de‐
+ fine custom keys by preceding them with the vendor name in all
uppercase. When writing pax archives, libarchive uses many of
the SCHILY keys defined by Joerg Schilling's “star” archiver and
a few LIBARCHIVE keys. The libarchive library can read most of
@@ -61,8 +61,8 @@ DESCRIPTION
stores them using the UTF-8 encoding. Prior to libarchive 3.0,
libarchive erroneously assumed that the system wide-character
routines natively supported Unicode. This caused it to mis-han‐
- dle non-ASCII filenames on systems that did not satisfy this
- assumption.
+ dle non-ASCII filenames on systems that did not satisfy this as‐
+ sumption.
restricted pax
The libarchive library can also write pax archives in which it
@@ -71,43 +71,43 @@ DESCRIPTION
the extended attributes entry is required to store a long file
name, long linkname, extended ACL, file flags, or if any of the
standard ustar data (user name, group name, UID, GID, etc) cannot
- be fully represented in the ustar header. In all cases, the
- result can be dearchived by any program that can read POSIX-com‐
- pliant pax interchange format archives. Programs that correctly
+ be fully represented in the ustar header. In all cases, the re‐
+ sult can be dearchived by any program that can read POSIX-compli‐
+ ant pax interchange format archives. Programs that correctly
read ustar format (see below) will also be able to read this for‐
mat; any extended attributes will be extracted as separate files
stored in PaxHeader directories.
ustar The libarchive library can both read and write this format. This
format has the following limitations:
- · Device major and minor numbers are limited to 21 bits. Nodes
+ • Device major and minor numbers are limited to 21 bits. Nodes
with larger numbers will not be added to the archive.
- · Path names in the archive are limited to 255 bytes. (Shorter
+ • Path names in the archive are limited to 255 bytes. (Shorter
if there is no / character in exactly the right place.)
- · Symbolic links and hard links are stored in the archive with
+ • Symbolic links and hard links are stored in the archive with
the name of the referenced file. This name is limited to 100
bytes.
- · Extended attributes, file flags, and other extended security
+ • Extended attributes, file flags, and other extended security
information cannot be stored.
- · Archive entries are limited to 8 gigabytes in size.
+ • Archive entries are limited to 8 gigabytes in size.
Note that the pax interchange format has none of these restric‐
tions. The ustar format is old and widely supported. It is rec‐
ommended when compatibility is the primary concern.
v7 The libarchive library can read and write the legacy v7 tar for‐
mat. This format has the following limitations:
- · Only regular files, directories, and symbolic links can be
+ • Only regular files, directories, and symbolic links can be
archived. Block and character device nodes, FIFOs, and sock‐
ets cannot be archived.
- · Path names in the archive are limited to 100 bytes.
- · Symbolic links and hard links are stored in the archive with
+ • Path names in the archive are limited to 100 bytes.
+ • Symbolic links and hard links are stored in the archive with
the name of the referenced file. This name is limited to 100
bytes.
- · User and group information are stored as numeric IDs; there
+ • User and group information are stored as numeric IDs; there
is no provision for storing user or group names.
- · Extended attributes, file flags, and other extended security
+ • Extended attributes, file flags, and other extended security
information cannot be stored.
- · Archive entries are limited to 8 gigabytes in size.
+ • Archive entries are limited to 8 gigabytes in size.
Generally, users should prefer the ustar format for portability
as the v7 tar format is both less useful and less portable.
@@ -119,9 +119,9 @@ DESCRIPTION
The POSIX standards require fixed-length numeric fields to be
written with some character position reserved for terminators.
Libarchive allows these fields to be written without terminator
- characters. This extends the allowable range; in particular,
- ustar archives with this extension can support entries up to 64
- gigabytes in size. Libarchive also recognizes base-256 values in
+ characters. This extends the allowable range; in particular, us‐
+ tar archives with this extension can support entries up to 64 gi‐
+ gabytes in size. Libarchive also recognizes base-256 values in
most numeric fields. This essentially removes all limitations on
file size, modification time, and device numbers.
@@ -206,16 +206,16 @@ DESCRIPTION
CDROM images. In many cases, this can remove the need to burn a physical
CDROM just in order to read the files contained in an ISO9660 image. It
also avoids security and complexity issues that come with virtual mounts
- and loopback devices. Libarchive supports the most common Rockridge
- extensions and has partial support for Joliet extensions. If both exten‐
+ and loopback devices. Libarchive supports the most common Rockridge ex‐
+ tensions and has partial support for Joliet extensions. If both exten‐
sions are present, the Joliet extensions will be used and the Rockridge
extensions will be ignored. In particular, this can create problems with
hardlinks and symlinks, which are supported by Rockridge but not by
Joliet.
Libarchive reads ISO9660 images using a streaming strategy. This allows
- it to read compressed images directly (decompressing on the fly) and
- allows it to read images directly from network sockets, pipes, and other
+ it to read compressed images directly (decompressing on the fly) and al‐
+ lows it to read images directly from network sockets, pipes, and other
non-seekable data sources. This strategy works well for optimized
ISO9660 images created by many popular programs. Such programs collect
all directory information at the beginning of the ISO9660 image so it can
@@ -237,20 +237,19 @@ DESCRIPTION
archives that use Zip64 extensions and self-extracting zip archives.
Libarchive can use either of two different strategies for reading Zip ar‐
chives: a streaming strategy which is fast and can handle extremely large
- archives, and a seeking strategy which can correctly process self-
- extracting Zip archives and archives with deleted members or other in-
- place modifications.
+ archives, and a seeking strategy which can correctly process self-ex‐
+ tracting Zip archives and archives with deleted members or other in-place
+ modifications.
The streaming reader processes Zip archives as they are read. It can
- read archives of arbitrary size from tape or network sockets, and can
- decode Zip archives that have been separately compressed or encoded.
- However, self-extracting Zip archives and archives with certain types of
+ read archives of arbitrary size from tape or network sockets, and can de‐
+ code Zip archives that have been separately compressed or encoded. How‐
+ ever, self-extracting Zip archives and archives with certain types of
modifications cannot be correctly handled. Such archives require that
- the reader first process the Central Directory, which is ordinarily
- located at the end of a Zip archive and is thus inaccessible to the
- streaming reader. If the program using libarchive has enabled seek sup‐
- port, then libarchive will use this to processes the central directory
- first.
+ the reader first process the Central Directory, which is ordinarily lo‐
+ cated at the end of a Zip archive and is thus inaccessible to the stream‐
+ ing reader. If the program using libarchive has enabled seek support,
+ then libarchive will use this to processes the central directory first.
In particular, the seeking reader must be used to correctly handle self-
extracting archives. Such archives consist of a program followed by a
@@ -273,18 +272,18 @@ DESCRIPTION
may include both types of long filenames. Programs using libarchive can
write GNU/SVR4 format if they provide an entry called // containing a
filename table to be written into the archive before any of the entries.
- Any entries whose names are not in the filename table will be written
- using BSD-style long filenames. This can cause problems for programs
- such as GNU ld that do not support the BSD-style long filenames.
+ Any entries whose names are not in the filename table will be written us‐
+ ing BSD-style long filenames. This can cause problems for programs such
+ as GNU ld that do not support the BSD-style long filenames.
mtree
Libarchive can read and write files in mtree(5) format. This format is
- not a true archive format, but rather a textual description of a file
- hierarchy in which each line specifies the name of a file and provides
- specific metadata about that file. Libarchive can read all of the key‐
- words supported by both the NetBSD and FreeBSD versions of mtree(8),
- although many of the keywords cannot currently be stored in an
- archive_entry object. When writing, libarchive supports use of the
+ not a true archive format, but rather a textual description of a file hi‐
+ erarchy in which each line specifies the name of a file and provides spe‐
+ cific metadata about that file. Libarchive can read all of the keywords
+ supported by both the NetBSD and FreeBSD versions of mtree(8), although
+ many of the keywords cannot currently be stored in an archive_entry ob‐
+ ject. When writing, libarchive supports use of the
archive_write_set_options(3) interface to specify which keywords should
be included in the output. If libarchive was compiled with access to
suitable cryptographic libraries (such as the OpenSSL libraries), it can
@@ -296,12 +295,12 @@ DESCRIPTION
name. If it can locate and open the file on disk, it will use that to
fill in any metadata that is missing from the mtree file and will read
the file contents and return those to the program using libarchive. If
- it cannot locate and open the file on disk, libarchive will return an
- error for any attempt to read the entry body.
+ it cannot locate and open the file on disk, libarchive will return an er‐
+ ror for any attempt to read the entry body.
7-Zip
- Libarchive can read and write 7-Zip format archives. TODO: Need more
- information
+ Libarchive can read and write 7-Zip format archives. TODO: Need more in‐
+ formation
CAB
Libarchive can read Microsoft Cabinet ( “CAB”) format archives. TODO:
diff --git a/archivers/libarchive/files/doc/text/libarchive.3.txt b/archivers/libarchive/files/doc/text/libarchive.3.txt
index 484642460dc..0e23b188bd6 100644
--- a/archivers/libarchive/files/doc/text/libarchive.3.txt
+++ b/archivers/libarchive/files/doc/text/libarchive.3.txt
@@ -15,19 +15,19 @@ OVERVIEW
When reading an archive, the library automatically detects the format and
the compression. The library currently has read support for:
- · old-style tar archives,
- · most variants of the POSIX “ustar” format,
- · the POSIX “pax interchange” format,
- · GNU-format tar archives,
- · most common cpio archive formats,
- · ISO9660 CD images (including RockRidge and Joliet extensions),
- · Zip archives,
- · ar archives (including GNU/SysV and BSD extensions),
- · Microsoft CAB archives,
- · LHA archives,
- · mtree file tree descriptions,
- · RAR archives,
- · XAR archives.
+ • old-style tar archives,
+ • most variants of the POSIX “ustar” format,
+ • the POSIX “pax interchange” format,
+ • GNU-format tar archives,
+ • most common cpio archive formats,
+ • ISO9660 CD images (including RockRidge and Joliet extensions),
+ • Zip archives,
+ • ar archives (including GNU/SysV and BSD extensions),
+ • Microsoft CAB archives,
+ • LHA archives,
+ • mtree file tree descriptions,
+ • RAR archives,
+ • XAR archives.
The library automatically detects archives compressed with gzip(1),
bzip2(1), xz(1), lzip(1), or compress(1) and decompresses them transpar‐
ently. It can similarly detect and decode archives processed with
@@ -35,23 +35,23 @@ OVERVIEW
When writing an archive, you can specify the compression to be used and
the format to use. The library can write
- · POSIX-standard “ustar” archives,
- · POSIX “pax interchange format” archives,
- · POSIX octet-oriented cpio archives,
- · Zip archive,
- · two different variants of shar archives,
- · ISO9660 CD images,
- · 7-Zip archives,
- · ar archives,
- · mtree file tree descriptions,
- · XAR archives.
+ • POSIX-standard “ustar” archives,
+ • POSIX “pax interchange format” archives,
+ • POSIX octet-oriented cpio archives,
+ • Zip archive,
+ • two different variants of shar archives,
+ • ISO9660 CD images,
+ • 7-Zip archives,
+ • ar archives,
+ • mtree file tree descriptions,
+ • XAR archives.
Pax interchange format is an extension of the tar archive format that
eliminates essentially all of the limitations of historic tar formats in
a standard fashion that is supported by POSIX-compliant pax(1) implemen‐
tations on many systems as well as several newer implementations of
- tar(1). Note that the default write format will suppress the pax
- extended attributes for most entries; explicitly requesting pax format
- will enable those attributes for all entries.
+ tar(1). Note that the default write format will suppress the pax ex‐
+ tended attributes for most entries; explicitly requesting pax format will
+ enable those attributes for all entries.
The read and write APIs are accessed through the archive_read_XXX() func‐
tions and the archive_write_XXX() functions, respectively, and either can
@@ -68,8 +68,8 @@ WRITING AN ARCHIVE
See archive_write(3).
WRITING ENTRIES TO DISK
- The archive_write_disk(3) API allows you to write archive_entry(3)
- objects to disk using the same API used by archive_write(3). The
+ The archive_write_disk(3) API allows you to write archive_entry(3) ob‐
+ jects to disk using the same API used by archive_write(3). The
archive_write_disk(3) API is used internally by archive_read_extract();
using it directly can provide greater control over how entries get writ‐
ten to disk. This API also makes it possible to share code between ar‐
@@ -106,10 +106,10 @@ RETURN VALUES
The return value indicates the general severity of the error, ranging
from ARCHIVE_WARN, which indicates a minor problem that should probably
be reported to the user, to ARCHIVE_FATAL, which indicates a serious
- problem that will prevent any further operations on this archive. On
- error, the archive_errno() function can be used to retrieve a numeric
- error code (see errno(2)). The archive_error_string() returns a textual
- error message suitable for display.
+ problem that will prevent any further operations on this archive. On er‐
+ ror, the archive_errno() function can be used to retrieve a numeric error
+ code (see errno(2)). The archive_error_string() returns a textual error
+ message suitable for display.
archive_read_new() and archive_write_new() return pointers to an allo‐
cated and initialized struct archive object.
@@ -137,10 +137,10 @@ AUTHORS
BUGS
Some archive formats support information that is not supported by struct
- archive_entry. Such information cannot be fully archived or restored
- using this library. This includes, for example, comments, character
- sets, or the arbitrary key/value pairs that can appear in pax interchange
- format archives.
+ archive_entry. Such information cannot be fully archived or restored us‐
+ ing this library. This includes, for example, comments, character sets,
+ or the arbitrary key/value pairs that can appear in pax interchange for‐
+ mat archives.
Conversely, of course, not all of the information that can be stored in
an struct archive_entry is supported by all formats. For example, cpio
diff --git a/archivers/libarchive/files/doc/text/libarchive_changes.3.txt b/archivers/libarchive/files/doc/text/libarchive_changes.3.txt
index 5203c9919fb..a52a742b905 100644
--- a/archivers/libarchive/files/doc/text/libarchive_changes.3.txt
+++ b/archivers/libarchive/files/doc/text/libarchive_changes.3.txt
@@ -19,8 +19,8 @@ CHANGES IN LIBARCHIVE 3
Libarchive2 assumed that the local platform uses Unicode as the native
wchar_t encoding, which is true on Windows, modern Linux, and a few other
systems, but is certainly not universal. As a result, pax format ar‐
- chives were written incorrectly on some systems, since pax format
- requires UTF-8 and libarchive 2 incorrectly assumed that wchar_t strings
+ chives were written incorrectly on some systems, since pax format re‐
+ quires UTF-8 and libarchive 2 incorrectly assumed that wchar_t strings
can be easily converted to UTF-8.
Libarchive3 uses the standard iconv library to convert between character
@@ -28,11 +28,11 @@ CHANGES IN LIBARCHIVE 3
archive”. To support this, archive_entry objects can now be bound to a
particular archive when they are created. The automatic character set
conversions performed by archive_entry objects when reading and writing
- filenames, usernames, and other strings will now use an appropriate
- default character set:
+ filenames, usernames, and other strings will now use an appropriate de‐
+ fault character set:
- If the archive_entry object is bound to an archive, it will use the
- default character set for that archive.
+ If the archive_entry object is bound to an archive, it will use the de‐
+ fault character set for that archive.
The platform default character encoding (as returned by
nl_langinfo(CHARSET)) will be used if nothing else is specified.
@@ -54,12 +54,12 @@ CHANGES IN LIBARCHIVE 3
There are a few cases where these changes will affect your source code:
- · In some cases, libarchive's wider types will introduce the possibil‐
+ • In some cases, libarchive's wider types will introduce the possibil‐
ity of truncation: for example, on a system with a 16-bit uid_t, you
risk having uid 65536 be truncated to uid 0, which can cause serious
security problems.
- · Typedef function pointer types will be incompatible. For example,
+ • Typedef function pointer types will be incompatible. For example,
if you define custom skip callbacks, you may have to use code simi‐
lar to the following if you want to support building against
libarchive2 and libarchive3:
@@ -78,19 +78,19 @@ CHANGES IN LIBARCHIVE 3
Affected functions:
- · archive_entry_gid(), archive_entry_set_gid()
- · archive_entry_uid(), archive_entry_set_uid()
- · archive_entry_ino(), archive_entry_set_ino()
- · archive_read_data_block(), archive_write_data_block()
- · archive_read_disk_gname(), archive_read_disk_uname()
- · archive_read_disk_set_gname_lookup(),
+ • archive_entry_gid(), archive_entry_set_gid()
+ • archive_entry_uid(), archive_entry_set_uid()
+ • archive_entry_ino(), archive_entry_set_ino()
+ • archive_read_data_block(), archive_write_data_block()
+ • archive_read_disk_gname(), archive_read_disk_uname()
+ • archive_read_disk_set_gname_lookup(),
archive_read_disk_set_group_lookup(),
archive_read_disk_set_uname_lookup(),
archive_read_disk_set_user_lookup()
- · archive_skip_callback()
- · archive_read_extract_set_skip_file(),
+ • archive_skip_callback()
+ • archive_read_extract_set_skip_file(),
archive_write_disk_set_skip_file(), archive_write_set_skip_file()
- · archive_write_disk_set_group_lookup(),
+ • archive_write_disk_set_group_lookup(),
archive_write_disk_set_user_lookup()
Where these functions or their arguments took or returned gid_t, ino_t,
diff --git a/archivers/libarchive/files/doc/text/libarchive_internals.3.txt b/archivers/libarchive/files/doc/text/libarchive_internals.3.txt
index 7b7fb35dd92..0d4a58bec81 100644
--- a/archivers/libarchive/files/doc/text/libarchive_internals.3.txt
+++ b/archivers/libarchive/files/doc/text/libarchive_internals.3.txt
@@ -108,12 +108,12 @@ READ ARCHITECTURE
The value returned by the bid function indicates its suitability
for handling this data stream. A bid of zero will ensure that
this decompressor is never invoked. Return zero if magic number
- checks fail. Otherwise, your initial implementation should
- return the number of bits actually checked. For example, if you
+ checks fail. Otherwise, your initial implementation should re‐
+ turn the number of bits actually checked. For example, if you
verify two full bytes and three bits of another byte, bid 19.
Note that the initial block may be very short; be careful to only
- inspect the data you are given. (The current decompressors
- require two bytes for correct bidding.)
+ inspect the data you are given. (The current decompressors re‐
+ quire two bytes for correct bidding.)
Initialize
The winning bidder will have its init function called. This
function should initialize the remaining slots of the struct
@@ -139,9 +139,9 @@ READ ARCHITECTURE
Bid Formats bid by invoking the read_ahead() decompression method but
not calling the consume() method. This allows each bidder to
look ahead in the input stream. Bidders should not look further
- ahead than necessary, as long look aheads put pressure on the
- decompression layer to buffer lots of data. Most formats only
- require a few hundred bytes of look ahead; look aheads of a few
+ ahead than necessary, as long look aheads put pressure on the de‐
+ compression layer to buffer lots of data. Most formats only re‐
+ quire a few hundred bytes of look ahead; look aheads of a few
kilobytes are reasonable. (The ISO9660 reader sometimes looks
ahead by 48k, which should be considered an upper limit.)
Read header
@@ -166,8 +166,8 @@ READ ARCHITECTURE
block just before you return it.
Skip All Data
The skip data call should skip over all file data and trailing
- padding. This is called automatically by the API layer just
- before each header read. It is also called in response to the
+ padding. This is called automatically by the API layer just be‐
+ fore each header read. It is also called in response to the
client calling the public data_skip() function.
Cleanup
On cleanup, the format should release all of its allocated mem‐
@@ -205,8 +205,8 @@ GENERAL SERVICES
standard services. (Recall that ANSI/ISO C90 guarantees that you can
cast freely between a pointer to a structure and a pointer to the first
element of that structure.) The archive object has a magic value that
- indicates which API this object is associated with, slots for storing
- error information, and function pointers for virtualized API functions.
+ indicates which API this object is associated with, slots for storing er‐
+ ror information, and function pointers for virtualized API functions.
MISCELLANEOUS NOTES
Connecting existing archiving libraries into libarchive is generally
@@ -217,8 +217,8 @@ MISCELLANEOUS NOTES
very different approaches.
For example, libarchive's ISO9660 support operates very differently from
- most ISO9660 readers. The libarchive support utilizes a work-queue
- design that keeps a list of known entries sorted by their location in the
+ most ISO9660 readers. The libarchive support utilizes a work-queue de‐
+ sign that keeps a list of known entries sorted by their location in the
input. Whenever libarchive's ISO9660 implementation is asked for the
next header, checks this list to find the next item on the disk. Direc‐
tories are parsed when they are encountered and new items are added to
diff --git a/archivers/libarchive/files/doc/text/mtree.5.txt b/archivers/libarchive/files/doc/text/mtree.5.txt
index 92d9ff581b1..22e4e2b2eee 100644
--- a/archivers/libarchive/files/doc/text/mtree.5.txt
+++ b/archivers/libarchive/files/doc/text/mtree.5.txt
@@ -14,8 +14,8 @@ DESCRIPTION
When encoding file or pathnames, any backslash character or character
outside of the 95 printable ASCII characters must be encoded as a back‐
- slash followed by three octal digits. When reading mtree files, any
- appearance of a backslash followed by three octal digits should be con‐
+ slash followed by three octal digits. When reading mtree files, any ap‐
+ pearance of a backslash followed by three octal digits should be con‐
verted into the corresponding character.
Each line is interpreted independently as one of the following types:
@@ -29,22 +29,22 @@ DESCRIPTION
Relative If the first whitespace-delimited word has no / characters,
it is the name of a file in the current directory. Any rela‐
- tive entry that describes a directory changes the current
- directory.
+ tive entry that describes a directory changes the current di‐
+ rectory.
dot-dot As a special case, a relative entry with the filename ..
- changes the current directory to the parent directory.
- Options on dot-dot entries are always ignored.
+ changes the current directory to the parent directory. Op‐
+ tions on dot-dot entries are always ignored.
- Full If the first whitespace-delimited word has a / character
- after the first character, it is the pathname of a file rela‐
+ Full If the first whitespace-delimited word has a / character af‐
+ ter the first character, it is the pathname of a file rela‐
tive to the starting directory. There can be multiple full
entries describing the same file.
- Some tools that process mtree files may require that multiple lines
- describing the same file occur consecutively. It is not permitted for
- the same file to be mentioned using both a relative and a full file spec‐
- ification.
+ Some tools that process mtree files may require that multiple lines de‐
+ scribing the same file occur consecutively. It is not permitted for the
+ same file to be mentioned using both a relative and a full file specifi‐
+ cation.
Special commands
Two special commands are currently defined:
diff --git a/archivers/libarchive/files/doc/text/tar.5.txt b/archivers/libarchive/files/doc/text/tar.5.txt
index e7c460979b3..72aaee19cec 100644
--- a/archivers/libarchive/files/doc/text/tar.5.txt
+++ b/archivers/libarchive/files/doc/text/tar.5.txt
@@ -14,8 +14,8 @@ DESCRIPTION
A tar archive consists of a series of 512-byte records. Each file system
object requires a header record which stores basic metadata (pathname,
owner, permissions, etc.) and zero or more records containing any file
- data. The end of the archive is indicated by two records consisting
- entirely of zero bytes.
+ data. The end of the archive is indicated by two records consisting en‐
+ tirely of zero bytes.
For compatibility with tape drives that use fixed block sizes, programs
that read or write tar files always read or write a fixed number of
@@ -67,8 +67,8 @@ DESCRIPTION
when extracting hardlinks. Modern writers should always store a
zero length for hardlink entries.
- mtime Modification time of file, as an octal number in ASCII. This
- indicates the number of seconds since the start of the epoch,
+ mtime Modification time of file, as an octal number in ASCII. This in‐
+ dicates the number of seconds since the start of the epoch,
00:00:00 UTC January 1, 1970. Note that negative values should
be avoided here, as they are handled inconsistently.
@@ -96,8 +96,8 @@ DESCRIPTION
(this is also documented in early BSD manpages): the pathname must be
null-terminated; the mode, uid, and gid fields must end in a space and a
null byte; the size and mtime fields must end in a space; the checksum is
- terminated by a null and a space. Early implementations filled the
- numeric fields with leading spaces. This seems to have been common prac‐
+ terminated by a null and a space. Early implementations filled the nu‐
+ meric fields with leading spaces. This seems to have been common prac‐
tice until the IEEE Std 1003.1-1988 (“POSIX.1”) standard was released.
For best portability, modern implementations should fill the numeric
fields with leading zeros.
@@ -107,12 +107,12 @@ DESCRIPTION
for John Gilmore's pdtar program and many system implementations from the
late 1980s and early 1990s. These archives generally follow the POSIX
ustar format described below with the following variations:
- · The magic value consists of the five characters “ustar” followed
+ • The magic value consists of the five characters “ustar” followed
by a space. The version field contains a space character fol‐
lowed by a null.
- · The numeric fields are generally filled with leading spaces (not
+ • The numeric fields are generally filled with leading spaces (not
leading zeros as recommended in the final standard).
- · The prefix field is often not used, limiting pathnames to the 100
+ • The prefix field is often not used, limiting pathnames to the 100
characters of old-style archives.
POSIX ustar Archives
@@ -165,13 +165,13 @@ DESCRIPTION
ferent meanings depending on the type. For regular files, of
course, it indicates the amount of data following the header.
For directories, it may be used to indicate the total size of all
- files in the directory, for use by operating systems that pre-
- allocate directory space. For all other types, it should be set
- to zero by writers and ignored by readers.
+ files in the directory, for use by operating systems that pre-al‐
+ locate directory space. For all other types, it should be set to
+ zero by writers and ignored by readers.
magic Contains the magic value “ustar” followed by a NUL byte to indi‐
- cate that this is a POSIX standard archive. Full compliance
- requires the uname and gname fields be properly set.
+ cate that this is a POSIX standard archive. Full compliance re‐
+ quires the uname and gname fields be properly set.
version
Version. This should be “00” (two copies of the ASCII digit
@@ -183,8 +183,8 @@ DESCRIPTION
set and the corresponding names exist on the system.
devmajor, devminor
- Major and minor numbers for character device or block device
- entry.
+ Major and minor numbers for character device or block device en‐
+ try.
name, prefix
If the pathname is too long to fit in the 100 bytes provided by
@@ -249,8 +249,8 @@ DESCRIPTION
can be examined as necessary.
An entry in a pax interchange format archive consists of one or two stan‐
- dard ustar entries, each with its own header and data. The first
- optional entry stores the extended attributes for the following entry.
+ dard ustar entries, each with its own header and data. The first op‐
+ tional entry stores the extended attributes for the following entry.
This optional first entry has an "x" typeflag and a size field that indi‐
cates the total size of the extended attributes. The extended attributes
themselves are stored as a series of text-format lines encoded in the
@@ -276,8 +276,8 @@ DESCRIPTION
be in UTF-8, including pathnames, user names, and group names.
In some cases, it is not possible to translate local conventions
into UTF-8. If this key is present and the value is the six-
- character ASCII string “BINARY”, then all textual values are
- assumed to be in a platform-dependent multi-byte encoding. Note
+ character ASCII string “BINARY”, then all textual values are as‐
+ sumed to be in a platform-dependent multi-byte encoding. Note
that there are only two valid values for this key: “BINARY” or
“ISO-IR 10646 2000 UTF-8”. No other values are permitted by the
standard, and the latter value should generally not be used as it
@@ -355,20 +355,20 @@ DESCRIPTION
XXX document other vendor-specific extensions XXX
Any values stored in an extended attribute override the corresponding
- values in the regular tar header. Note that compliant readers should
- ignore the regular fields when they are overridden. This is important,
- as existing archivers are known to store non-compliant values in the
- standard header fields in this situation. There are no limits on length
- for any of these fields. In particular, numeric fields can be arbitrar‐
- ily large. All text fields are encoded in UTF8. Compliant writers
- should store only portable 7-bit ASCII characters in the standard ustar
- header and use extended attributes whenever a text value contains non-
- ASCII characters.
+ values in the regular tar header. Note that compliant readers should ig‐
+ nore the regular fields when they are overridden. This is important, as
+ existing archivers are known to store non-compliant values in the stan‐
+ dard header fields in this situation. There are no limits on length for
+ any of these fields. In particular, numeric fields can be arbitrarily
+ large. All text fields are encoded in UTF8. Compliant writers should
+ store only portable 7-bit ASCII characters in the standard ustar header
+ and use extended attributes whenever a text value contains non-ASCII
+ characters.
In addition to the x entry described above, the pax interchange format
also supports a g entry. The g entry is identical in format, but speci‐
- fies attributes that serve as defaults for all subsequent archive
- entries. The g entry is not widely used.
+ fies attributes that serve as defaults for all subsequent archive en‐
+ tries. The g entry is not widely used.
Besides the new x and g entries, the pax interchange format has a few
other minor variations from the earlier ustar format. The most troubling
@@ -379,16 +379,16 @@ DESCRIPTION
ignore the size field for hardlink entries.
GNU Tar Archives
- The GNU tar program started with a pre-POSIX format similar to that
- described earlier and has extended it using several different mechanisms:
+ The GNU tar program started with a pre-POSIX format similar to that de‐
+ scribed earlier and has extended it using several different mechanisms:
It added new fields to the empty space in the header (some of which was
later used by POSIX for conflicting purposes); it allowed the header to
be continued over multiple records; and it defined new entries that mod‐
ify following entries (similar in principle to the x entry described
above, but each GNU special entry is single-purpose, unlike the general-
purpose x entry). As a result, GNU tar archives are not POSIX compati‐
- ble, although more lenient POSIX-compliant readers can successfully
- extract most GNU tar archives.
+ ble, although more lenient POSIX-compliant readers can successfully ex‐
+ tract most GNU tar archives.
struct header_gnu_tar {
char name[100];
@@ -435,11 +435,11 @@ DESCRIPTION
is preceded by an ASCII "Y" if the file is stored in this
archive or "N" if the file is not stored in this archive.
Each name is terminated with a null, and an extra null
- marks the end of the name list. The purpose of this
- entry is to support incremental backups; a program
- restoring from such an archive may wish to delete files
- on disk that did not exist in the directory when the ar‐
- chive was made.
+ marks the end of the name list. The purpose of this en‐
+ try is to support incremental backups; a program restor‐
+ ing from such an archive may wish to delete files on disk
+ that did not exist in the directory when the archive was
+ made.
Note that the "D" typeflag specifically violates POSIX,
which requires that unrecognized typeflags be restored as
@@ -463,28 +463,28 @@ DESCRIPTION
first or second entry in an archive (the latter only if
the first entry is a volume label). The size field spec‐
ifies the size of this entry. The offset field at bytes
- 369-380 specifies the offset where this file fragment
- begins. The realsize field specifies the total size of
- the file (which must equal size plus offset). When
- extracting, GNU tar checks that the header file name is
- the one it is expecting, that the header offset is in the
- correct sequence, and that the sum of offset and size is
- equal to realsize.
+ 369-380 specifies the offset where this file fragment be‐
+ gins. The realsize field specifies the total size of the
+ file (which must equal size plus offset). When extract‐
+ ing, GNU tar checks that the header file name is the one
+ it is expecting, that the header offset is in the correct
+ sequence, and that the sum of offset and size is equal to
+ realsize.
N Type "N" records are no longer generated by GNU tar.
They contained a list of files to be renamed or symlinked
after extraction; this was originally used to support
- long names. The contents of this record are a text
- description of the operations to be done, in the form
+ long names. The contents of this record are a text de‐
+ scription of the operations to be done, in the form
“Rename %s to %s\n” or “Symlink %s to %s\n”; in either
case, both filenames are escaped using K&R C syntax. Due
- to security concerns, "N" records are now generally
- ignored when reading archives.
+ to security concerns, "N" records are now generally ig‐
+ nored when reading archives.
S This is a “sparse” regular file. Sparse files are stored
as a series of fragments. The header contains a list of
- fragment offset/length pairs. If more than four such
- entries are required, the header is extended as necessary
+ fragment offset/length pairs. If more than four such en‐
+ tries are required, the header is extended as necessary
with “extra” header extensions (an older format that is
no longer used), or “sparse” extensions.
@@ -510,9 +510,9 @@ DESCRIPTION
Sparse offset / numbytes
Each such structure specifies a single fragment of a sparse file.
The two fields store values as octal numbers. The fragments are
- each padded to a multiple of 512 bytes in the archive. On
- extraction, the list of fragments is collected from the header
- (including any extension headers), and the data is then read and
+ each padded to a multiple of 512 bytes in the archive. On ex‐
+ traction, the list of fragments is collected from the header (in‐
+ cluding any extension headers), and the data is then read and
written to the file at appropriate offsets.
isextended
@@ -574,8 +574,8 @@ DESCRIPTION
GNU.sparse.major and GNU.sparse.minor fields) and the full size
of the file. The GNU.sparse.name holds the true name of the
file. To avoid confusion, the name stored in the regular tar
- header is a modified name so that extraction errors will be
- apparent to users.
+ header is a modified name so that extraction errors will be ap‐
+ parent to users.
Solaris Tar
XXX More Details Needed XXX
@@ -583,13 +583,13 @@ DESCRIPTION
Solaris tar (beginning with SunOS XXX 5.7 ?? XXX) supports an “extended”
format that is fundamentally similar to pax interchange format, with the
following differences:
- · Extended attributes are stored in an entry whose type is X, not
+ • Extended attributes are stored in an entry whose type is X, not
x, as used by pax interchange format. The detailed format of
- this entry appears to be the same as detailed above for the x
- entry.
- · An additional A header is used to store an ACL for the following
- regular entry. The body of this entry contains a seven-digit
- octal number followed by a zero byte, followed by the textual ACL
+ this entry appears to be the same as detailed above for the x en‐
+ try.
+ • An additional A header is used to store an ACL for the following
+ regular entry. The body of this entry contains a seven-digit oc‐
+ tal number followed by a zero byte, followed by the textual ACL
description. The octal value is the number of ACL entries plus a
constant that indicates the ACL type: 01000000 for POSIX.1e ACLs
and 03000000 for NFSv4 ACLs.
@@ -608,8 +608,8 @@ DESCRIPTION
two separate files in the tar archive. The two files have the same name
except that the first one has “._” prepended to the last path element.
This special file stores an AppleDouble-encoded binary blob with addi‐
- tional metadata about the second file, including ACL, extended
- attributes, and resources. To recreate the original file on disk, each
+ tional metadata about the second file, including ACL, extended at‐
+ tributes, and resources. To recreate the original file on disk, each
separate file can be extracted and the Mac OS X copyfile() function can
be used to unpack the separate metadata file and apply it to th regular
file. Conversely, the same function provides a “pack” option to encode