head	1.10;
access;
symbols
	libarchive-3-8-10:1.1.1.8
	pkgsrc-2026Q3:1.9.0.8
	pkgsrc-2026Q3-base:1.9
	libarchive-3-8-9:1.1.1.7
	libarchive-3-8-8:1.1.1.7
	pkgsrc-2026Q2:1.9.0.6
	pkgsrc-2026Q2-base:1.9
	libarchive-3-8-7:1.1.1.7
	libarchive-3-8-6:1.1.1.7
	pkgsrc-2026Q1:1.9.0.4
	pkgsrc-2026Q1-base:1.9
	libarchive-3-8-5:1.1.1.7
	libarchive-3-8-4:1.1.1.7
	pkgsrc-2025Q4:1.9.0.2
	pkgsrc-2025Q4-base:1.9
	libarchive-3-8-3:1.1.1.7
	libarchive-3-8-2:1.1.1.6
	pkgsrc-2025Q3:1.8.0.8
	pkgsrc-2025Q3-base:1.8
	libarchive-3-8-1:1.1.1.6
	pkgsrc-2025Q2:1.8.0.6
	pkgsrc-2025Q2-base:1.8
	libarchive-3-8-0:1.1.1.6
	libarchive-3-7-9:1.1.1.6
	pkgsrc-2025Q1:1.8.0.4
	pkgsrc-2025Q1-base:1.8
	pkgsrc-2024Q4:1.8.0.2
	pkgsrc-2024Q4-base:1.8
	libarchive-3-7-7:1.1.1.6
	pkgsrc-2024Q3:1.7.0.6
	pkgsrc-2024Q3-base:1.7
	libarchive-3-7-5:1.1.1.5
	pkgsrc-2024Q2:1.7.0.4
	pkgsrc-2024Q2-base:1.7
	libarchive-3-7-4:1.1.1.5
	libarchive-3-7-3:1.1.1.5
	pkgsrc-2024Q1:1.7.0.2
	pkgsrc-2024Q1-base:1.7
	libarchive-3-7-2:1.1.1.5
	pkgsrc-2023Q4:1.6.0.30
	pkgsrc-2023Q4-base:1.6
	pkgsrc-2023Q3:1.6.0.28
	pkgsrc-2023Q3-base:1.6
	pkgsrc-2023Q2:1.6.0.26
	pkgsrc-2023Q2-base:1.6
	pkgsrc-2023Q1:1.6.0.24
	pkgsrc-2023Q1-base:1.6
	pkgsrc-2022Q4:1.6.0.22
	pkgsrc-2022Q4-base:1.6
	pkgsrc-2022Q3:1.6.0.20
	pkgsrc-2022Q3-base:1.6
	pkgsrc-2022Q2:1.6.0.18
	pkgsrc-2022Q2-base:1.6
	pkgsrc-2022Q1:1.6.0.16
	pkgsrc-2022Q1-base:1.6
	pkgsrc-2021Q4:1.6.0.14
	pkgsrc-2021Q4-base:1.6
	pkgsrc-2021Q3:1.6.0.12
	pkgsrc-2021Q3-base:1.6
	pkgsrc-2021Q2:1.6.0.10
	pkgsrc-2021Q2-base:1.6
	pkgsrc-2021Q1:1.6.0.8
	pkgsrc-2021Q1-base:1.6
	pkgsrc-2020Q4:1.6.0.6
	pkgsrc-2020Q4-base:1.6
	pkgsrc-2020Q3:1.6.0.4
	pkgsrc-2020Q3-base:1.6
	pkgsrc-2020Q2:1.6.0.2
	pkgsrc-2020Q2-base:1.6
	pkgsrc-2020Q1:1.5.0.4
	pkgsrc-2020Q1-base:1.5
	pkgsrc-2019Q4:1.5.0.6
	pkgsrc-2019Q4-base:1.5
	pkgsrc-2019Q3:1.5.0.2
	pkgsrc-2019Q3-base:1.5
	libarchive-3-4-0:1.1.1.4
	libarchive-3-3-3:1.1.1.3
	pkgsrc-2019Q2:1.4.0.18
	pkgsrc-2019Q2-base:1.4
	pkgsrc-2019Q1:1.4.0.16
	pkgsrc-2019Q1-base:1.4
	pkgsrc-2018Q4:1.4.0.14
	pkgsrc-2018Q4-base:1.4
	pkgsrc-2018Q3:1.4.0.12
	pkgsrc-2018Q3-base:1.4
	pkgsrc-2018Q2:1.4.0.10
	pkgsrc-2018Q2-base:1.4
	pkgsrc-2018Q1:1.4.0.8
	pkgsrc-2018Q1-base:1.4
	pkgsrc-2017Q4:1.4.0.6
	pkgsrc-2017Q4-base:1.4
	pkgsrc-2017Q3:1.4.0.4
	pkgsrc-2017Q3-base:1.4
	libarchive-3-3-2:1.1.1.3
	pkgsrc-2017Q2:1.3.0.4
	pkgsrc-2017Q2-base:1.3
	pkgsrc-2017Q1:1.3.0.2
	pkgsrc-2017Q1-base:1.3
	libarchive-3-3-1:1.1.1.2
	pkgsrc-2016Q4:1.2.0.6
	pkgsrc-2016Q4-base:1.2
	pkgsrc-2016Q3:1.2.0.4
	pkgsrc-2016Q3-base:1.2
	pkgsrc-2016Q2:1.2.0.2
	pkgsrc-2016Q2-base:1.2
	libarchive-3-2-1:1.1.1.1
	KIENTZLE:1.1.1
	pkgsrc-2016Q1:1.1.0.10
	pkgsrc-2016Q1-base:1.1
	pkgsrc-2015Q4:1.1.0.8
	pkgsrc-2015Q4-base:1.1
	pkgsrc-2015Q3:1.1.0.6
	pkgsrc-2015Q3-base:1.1
	pkgsrc-2015Q2:1.1.0.4
	pkgsrc-2015Q2-base:1.1
	pkgsrc-2015Q1:1.1.0.2
	pkgsrc-2015Q1-base:1.1;
locks; strict;
comment	@# @;


1.10
date	2026.10.19.12.05.17;	author adam;	state Exp;
branches;
next	1.9;
commitid	R3KJfVxz3NuPb50H;

1.9
date	2025.11.20.06.08.27;	author adam;	state Exp;
branches;
next	1.8;
commitid	kB7NF5kSlmUaVfjG;

1.8
date	2024.10.19.05.39.57;	author adam;	state Exp;
branches;
next	1.7;
commitid	fYRSlpIWMYluweuF;

1.7
date	2024.01.18.18.00.16;	author adam;	state Exp;
branches;
next	1.6;
commitid	hNXpsHx3SuHqsXUE;

1.6
date	2020.05.26.09.16.41;	author nia;	state Exp;
branches;
next	1.5;
commitid	nNhsdZACz3PjmJ9C;

1.5
date	2019.09.22.09.55.08;	author joerg;	state Exp;
branches;
next	1.4;
commitid	FdPvRjF4OzwBwZDB;

1.4
date	2017.08.01.22.26.23;	author joerg;	state Exp;
branches;
next	1.3;
commitid	32clTfkmVE8bPy1A;

1.3
date	2017.02.25.21.11.19;	author joerg;	state Exp;
branches;
next	1.2;
commitid	rW8QfCWrsCO1snHz;

1.2
date	2016.06.20.17.24.57;	author joerg;	state Exp;
branches;
next	1.1;
commitid	ArUvympBjfBseebz;

1.1
date	2015.01.17.12.44.49;	author adam;	state Exp;
branches
	1.1.1.1;
next	;
commitid	yy7e1hLrfmA2pn6y;

1.1.1.1
date	2016.06.20.17.12.01;	author joerg;	state Exp;
branches;
next	1.1.1.2;
commitid	rRgm3BqbmbI8aebz;

1.1.1.2
date	2017.02.25.20.54.12;	author joerg;	state Exp;
branches;
next	1.1.1.3;
commitid	ReqPI0ibLYjdmnHz;

1.1.1.3
date	2017.08.01.22.21.12;	author joerg;	state Exp;
branches;
next	1.1.1.4;
commitid	XQwPAFJku336Ny1A;

1.1.1.4
date	2019.09.22.09.51.33;	author joerg;	state Exp;
branches;
next	1.1.1.5;
commitid	5kDbfPbiV3INvZDB;

1.1.1.5
date	2024.01.18.17.37.45;	author adam;	state Exp;
branches;
next	1.1.1.6;
commitid	zDULEPUODGjTkXUE;

1.1.1.6
date	2024.10.19.05.27.34;	author adam;	state Exp;
branches;
next	1.1.1.7;
commitid	v1iXM4j1Na52seuF;

1.1.1.7
date	2025.11.20.05.51.45;	author adam;	state Exp;
branches;
next	1.1.1.8;
commitid	LC6NMc2P0QpnPfjG;

1.1.1.8
date	2026.10.19.11.50.40;	author adam;	state Exp;
branches;
next	;
commitid	eS0MvMrTxXQX650H;


desc
@@


1.10
log
@libarchive: updated to 3.8.10

3.8.10

New features:

7z: add Delta, RISCV, ARMTHUMB and IA64 filters for non-lzma archives
libarchive: support digest with nettle 4 and mbedtls 3
tar: add --mode option

Security and Bug Fixes

see ChangeLog
@
text
@4mARCHIVE_ENTRY_STAT24m(3)	 Library Functions Manual     4mARCHIVE_ENTRY_STAT24m(3)

1mNAME0m
       archive_entry_stat,   archive_entry_copy_stat,  archive_entry_filetype,
       archive_entry_set_filetype, archive_entry_mode, archive_entry_set_mode,
       archive_entry_size, archive_entry_size_is_set,  archive_entry_set_size,
       archive_entry_unset_size,   archive_entry_dev,	archive_entry_set_dev,
       archive_entry_dev_is_set,		       archive_entry_devmajor,
       archive_entry_set_devmajor,		       archive_entry_devminor,
       archive_entry_set_devminor,  archive_entry_ino,	archive_entry_set_ino,
       archive_entry_ino_is_set, archive_entry_ino64, archive_entry_set_ino64,
       archive_entry_nlink,	archive_entry_rdev,    archive_entry_set_rdev,
       archive_entry_rdevmajor,			  archive_entry_set_rdevmajor,
       archive_entry_rdevminor,	 archive_entry_set_rdevminor  — accessor func‐
       tions for manipulating archive entry descriptions

1mLIBRARY0m
       Streaming Archive Library (libarchive, -larchive)

1mSYNOPSIS0m
       1m#include <archive_entry.h>0m

       4mconst24m 4mstruct24m 4mstat24m 4m*0m
       1marchive_entry_stat22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_copy_stat22m(4mstruct24m		   4marchive_entry24m		  4m*a24m,
	   4mconst24m 4mstruct24m 4mstat24m 4m*sb24m);

       4mmode_t0m
       1marchive_entry_filetype22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_filetype22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mint24m 4mtype24m);

       4mmode_t0m
       1marchive_entry_mode22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_mode22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mmode_t24m 4mmode24m);

       4mint64_t0m
       1marchive_entry_size22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mint0m
       1marchive_entry_size_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_size22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mint64_t24m 4msize24m);

       4mvoid0m
       1marchive_entry_unset_size22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mdev_t0m
       1marchive_entry_dev22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_dev22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mdev24m);

       4mint0m
       1marchive_entry_dev_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mdev_t0m
       1marchive_entry_devmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_devmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mmajor24m);

       4mdev_t0m
       1marchive_entry_devminor22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_devminor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mminor24m);

       4mino_t0m
       1marchive_entry_ino22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_ino22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mlong24m 4mino24m);

       4mint0m
       1marchive_entry_ino_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mint64_t0m
       1marchive_entry_ino6422m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_ino6422m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mint64_t24m 4mino24m);

       4munsigned24m 4mint0m
       1marchive_entry_nlink22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_nlink22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mint24m 4mcount24m);

       4mdev_t0m
       1marchive_entry_rdev22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mdev_t0m
       1marchive_entry_rdevmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mdev_t0m
       1marchive_entry_rdevminor22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_rdev22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mdev24m);

       4mvoid0m
       1marchive_entry_set_rdevmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mmajor24m);

       4mvoid0m
       1marchive_entry_set_rdevminor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mminor24m);

1mDESCRIPTION0m
   1mCopying to and from 4mstruct24m 4mstat0m
       The function 1marchive_entry_stat22m() converts the various fields stored in
       the  archive entry to the format used by 4mstat24m(2).  The return value re‐
       mains valid until either 1marchive_entry_clear22m() or  1marchive_entry_free22m()
       is  called.  It is not affected by calls to the set accessor functions.
       It currently sets  the  following  values  in  4mstruct24m  4mstat24m:  4mst_atime24m,
       4mst_ctime24m, 4mst_dev24m, 4mst_gid24m, 4mst_ino24m, 4mst_mode24m, 4mst_mtime24m, 4mst_nlink24m, 4mst_rdev24m,
       4mst_size24m, 4mst_uid24m.  In addition, 4mst_birthtime24m and high-precision informa‐
       tion for time-related fields will be included on platforms that support
       it.

       The  function  1marchive_entry_copy_stat22m()  copies  fields from the plat‐
       form's 4mstruct24m 4mstat24m.  Fields not provided by 4mstruct24m 4mstat24m are unchanged.

   1mGeneral accessor functions0m
       The functions 1marchive_entry_filetype22m() and 1marchive_entry_set_filetype22m()
       get respectively set the filetype.  The file type is one of the follow‐
       ing constants:
	     AE_IFREG	Regular file
	     AE_IFLNK	Symbolic link
	     AE_IFSOCK	Socket
	     AE_IFCHR	Character device
	     AE_IFBLK	Block device
	     AE_IFDIR	Directory
	     AE_IFIFO	Named pipe (fifo)
       Not all file types are supported by all platforms.  The constants  used
       by  4mstat24m(2)	 may  have  different numeric values from the corresponding
       constants above.

       The functions 1marchive_entry_mode22m() and 1marchive_entry_set_mode22m() get/set
       a combination of file type and permissions and provide  the  equivalent
       of  4mst_mode24m.   Use of 1marchive_entry_filetype22m() and 1marchive_entry_perm22m()
       for	getting	      and	1marchive_entry_set_filetype22m()	and
       1marchive_entry_set_perm22m() for setting is recommended.

       The function 1marchive_entry_size22m() returns the file size, if it has been
       set, and 0 otherwise.  1marchive_entry_size_is_set22m() can be used to query
       that  status.   1marchive_entry_set_size22m() and 1marchive_entry_unset_size22m()
       set and unset the size, respectively.

       The number  of  references  (hardlinks)	can  be	 obtained  by  calling
       1marchive_entry_nlink22m() and set with 1marchive_entry_set_nlink22m().

   1mIdentifying unique files0m
       The functions 1marchive_entry_dev22m() and 1marchive_entry_ino6422m() are used by
       4marchive_entry_linkify24m(3) to find hardlinks.	 The pair of device and in‐
       ode is supposed to identify hardlinked files.

       The  device  major and minor number can be obtained independently using
       1marchive_entry_devmajor22m() and 1marchive_entry_devminor22m().	 The device  can
       be  set either via 1marchive_entry_set_dev22m() or by the combination of ma‐
       jor   and   minor   number   using   1marchive_entry_set_devmajor22m()	and
       1marchive_entry_set_devminor22m().

       The  inode number can be obtained using 1marchive_entry_ino22m().  This is a
       legacy interface that uses the platform 4mino_t24m, which may be very small.
       To set the inode number, 1marchive_entry_set_ino6422m() is the preferred in‐
       terface.

   1mAccessor functions for block and character devices0m
       Block and character devices are characterised  either  using  a	device
       number or a pair of major and minor number.  The combined device number
       can    be    obtained	with   1marchive_entry_rdev22m()   and	 set   with
       1marchive_entry_set_rdev22m().  The major and minor numbers are accessed	 by
       1marchive_entry_rdevmajor22m(),			  1marchive_entry_rdevminor22m()
       1marchive_entry_set_rdevmajor22m() and 1marchive_entry_set_rdevminor22m().

       The process of splitting the combined device number into major and  mi‐
       nor  number  and	 the reverse process of combining them differs between
       platforms.  Some archive formats use the	 combined  form,  while	 other
       formats use the split form.

1mSEE ALSO0m
       4mstat24m(2),	      4marchive_entry_acl24m(3),	 4marchive_entry_perms24m(3),
       4marchive_entry_time24m(3), 4mlibarchive24m(3)

Debian			       February 2, 2012		 4mARCHIVE_ENTRY_STAT24m(3)
@


1.9
log
@libarchive: updated to 3.8.3

Libarchive 3.8.3 is a bugfix and security release.

Security fixes:

lib: Create temporary files in the target directory
lha: Fix for an out-of-bounds buffer overrun when using p[H_LEVEL_OFFSET]
7-zip: Fix a buffer overrun when reading truncated 7zip headers

Notable bugxies:

lz4 and zstd: Support both lz4 and zstd data with leading skippable frames
@
text
@d177 4
a180 4
       can    be    obtained   with   1marchive_device_rdev22m()   and	 set   with
       1marchive_device_set_rdev22m().	The major and minor numbers are accessed by
       1marchive_device_rdevmajor22m(),			 1marchive_device_rdevminor22m()
       1marchive_device_set_rdevmajor22m() and 1marchive_device_set_rdevminor22m().
d182 3
a184 3
       The  process of splitting the combined device number into major and mi‐
       nor number and the reverse process  of  combing	them  differs  between
       platforms.   Some  archive  formats  use the combined form, while other
d188 1
a188 1
       4mstat24m(2),	     4marchive_entry_acl24m(3),		 4marchive_entry_perms24m(3),
@


1.8
log
@libarchive: updated to 3.7.7

Libarchive 3.7.7 is a bugfix and security release

Security fixes:

gzip: prevent a hang when processing a malformed gzip inside a gzip
tar: don't crash on truncated tar archives
tar: fix two leaks in tar header parsing

Important bugfixes:

7-zip: read/write symlink paths as UTF-8
cpio: exit with an error code if an entry could not be extracted
rar5: report encrypted entries
tar: fix truncation of entry pathnames in specific archives
windows: fix ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS


Libarchive 3.7.6 is a bugfix and security release.
This release fixes a tar regression introduced in libarchive 3.7.5

Important bugfixes.

tar: clean up linkpath between entries
tar: fix memory leaks when processing symlinks or parsing pax headers
iso: be more cautious about parsing ISO-9660 timestamps
@
text
@d151 3
a153 3
       set,  and  0 otherwise.	1marchive_entry_size22m() can be used to query that
       status.	1marchive_entry_set_size22m()  and  1marchive_entry_unset_size22m()  set
       and unset the size, respectively.
d155 1
a155 1
       The  number  of	references  (hardlinks)	 can  be  obtained  by calling
d163 3
a165 3
       The device major and minor number can be obtained  independently	 using
       1marchive_entry_devmajor22m()  and 1marchive_entry_devminor22m().  The device can
       be set either via 1marchive_entry_set_dev22m() or by the combination of	ma‐
d169 1
a169 1
       The inode number can be obtained using 1marchive_entry_ino22m().	 This is  a
d175 1
a175 1
       Block  and  character  devices  are characterised either using a device
d177 1
a177 1
       can   be	  obtained   with   1marchive_device_rdev22m()	 and	set    with
d182 3
a184 3
       The process of splitting the combined device number into major and  mi‐
       nor  number  and	 the  reverse  process of combing them differs between
       platforms.  Some archive formats use the	 combined  form,  while	 other
d188 1
a188 1
       4mstat24m(2),	      4marchive_entry_acl24m(3),	 4marchive_entry_perms24m(3),
@


1.7
log
@libarchive: updated to 3.7.2

Libarchive 3.7.2 is a security, bugfix and feature release.

Security fixes:

Multiple vulnerabilities have been fixed in the PAX writer (1b4e0d0)
Important bugfixes:

bsdunzip(1) now correctly handles arguments following an -x after the zipfile
New features:

bsdunzip(1) now supports the "--version" flag
7-zip reader now translates Windows permissions into UNIX permissions
uudecode filter in raw mode now supports file name and file mode
zstd filter now supports the "long" write option


Libarchive 3.7.1 is a security, feature and bugfix release.

Security fixes:

SEGV and stack buffer overflow in verbose mode of cpio
Feature updates:

bsdunzip updated to match latest upstream code
Important bugfixes:

miscellaneous functional bugfixes
build fixes on multiple platforms


Libarchive 3.7.0 is a feature and bugfix release.

New features:

bsdunzip: new tool ported from FreeBSD
drop-in replacement for Info-ZIP unzip, not yet ported for Windows
7zip reader: support for Zstandard compression
7zip reader: support for ARM64 filter
zstd filter: support for multi-frame zstd archives
Other notable bugfixes and improvements:

pax: fix year 2038 problem on platforms with 64-bit time_t
Windows: Universal Windows Platform (UWP) fixes and improvements
Windows: bcrypt usage fixes and improvements
Windows: time function usage fixes and improvements
@
text
@d1 1
a1 1
ARCHIVE_ENTRY_STAT(3)	 BSD Library Functions Manual	 ARCHIVE_ENTRY_STAT(3)
d3 187
a189 185
NAME
     archive_entry_stat, archive_entry_copy_stat, archive_entry_filetype,
     archive_entry_set_filetype, archive_entry_mode, archive_entry_set_mode,
     archive_entry_size, archive_entry_size_is_set, archive_entry_set_size,
     archive_entry_unset_size, archive_entry_dev, archive_entry_set_dev,
     archive_entry_dev_is_set, archive_entry_devmajor,
     archive_entry_set_devmajor, archive_entry_devminor,
     archive_entry_set_devminor, archive_entry_ino, archive_entry_set_ino,
     archive_entry_ino_is_set, archive_entry_ino64, archive_entry_set_ino64,
     archive_entry_nlink, archive_entry_rdev, archive_entry_set_rdev,
     archive_entry_rdevmajor, archive_entry_set_rdevmajor,
     archive_entry_rdevminor, archive_entry_set_rdevminor — accessor functions
     for manipulating archive entry descriptions

LIBRARY
     Streaming Archive Library (libarchive, -larchive)

SYNOPSIS
     #include <archive_entry.h>

     const struct stat *
     archive_entry_stat(struct archive_entry *a);

     void
     archive_entry_copy_stat(struct archive_entry *a, const struct stat *sb);

     mode_t
     archive_entry_filetype(struct archive_entry *a);

     void
     archive_entry_set_filetype(struct archive_entry *a, unsigned int type);

     mode_t
     archive_entry_mode(struct archive_entry *a);

     void
     archive_entry_set_mode(struct archive_entry *a, mode_t mode);

     int64_t
     archive_entry_size(struct archive_entry *a);

     int
     archive_entry_size_is_set(struct archive_entry *a);

     void
     archive_entry_set_size(struct archive_entry *a, int64_t size);

     void
     archive_entry_unset_size(struct archive_entry *a);

     dev_t
     archive_entry_dev(struct archive_entry *a);

     void
     archive_entry_set_dev(struct archive_entry *a, dev_t dev);

     int
     archive_entry_dev_is_set(struct archive_entry *a);

     dev_t
     archive_entry_devmajor(struct archive_entry *a);

     void
     archive_entry_set_devmajor(struct archive_entry *a, dev_t major);

     dev_t
     archive_entry_devminor(struct archive_entry *a);

     void
     archive_entry_set_devminor(struct archive_entry *a, dev_t minor);

     ino_t
     archive_entry_ino(struct archive_entry *a);

     void
     archive_entry_set_ino(struct archive_entry *a, unsigned long ino);

     int
     archive_entry_ino_is_set(struct archive_entry *a);

     int64_t
     archive_entry_ino64(struct archive_entry *a);

     void
     archive_entry_set_ino64(struct archive_entry *a, int64_t ino);

     unsigned int
     archive_entry_nlink(struct archive_entry *a);

     void
     archive_entry_set_nlink(struct archive_entry *a, unsigned int count);

     dev_t
     archive_entry_rdev(struct archive_entry *a);

     dev_t
     archive_entry_rdevmajor(struct archive_entry *a);

     dev_t
     archive_entry_rdevminor(struct archive_entry *a);

     void
     archive_entry_set_rdev(struct archive_entry *a, dev_t dev);

     void
     archive_entry_set_rdevmajor(struct archive_entry *a, dev_t major);

     void
     archive_entry_set_rdevminor(struct archive_entry *a, dev_t minor);

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 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.

   General accessor functions
     The functions archive_entry_filetype() and archive_entry_set_filetype()
     get respectively set the filetype.	 The file type is one of the following
     constants:
	   AE_IFREG   Regular file
	   AE_IFLNK   Symbolic link
	   AE_IFSOCK  Socket
	   AE_IFCHR   Character device
	   AE_IFBLK   Block device
	   AE_IFDIR   Directory
	   AE_IFIFO   Named pipe (fifo)
     Not all file types are supported by all platforms.	 The constants used by
     stat(2) may have different numeric values from the corresponding con‐
     stants above.

     The functions archive_entry_mode() and archive_entry_set_mode() get/set a
     combination of file type and permissions and provide the equivalent of
     st_mode.  Use of archive_entry_filetype() and archive_entry_perm() for
     getting and archive_entry_set_filetype() and archive_entry_set_perm() for
     setting is recommended.

     The function archive_entry_size() returns the file size, if it has been
     set, and 0 otherwise.  archive_entry_size() can be used to query that
     status.  archive_entry_set_size() and archive_entry_unset_size() set and
     unset the size, respectively.

     The number of references (hardlinks) can be obtained by calling
     archive_entry_nlink() and set with archive_entry_set_nlink().

   Identifying unique files
     The functions archive_entry_dev() and archive_entry_ino64() are used by
     archive_entry_linkify(3) to find hardlinks.  The pair of device and inode
     is supposed to identify hardlinked files.

     The device major and minor number can be obtained independently using
     archive_entry_devmajor() and archive_entry_devminor().  The device can be
     set either via archive_entry_set_dev() or by the combination of major and
     minor number using archive_entry_set_devmajor() and
     archive_entry_set_devminor().

     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 in‐
     terface.

   Accessor functions for block and character devices
     Block and character devices are characterised either using a device num‐
     ber or a pair of major and minor number.  The combined device number can
     be obtained with archive_device_rdev() and set with
     archive_device_set_rdev().	 The major and minor numbers are accessed by
     archive_device_rdevmajor(), archive_device_rdevminor()
     archive_device_set_rdevmajor() and archive_device_set_rdevminor().

     The process of splitting the combined device number into major and minor
     number and the reverse process of combing them differs between platforms.
     Some archive formats use the combined form, while other formats use the
     split form.

SEE ALSO
     stat(2), archive_entry_acl(3), archive_entry_perms(3),
     archive_entry_time(3), libarchive(3)
d191 1
a191 1
BSD			       February 2, 2012				   BSD
@


1.6
log
@libarchive: Update to 3.4.3

Libarchive 3.4.3 is a feature and bugfix release.

New features:

    support for pzstd compressed files (#1357)
    support for RHT.security.selinux tar extended attribute (#1348)

Important bugfixes:

    various zstd fixes and improvements (#1342 #1352 #1359)
    child process handling fixes (#1372)

Libarchive 3.4.2 is a feature and security release.

New features:

    support for atomic file extraction (bsdtar -x --safe-writes) (#1289)
    support for mbed TLS (PolarSSL) (#1301)

Important bugfixes:

    security fixes in RAR5 reader (#1280 #1326)
    compression buffer fix in XAR writer (#1317)
    fix uname and gname longer than 32 characters in PAX writer (#1319)
    fix segfault when archiving hard links in ISO9660 and XAR writers (#1325)
    fix support for extracting 7z archive entries with Delta filter (#987)

Libarchive 3.4.1 is a feature and security release.

New features:

    Unicode filename support for reading lha/lzh archives
    New pax write option "xattrhdr"

Important bugfixes:

    security fixes in wide string processing (#1276 #1298)
    security fixes in RAR5 reader (#1212 #1217 #1296)
    security fixes and optimizations to write filter logic (#351)
    security fix related to use of readlink(2) (1dae5a5)
    sparse file handling fixes (#1218 #1260)

Thanks to all contributors and bug reporters.
Special thanks to Christos Zoulas (@@zoulasc) from NetBSD for the atomic file extraction feature.
@
text
@d14 2
a15 2
     archive_entry_rdevminor, archive_entry_set_rdevminor -- accessor func-
     tions for manipulating archive entry descriptions
d116 7
a122 8
     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.
d129 1
a129 1
     get respectively set the filetype.  The file type is one of the following
d138 2
a139 2
     Not all file types are supported by all platforms.  The constants used by
     stat(2) may have different numeric values from the corresponding con-
d169 2
a170 2
     To set the inode number, archive_entry_set_ino64() is the preferred
     interface.
d173 1
a173 1
     Block and character devices are characterised either using a device num-
d176 1
a176 1
     archive_device_set_rdev().  The major and minor numbers are accessed by
d189 1
a189 1
BSD			       February 2, 2012 			   BSD
@


1.5
log
@Update for libarchive-3.4.0:
- improvements for Android APK and JAR archives
- better support for non-recursive list and extract
- tar --exclude-vcs support
- fixes for file attributes and flags handling
- zipx support
- rar 5.0 reader
@
text
@d14 1
a14 1
     archive_entry_rdevminor, archive_entry_set_rdevminor, — accessor func‐
d116 8
a123 7
     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.
d140 1
a140 1
     stat(2) may have different numeric values from the corresponding con‐
d155 1
a155 1
     archive_entry_nlinks() and set with archive_entry_set_nlinks().
d170 2
a171 2
     To set the inode number, archive_entry_set_ino64() is the preferred in‐
     terface.
d174 1
a174 1
     Block and character devices are characterised either using a device num‐
d187 2
a188 2
     archive_entry_acl(3), archive_entry_perms(3), archive_entry_time(3),
     libarchive(3), stat(2)
@


1.4
log
@Merge for libarchive-3.3.2.
@
text
@d116 7
a122 8
     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.
d169 2
a170 2
     To set the inode number, archive_entry_set_ino64() is the preferred
     interface.
@


1.3
log
@Merge libarchive-3.3.1.
@
text
@d3 12
a14 12
1mNAME0m
     1marchive_entry_stat22m, 1marchive_entry_copy_stat22m, 1marchive_entry_filetype22m,
     1marchive_entry_set_filetype22m, 1marchive_entry_mode22m, 1marchive_entry_set_mode22m,
     1marchive_entry_size22m, 1marchive_entry_size_is_set22m, 1marchive_entry_set_size22m,
     1marchive_entry_unset_size22m, 1marchive_entry_dev22m, 1marchive_entry_set_dev22m,
     1marchive_entry_dev_is_set22m, 1marchive_entry_devmajor22m,
     1marchive_entry_set_devmajor22m, 1marchive_entry_devminor22m,
     1marchive_entry_set_devminor22m, 1marchive_entry_ino22m, 1marchive_entry_set_ino22m,
     1marchive_entry_ino_is_set22m, 1marchive_entry_ino6422m, 1marchive_entry_set_ino6422m,
     1marchive_entry_nlink22m, 1marchive_entry_rdev22m, 1marchive_entry_set_rdev22m,
     1marchive_entry_rdevmajor22m, 1marchive_entry_set_rdevmajor22m,
     1marchive_entry_rdevminor22m, 1marchive_entry_set_rdevminor22m, — accessor func‐
d17 1
a17 1
1mLIBRARY0m
d20 2
a21 2
1mSYNOPSIS0m
     1m#include <archive_entry.h>0m
d23 2
a24 2
     4mconst24m 4mstruct24m 4mstat24m 4m*0m
     1marchive_entry_stat22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d26 2
a27 2
     4mvoid0m
     1marchive_entry_copy_stat22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mconst24m 4mstruct24m 4mstat24m 4m*sb24m);
d29 2
a30 2
     4mmode_t0m
     1marchive_entry_filetype22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d32 2
a33 2
     4mvoid0m
     1marchive_entry_set_filetype22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mint24m 4mtype24m);
d35 2
a36 2
     4mmode_t0m
     1marchive_entry_mode22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d38 2
a39 2
     4mvoid0m
     1marchive_entry_set_mode22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mmode_t24m 4mmode24m);
d41 2
a42 2
     4mint64_t0m
     1marchive_entry_size22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d44 2
a45 2
     4mint0m
     1marchive_entry_size_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d47 2
a48 2
     4mvoid0m
     1marchive_entry_set_size22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mint64_t24m 4msize24m);
d50 2
a51 2
     4mvoid0m
     1marchive_entry_unset_size22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d53 2
a54 2
     4mdev_t0m
     1marchive_entry_dev22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d56 2
a57 2
     4mvoid0m
     1marchive_entry_set_dev22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mdev24m);
d59 2
a60 2
     4mint0m
     1marchive_entry_dev_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d62 2
a63 2
     4mdev_t0m
     1marchive_entry_devmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d65 2
a66 2
     4mvoid0m
     1marchive_entry_set_devmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mmajor24m);
d68 2
a69 2
     4mdev_t0m
     1marchive_entry_devminor22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d71 2
a72 2
     4mvoid0m
     1marchive_entry_set_devminor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mminor24m);
d74 2
a75 2
     4mino_t0m
     1marchive_entry_ino22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d77 2
a78 2
     4mvoid0m
     1marchive_entry_set_ino22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mlong24m 4mino24m);
d80 2
a81 2
     4mint0m
     1marchive_entry_ino_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d83 2
a84 2
     4mint64_t0m
     1marchive_entry_ino6422m(4mstruct24m 4marchive_entry24m 4m*a24m);
d86 2
a87 2
     4mvoid0m
     1marchive_entry_set_ino6422m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mint64_t24m 4mino24m);
d89 2
a90 2
     4munsigned24m 4mint0m
     1marchive_entry_nlink22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d92 2
a93 2
     4mvoid0m
     1marchive_entry_set_nlink22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mint24m 4mcount24m);
d95 2
a96 2
     4mdev_t0m
     1marchive_entry_rdev22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d98 2
a99 2
     4mdev_t0m
     1marchive_entry_rdevmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d101 2
a102 2
     4mdev_t0m
     1marchive_entry_rdevminor22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d104 2
a105 2
     4mvoid0m
     1marchive_entry_set_rdev22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mdev24m);
d107 2
a108 2
     4mvoid0m
     1marchive_entry_set_rdevmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mmajor24m);
d110 2
a111 2
     4mvoid0m
     1marchive_entry_set_rdevminor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mminor24m);
d113 3
a115 3
1mDESCRIPTION0m
   1mCopying to and from 4m22mstruct24m 4mstat0m
     The function 1marchive_entry_stat22m() converts the various fields stored in
d117 1
a117 1
     remains valid until either 1marchive_entry_clear22m() or 1marchive_entry_free22m()
d119 3
a121 3
     It currently sets the following values in 4mstruct24m 4mstat24m: 4mst_atime24m,
     4mst_ctime24m, 4mst_dev24m, 4mst_gid24m, 4mst_ino24m, 4mst_mode24m, 4mst_mtime24m, 4mst_nlink24m, 4mst_rdev24m,
     4mst_size24m, 4mst_uid24m.  In addition, 4mst_birthtime24m and high-precision informa‐
d125 2
a126 2
     The function 1marchive_entry_copy_stat22m() copies fields from the platform's
     4mstruct24m 4mstat24m.  Fields not provided by 4mstruct24m 4mstat24m are unchanged.
d128 2
a129 2
   1mGeneral accessor functions0m
     The functions 1marchive_entry_filetype22m() and 1marchive_entry_set_filetype22m()
d143 1
a143 1
     The functions 1marchive_entry_mode22m() and 1marchive_entry_set_mode22m() get/set a
d145 2
a146 2
     4mst_mode24m.  Use of 1marchive_entry_filetype22m() and 1marchive_entry_perm22m() for
     getting and 1marchive_entry_set_filetype22m() and 1marchive_entry_set_perm22m() for
d149 3
a151 3
     The function 1marchive_entry_size22m() returns the file size, if it has been
     set, and 0 otherwise.  1marchive_entry_size22m() can be used to query that
     status.  1marchive_entry_set_size22m() and 1marchive_entry_unset_size22m() set and
d155 1
a155 1
     1marchive_entry_nlinks22m() and set with 1marchive_entry_set_nlinks22m().
d157 2
a158 2
   1mIdentifying unique files0m
     The functions 1marchive_entry_dev22m() and 1marchive_entry_ino6422m() are used by
d163 8
a170 8
     1marchive_entry_devmajor22m() and 1marchive_entry_devminor22m().  The device can be
     set either via 1marchive_entry_set_dev22m() or by the combination of major and
     minor number using 1marchive_entry_set_devmajor22m() and
     1marchive_entry_set_devminor22m().

     The inode number can be obtained using 1marchive_entry_ino22m().  This is a
     legacy interface that uses the platform 4mino_t24m, which may be very small.
     To set the inode number, 1marchive_entry_set_ino6422m() is the preferred
d173 1
a173 1
   1mAccessor functions for block and character devices0m
d176 4
a179 4
     be obtained with 1marchive_device_rdev22m() and set with
     1marchive_device_set_rdev22m().  The major and minor numbers are accessed by
     1marchive_device_rdevmajor22m(), 1marchive_device_rdevminor22m()
     1marchive_device_set_rdevmajor22m() and 1marchive_device_set_rdevminor22m().
d186 1
a186 1
1mSEE ALSO0m
@


1.2
log
@Update for libarchive 3.2.1.
@
text
@d3 12
a14 12
NAME
     archive_entry_stat, archive_entry_copy_stat, archive_entry_filetype,
     archive_entry_set_filetype, archive_entry_mode, archive_entry_set_mode,
     archive_entry_size, archive_entry_size_is_set, archive_entry_set_size,
     archive_entry_unset_size, archive_entry_dev, archive_entry_set_dev,
     archive_entry_dev_is_set, archive_entry_devmajor,
     archive_entry_set_devmajor, archive_entry_devminor,
     archive_entry_set_devminor, archive_entry_ino, archive_entry_set_ino,
     archive_entry_ino_is_set, archive_entry_ino64, archive_entry_set_ino64,
     archive_entry_nlink, archive_entry_rdev, archive_entry_set_rdev,
     archive_entry_rdevmajor, archive_entry_set_rdevmajor,
     archive_entry_rdevminor, archive_entry_set_rdevminor, — accessor func‐
d17 1
a17 1
LIBRARY
d20 2
a21 2
SYNOPSIS
     #include <archive_entry.h>
d23 2
a24 2
     const struct stat *
     archive_entry_stat(struct archive_entry *a);
d26 2
a27 2
     void
     archive_entry_copy_stat(struct archive_entry *a, const struct stat *sb);
d29 2
a30 2
     mode_t
     archive_entry_filetype(struct archive_entry *a);
d32 2
a33 2
     void
     archive_entry_set_filetype(struct archive_entry *a, unsigned int type);
d35 2
a36 2
     mode_t
     archive_entry_mode(struct archive_entry *a);
d38 2
a39 2
     void
     archive_entry_set_mode(struct archive_entry *a, mode_t mode);
d41 2
a42 2
     int64_t
     archive_entry_size(struct archive_entry *a);
d44 2
a45 2
     int
     archive_entry_size_is_set(struct archive_entry *a);
d47 2
a48 2
     void
     archive_entry_set_size(struct archive_entry *a, int64_t size);
d50 2
a51 2
     void
     archive_entry_unset_size(struct archive_entry *a);
d53 2
a54 2
     dev_t
     archive_entry_dev(struct archive_entry *a);
d56 2
a57 2
     void
     archive_entry_set_dev(struct archive_entry *a, dev_t dev);
d59 2
a60 2
     int
     archive_entry_dev_is_set(struct archive_entry *a);
d62 2
a63 2
     dev_t
     archive_entry_devmajor(struct archive_entry *a);
d65 2
a66 2
     void
     archive_entry_set_devmajor(struct archive_entry *a, dev_t major);
d68 2
a69 2
     dev_t
     archive_entry_devminor(struct archive_entry *a);
d71 2
a72 2
     void
     archive_entry_set_devminor(struct archive_entry *a, dev_t minor);
d74 2
a75 2
     ino_t
     archive_entry_ino(struct archive_entry *a);
d77 2
a78 2
     void
     archive_entry_set_ino(struct archive_entry *a, unsigned long ino);
d80 2
a81 2
     int
     archive_entry_ino_is_set(struct archive_entry *a);
d83 2
a84 2
     int64_t
     archive_entry_ino64(struct archive_entry *a);
d86 2
a87 2
     void
     archive_entry_set_ino64(struct archive_entry *a, int64_t ino);
d89 2
a90 2
     unsigned int
     archive_entry_nlink(struct archive_entry *a);
d92 2
a93 2
     void
     archive_entry_set_nlink(struct archive_entry *a, unsigned int count);
d95 2
a96 2
     dev_t
     archive_entry_rdev(struct archive_entry *a);
d98 2
a99 2
     dev_t
     archive_entry_rdevmajor(struct archive_entry *a);
d101 2
a102 2
     dev_t
     archive_entry_rdevminor(struct archive_entry *a);
d104 2
a105 2
     void
     archive_entry_set_rdev(struct archive_entry *a, dev_t dev);
d107 2
a108 2
     void
     archive_entry_set_rdevmajor(struct archive_entry *a, dev_t major);
d110 2
a111 2
     void
     archive_entry_set_rdevminor(struct archive_entry *a, dev_t minor);
d113 3
a115 3
DESCRIPTION
   Copying to and from struct stat
     The function archive_entry_stat() converts the various fields stored in
d117 1
a117 1
     remains valid until either archive_entry_clear() or archive_entry_free()
d119 3
a121 3
     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‐
d125 2
a126 2
     The function archive_entry_copy_stat() copies fields from the platform's
     struct stat.  Fields not provided by struct stat are unchanged.
d128 2
a129 2
   General accessor functions
     The functions archive_entry_filetype() and archive_entry_set_filetype()
d143 1
a143 1
     The functions archive_entry_mode() and archive_entry_set_mode() get/set a
d145 2
a146 2
     st_mode.  Use of archive_entry_filetype() and archive_entry_perm() for
     getting and archive_entry_set_filetype() and archive_entry_set_perm() for
d149 3
a151 3
     The function archive_entry_size() returns the file size, if it has been
     set, and 0 otherwise.  archive_entry_size() can be used to query that
     status.  archive_entry_set_size() and archive_entry_unset_size() set and
d155 1
a155 1
     archive_entry_nlinks() and set with archive_entry_set_nlinks().
d157 2
a158 2
   Identifying unique files
     The functions archive_entry_dev() and archive_entry_ino64() are used by
d163 8
a170 8
     archive_entry_devmajor() and archive_entry_devminor().  The device can be
     set either via archive_entry_set_dev() or by the combination of major and
     minor number using archive_entry_set_devmajor() and
     archive_entry_set_devminor().

     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
d173 1
a173 1
   Accessor functions for block and character devices
d176 4
a179 4
     be obtained with archive_device_rdev() and set with
     archive_device_set_rdev().  The major and minor numbers are accessed by
     archive_device_rdevmajor(), archive_device_rdevminor()
     archive_device_set_rdevmajor() and archive_device_set_rdevminor().
d186 1
a186 1
SEE ALSO
@


1.1
log
@Changes 3.1.2:
This is a maintenance update to fix issues with the new RAR seeking
feature. This new release also contains fixes for build failures when
building libarchive using Visual Studio 2012 and MinGW.
@
text
@d160 1
a160 1
     is suppossed to identify hardlinked files.
d187 2
a188 2
     archive(3), archive_entry_acl(3), archive_entry_perms(3),
     archive_entry_time(3), stat(2)
@


1.1.1.1
log
@Import libarchive-3.2.1:
- security fixes and other bugfixes
- support for multhreading in xz 5.2+
@
text
@d160 1
a160 1
     is supposed to identify hardlinked files.
d187 2
a188 2
     archive_entry_acl(3), archive_entry_perms(3), archive_entry_time(3),
     libarchive(3), stat(2)
@


1.1.1.2
log
@Import libarchive-3.3.1.
@
text
@d3 12
a14 12
1mNAME0m
     1marchive_entry_stat22m, 1marchive_entry_copy_stat22m, 1marchive_entry_filetype22m,
     1marchive_entry_set_filetype22m, 1marchive_entry_mode22m, 1marchive_entry_set_mode22m,
     1marchive_entry_size22m, 1marchive_entry_size_is_set22m, 1marchive_entry_set_size22m,
     1marchive_entry_unset_size22m, 1marchive_entry_dev22m, 1marchive_entry_set_dev22m,
     1marchive_entry_dev_is_set22m, 1marchive_entry_devmajor22m,
     1marchive_entry_set_devmajor22m, 1marchive_entry_devminor22m,
     1marchive_entry_set_devminor22m, 1marchive_entry_ino22m, 1marchive_entry_set_ino22m,
     1marchive_entry_ino_is_set22m, 1marchive_entry_ino6422m, 1marchive_entry_set_ino6422m,
     1marchive_entry_nlink22m, 1marchive_entry_rdev22m, 1marchive_entry_set_rdev22m,
     1marchive_entry_rdevmajor22m, 1marchive_entry_set_rdevmajor22m,
     1marchive_entry_rdevminor22m, 1marchive_entry_set_rdevminor22m, — accessor func‐
d17 1
a17 1
1mLIBRARY0m
d20 2
a21 2
1mSYNOPSIS0m
     1m#include <archive_entry.h>0m
d23 2
a24 2
     4mconst24m 4mstruct24m 4mstat24m 4m*0m
     1marchive_entry_stat22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d26 2
a27 2
     4mvoid0m
     1marchive_entry_copy_stat22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mconst24m 4mstruct24m 4mstat24m 4m*sb24m);
d29 2
a30 2
     4mmode_t0m
     1marchive_entry_filetype22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d32 2
a33 2
     4mvoid0m
     1marchive_entry_set_filetype22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mint24m 4mtype24m);
d35 2
a36 2
     4mmode_t0m
     1marchive_entry_mode22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d38 2
a39 2
     4mvoid0m
     1marchive_entry_set_mode22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mmode_t24m 4mmode24m);
d41 2
a42 2
     4mint64_t0m
     1marchive_entry_size22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d44 2
a45 2
     4mint0m
     1marchive_entry_size_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d47 2
a48 2
     4mvoid0m
     1marchive_entry_set_size22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mint64_t24m 4msize24m);
d50 2
a51 2
     4mvoid0m
     1marchive_entry_unset_size22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d53 2
a54 2
     4mdev_t0m
     1marchive_entry_dev22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d56 2
a57 2
     4mvoid0m
     1marchive_entry_set_dev22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mdev24m);
d59 2
a60 2
     4mint0m
     1marchive_entry_dev_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d62 2
a63 2
     4mdev_t0m
     1marchive_entry_devmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d65 2
a66 2
     4mvoid0m
     1marchive_entry_set_devmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mmajor24m);
d68 2
a69 2
     4mdev_t0m
     1marchive_entry_devminor22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d71 2
a72 2
     4mvoid0m
     1marchive_entry_set_devminor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mminor24m);
d74 2
a75 2
     4mino_t0m
     1marchive_entry_ino22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d77 2
a78 2
     4mvoid0m
     1marchive_entry_set_ino22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mlong24m 4mino24m);
d80 2
a81 2
     4mint0m
     1marchive_entry_ino_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d83 2
a84 2
     4mint64_t0m
     1marchive_entry_ino6422m(4mstruct24m 4marchive_entry24m 4m*a24m);
d86 2
a87 2
     4mvoid0m
     1marchive_entry_set_ino6422m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mint64_t24m 4mino24m);
d89 2
a90 2
     4munsigned24m 4mint0m
     1marchive_entry_nlink22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d92 2
a93 2
     4mvoid0m
     1marchive_entry_set_nlink22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mint24m 4mcount24m);
d95 2
a96 2
     4mdev_t0m
     1marchive_entry_rdev22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d98 2
a99 2
     4mdev_t0m
     1marchive_entry_rdevmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d101 2
a102 2
     4mdev_t0m
     1marchive_entry_rdevminor22m(4mstruct24m 4marchive_entry24m 4m*a24m);
d104 2
a105 2
     4mvoid0m
     1marchive_entry_set_rdev22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mdev24m);
d107 2
a108 2
     4mvoid0m
     1marchive_entry_set_rdevmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mmajor24m);
d110 2
a111 2
     4mvoid0m
     1marchive_entry_set_rdevminor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mminor24m);
d113 3
a115 3
1mDESCRIPTION0m
   1mCopying to and from 4m22mstruct24m 4mstat0m
     The function 1marchive_entry_stat22m() converts the various fields stored in
d117 1
a117 1
     remains valid until either 1marchive_entry_clear22m() or 1marchive_entry_free22m()
d119 3
a121 3
     It currently sets the following values in 4mstruct24m 4mstat24m: 4mst_atime24m,
     4mst_ctime24m, 4mst_dev24m, 4mst_gid24m, 4mst_ino24m, 4mst_mode24m, 4mst_mtime24m, 4mst_nlink24m, 4mst_rdev24m,
     4mst_size24m, 4mst_uid24m.  In addition, 4mst_birthtime24m and high-precision informa‐
d125 2
a126 2
     The function 1marchive_entry_copy_stat22m() copies fields from the platform's
     4mstruct24m 4mstat24m.  Fields not provided by 4mstruct24m 4mstat24m are unchanged.
d128 2
a129 2
   1mGeneral accessor functions0m
     The functions 1marchive_entry_filetype22m() and 1marchive_entry_set_filetype22m()
d143 1
a143 1
     The functions 1marchive_entry_mode22m() and 1marchive_entry_set_mode22m() get/set a
d145 2
a146 2
     4mst_mode24m.  Use of 1marchive_entry_filetype22m() and 1marchive_entry_perm22m() for
     getting and 1marchive_entry_set_filetype22m() and 1marchive_entry_set_perm22m() for
d149 3
a151 3
     The function 1marchive_entry_size22m() returns the file size, if it has been
     set, and 0 otherwise.  1marchive_entry_size22m() can be used to query that
     status.  1marchive_entry_set_size22m() and 1marchive_entry_unset_size22m() set and
d155 1
a155 1
     1marchive_entry_nlinks22m() and set with 1marchive_entry_set_nlinks22m().
d157 2
a158 2
   1mIdentifying unique files0m
     The functions 1marchive_entry_dev22m() and 1marchive_entry_ino6422m() are used by
d163 8
a170 8
     1marchive_entry_devmajor22m() and 1marchive_entry_devminor22m().  The device can be
     set either via 1marchive_entry_set_dev22m() or by the combination of major and
     minor number using 1marchive_entry_set_devmajor22m() and
     1marchive_entry_set_devminor22m().

     The inode number can be obtained using 1marchive_entry_ino22m().  This is a
     legacy interface that uses the platform 4mino_t24m, which may be very small.
     To set the inode number, 1marchive_entry_set_ino6422m() is the preferred
d173 1
a173 1
   1mAccessor functions for block and character devices0m
d176 4
a179 4
     be obtained with 1marchive_device_rdev22m() and set with
     1marchive_device_set_rdev22m().  The major and minor numbers are accessed by
     1marchive_device_rdevmajor22m(), 1marchive_device_rdevminor22m()
     1marchive_device_set_rdevmajor22m() and 1marchive_device_set_rdevminor22m().
d186 1
a186 1
1mSEE ALSO0m
@


1.1.1.3
log
@Import libarchive-3.3.2 + 9de5f3 + f9dacbf:
- Support NFS4 ACLs on Linux
- Bugfixes
@
text
@d3 12
a14 12
NAME
     archive_entry_stat, archive_entry_copy_stat, archive_entry_filetype,
     archive_entry_set_filetype, archive_entry_mode, archive_entry_set_mode,
     archive_entry_size, archive_entry_size_is_set, archive_entry_set_size,
     archive_entry_unset_size, archive_entry_dev, archive_entry_set_dev,
     archive_entry_dev_is_set, archive_entry_devmajor,
     archive_entry_set_devmajor, archive_entry_devminor,
     archive_entry_set_devminor, archive_entry_ino, archive_entry_set_ino,
     archive_entry_ino_is_set, archive_entry_ino64, archive_entry_set_ino64,
     archive_entry_nlink, archive_entry_rdev, archive_entry_set_rdev,
     archive_entry_rdevmajor, archive_entry_set_rdevmajor,
     archive_entry_rdevminor, archive_entry_set_rdevminor, — accessor func‐
d17 1
a17 1
LIBRARY
d20 2
a21 2
SYNOPSIS
     #include <archive_entry.h>
d23 2
a24 2
     const struct stat *
     archive_entry_stat(struct archive_entry *a);
d26 2
a27 2
     void
     archive_entry_copy_stat(struct archive_entry *a, const struct stat *sb);
d29 2
a30 2
     mode_t
     archive_entry_filetype(struct archive_entry *a);
d32 2
a33 2
     void
     archive_entry_set_filetype(struct archive_entry *a, unsigned int type);
d35 2
a36 2
     mode_t
     archive_entry_mode(struct archive_entry *a);
d38 2
a39 2
     void
     archive_entry_set_mode(struct archive_entry *a, mode_t mode);
d41 2
a42 2
     int64_t
     archive_entry_size(struct archive_entry *a);
d44 2
a45 2
     int
     archive_entry_size_is_set(struct archive_entry *a);
d47 2
a48 2
     void
     archive_entry_set_size(struct archive_entry *a, int64_t size);
d50 2
a51 2
     void
     archive_entry_unset_size(struct archive_entry *a);
d53 2
a54 2
     dev_t
     archive_entry_dev(struct archive_entry *a);
d56 2
a57 2
     void
     archive_entry_set_dev(struct archive_entry *a, dev_t dev);
d59 2
a60 2
     int
     archive_entry_dev_is_set(struct archive_entry *a);
d62 2
a63 2
     dev_t
     archive_entry_devmajor(struct archive_entry *a);
d65 2
a66 2
     void
     archive_entry_set_devmajor(struct archive_entry *a, dev_t major);
d68 2
a69 2
     dev_t
     archive_entry_devminor(struct archive_entry *a);
d71 2
a72 2
     void
     archive_entry_set_devminor(struct archive_entry *a, dev_t minor);
d74 2
a75 2
     ino_t
     archive_entry_ino(struct archive_entry *a);
d77 2
a78 2
     void
     archive_entry_set_ino(struct archive_entry *a, unsigned long ino);
d80 2
a81 2
     int
     archive_entry_ino_is_set(struct archive_entry *a);
d83 2
a84 2
     int64_t
     archive_entry_ino64(struct archive_entry *a);
d86 2
a87 2
     void
     archive_entry_set_ino64(struct archive_entry *a, int64_t ino);
d89 2
a90 2
     unsigned int
     archive_entry_nlink(struct archive_entry *a);
d92 2
a93 2
     void
     archive_entry_set_nlink(struct archive_entry *a, unsigned int count);
d95 2
a96 2
     dev_t
     archive_entry_rdev(struct archive_entry *a);
d98 2
a99 2
     dev_t
     archive_entry_rdevmajor(struct archive_entry *a);
d101 2
a102 2
     dev_t
     archive_entry_rdevminor(struct archive_entry *a);
d104 2
a105 2
     void
     archive_entry_set_rdev(struct archive_entry *a, dev_t dev);
d107 2
a108 2
     void
     archive_entry_set_rdevmajor(struct archive_entry *a, dev_t major);
d110 2
a111 2
     void
     archive_entry_set_rdevminor(struct archive_entry *a, dev_t minor);
d113 3
a115 3
DESCRIPTION
   Copying to and from struct stat
     The function archive_entry_stat() converts the various fields stored in
d117 1
a117 1
     remains valid until either archive_entry_clear() or archive_entry_free()
d119 3
a121 3
     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‐
d125 2
a126 2
     The function archive_entry_copy_stat() copies fields from the platform's
     struct stat.  Fields not provided by struct stat are unchanged.
d128 2
a129 2
   General accessor functions
     The functions archive_entry_filetype() and archive_entry_set_filetype()
d143 1
a143 1
     The functions archive_entry_mode() and archive_entry_set_mode() get/set a
d145 2
a146 2
     st_mode.  Use of archive_entry_filetype() and archive_entry_perm() for
     getting and archive_entry_set_filetype() and archive_entry_set_perm() for
d149 3
a151 3
     The function archive_entry_size() returns the file size, if it has been
     set, and 0 otherwise.  archive_entry_size() can be used to query that
     status.  archive_entry_set_size() and archive_entry_unset_size() set and
d155 1
a155 1
     archive_entry_nlinks() and set with archive_entry_set_nlinks().
d157 2
a158 2
   Identifying unique files
     The functions archive_entry_dev() and archive_entry_ino64() are used by
d163 8
a170 8
     archive_entry_devmajor() and archive_entry_devminor().  The device can be
     set either via archive_entry_set_dev() or by the combination of major and
     minor number using archive_entry_set_devmajor() and
     archive_entry_set_devminor().

     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
d173 1
a173 1
   Accessor functions for block and character devices
d176 4
a179 4
     be obtained with archive_device_rdev() and set with
     archive_device_set_rdev().  The major and minor numbers are accessed by
     archive_device_rdevmajor(), archive_device_rdevminor()
     archive_device_set_rdevmajor() and archive_device_set_rdevminor().
d186 1
a186 1
SEE ALSO
@


1.1.1.4
log
@Import libarchive 3.4.0
@
text
@d116 8
a123 7
     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.
d170 2
a171 2
     To set the inode number, archive_entry_set_ino64() is the preferred in‐
     terface.
@


1.1.1.5
log
@Import libarchive 3.7.2
@
text
@d14 2
a15 2
     archive_entry_rdevminor, archive_entry_set_rdevminor — accessor functions
     for manipulating archive entry descriptions
d129 1
a129 1
     get respectively set the filetype.	 The file type is one of the following
d138 1
a138 1
     Not all file types are supported by all platforms.	 The constants used by
d154 1
a154 1
     archive_entry_nlink() and set with archive_entry_set_nlink().
d176 1
a176 1
     archive_device_set_rdev().	 The major and minor numbers are accessed by
d186 2
a187 2
     stat(2), archive_entry_acl(3), archive_entry_perms(3),
     archive_entry_time(3), libarchive(3)
d189 1
a189 1
BSD			       February 2, 2012				   BSD
@


1.1.1.6
log
@libarchove: import version 3.7.7
@
text
@d1 1
a1 1
4mARCHIVE_ENTRY_STAT24m(3)	 Library Functions Manual     4mARCHIVE_ENTRY_STAT24m(3)
d3 185
a187 187
1mNAME0m
       archive_entry_stat,   archive_entry_copy_stat,  archive_entry_filetype,
       archive_entry_set_filetype, archive_entry_mode, archive_entry_set_mode,
       archive_entry_size, archive_entry_size_is_set,  archive_entry_set_size,
       archive_entry_unset_size,   archive_entry_dev,	archive_entry_set_dev,
       archive_entry_dev_is_set,		       archive_entry_devmajor,
       archive_entry_set_devmajor,		       archive_entry_devminor,
       archive_entry_set_devminor,  archive_entry_ino,	archive_entry_set_ino,
       archive_entry_ino_is_set, archive_entry_ino64, archive_entry_set_ino64,
       archive_entry_nlink,	archive_entry_rdev,    archive_entry_set_rdev,
       archive_entry_rdevmajor,			  archive_entry_set_rdevmajor,
       archive_entry_rdevminor,	 archive_entry_set_rdevminor  — accessor func‐
       tions for manipulating archive entry descriptions

1mLIBRARY0m
       Streaming Archive Library (libarchive, -larchive)

1mSYNOPSIS0m
       1m#include <archive_entry.h>0m

       4mconst24m 4mstruct24m 4mstat24m 4m*0m
       1marchive_entry_stat22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_copy_stat22m(4mstruct24m		   4marchive_entry24m		  4m*a24m,
	   4mconst24m 4mstruct24m 4mstat24m 4m*sb24m);

       4mmode_t0m
       1marchive_entry_filetype22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_filetype22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mint24m 4mtype24m);

       4mmode_t0m
       1marchive_entry_mode22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_mode22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mmode_t24m 4mmode24m);

       4mint64_t0m
       1marchive_entry_size22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mint0m
       1marchive_entry_size_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_size22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mint64_t24m 4msize24m);

       4mvoid0m
       1marchive_entry_unset_size22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mdev_t0m
       1marchive_entry_dev22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_dev22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mdev24m);

       4mint0m
       1marchive_entry_dev_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mdev_t0m
       1marchive_entry_devmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_devmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mmajor24m);

       4mdev_t0m
       1marchive_entry_devminor22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_devminor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mminor24m);

       4mino_t0m
       1marchive_entry_ino22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_ino22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mlong24m 4mino24m);

       4mint0m
       1marchive_entry_ino_is_set22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mint64_t0m
       1marchive_entry_ino6422m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_ino6422m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mint64_t24m 4mino24m);

       4munsigned24m 4mint0m
       1marchive_entry_nlink22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_nlink22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4munsigned24m 4mint24m 4mcount24m);

       4mdev_t0m
       1marchive_entry_rdev22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mdev_t0m
       1marchive_entry_rdevmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mdev_t0m
       1marchive_entry_rdevminor22m(4mstruct24m 4marchive_entry24m 4m*a24m);

       4mvoid0m
       1marchive_entry_set_rdev22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mdev24m);

       4mvoid0m
       1marchive_entry_set_rdevmajor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mmajor24m);

       4mvoid0m
       1marchive_entry_set_rdevminor22m(4mstruct24m 4marchive_entry24m 4m*a24m, 4mdev_t24m 4mminor24m);

1mDESCRIPTION0m
   1mCopying to and from 4mstruct24m 4mstat0m
       The function 1marchive_entry_stat22m() converts the various fields stored in
       the  archive entry to the format used by 4mstat24m(2).  The return value re‐
       mains valid until either 1marchive_entry_clear22m() or  1marchive_entry_free22m()
       is  called.  It is not affected by calls to the set accessor functions.
       It currently sets  the  following  values  in  4mstruct24m  4mstat24m:  4mst_atime24m,
       4mst_ctime24m, 4mst_dev24m, 4mst_gid24m, 4mst_ino24m, 4mst_mode24m, 4mst_mtime24m, 4mst_nlink24m, 4mst_rdev24m,
       4mst_size24m, 4mst_uid24m.  In addition, 4mst_birthtime24m and high-precision informa‐
       tion for time-related fields will be included on platforms that support
       it.

       The  function  1marchive_entry_copy_stat22m()  copies  fields from the plat‐
       form's 4mstruct24m 4mstat24m.  Fields not provided by 4mstruct24m 4mstat24m are unchanged.

   1mGeneral accessor functions0m
       The functions 1marchive_entry_filetype22m() and 1marchive_entry_set_filetype22m()
       get respectively set the filetype.  The file type is one of the follow‐
       ing constants:
	     AE_IFREG	Regular file
	     AE_IFLNK	Symbolic link
	     AE_IFSOCK	Socket
	     AE_IFCHR	Character device
	     AE_IFBLK	Block device
	     AE_IFDIR	Directory
	     AE_IFIFO	Named pipe (fifo)
       Not all file types are supported by all platforms.  The constants  used
       by  4mstat24m(2)	 may  have  different numeric values from the corresponding
       constants above.

       The functions 1marchive_entry_mode22m() and 1marchive_entry_set_mode22m() get/set
       a combination of file type and permissions and provide  the  equivalent
       of  4mst_mode24m.   Use of 1marchive_entry_filetype22m() and 1marchive_entry_perm22m()
       for	getting	      and	1marchive_entry_set_filetype22m()	and
       1marchive_entry_set_perm22m() for setting is recommended.

       The function 1marchive_entry_size22m() returns the file size, if it has been
       set,  and  0 otherwise.	1marchive_entry_size22m() can be used to query that
       status.	1marchive_entry_set_size22m()  and  1marchive_entry_unset_size22m()  set
       and unset the size, respectively.

       The  number  of	references  (hardlinks)	 can  be  obtained  by calling
       1marchive_entry_nlink22m() and set with 1marchive_entry_set_nlink22m().

   1mIdentifying unique files0m
       The functions 1marchive_entry_dev22m() and 1marchive_entry_ino6422m() are used by
       4marchive_entry_linkify24m(3) to find hardlinks.	 The pair of device and in‐
       ode is supposed to identify hardlinked files.

       The device major and minor number can be obtained  independently	 using
       1marchive_entry_devmajor22m()  and 1marchive_entry_devminor22m().  The device can
       be set either via 1marchive_entry_set_dev22m() or by the combination of	ma‐
       jor   and   minor   number   using   1marchive_entry_set_devmajor22m()	and
       1marchive_entry_set_devminor22m().

       The inode number can be obtained using 1marchive_entry_ino22m().	 This is  a
       legacy interface that uses the platform 4mino_t24m, which may be very small.
       To set the inode number, 1marchive_entry_set_ino6422m() is the preferred in‐
       terface.

   1mAccessor functions for block and character devices0m
       Block  and  character  devices  are characterised either using a device
       number or a pair of major and minor number.  The combined device number
       can   be	  obtained   with   1marchive_device_rdev22m()	 and	set    with
       1marchive_device_set_rdev22m().	The major and minor numbers are accessed by
       1marchive_device_rdevmajor22m(),			 1marchive_device_rdevminor22m()
       1marchive_device_set_rdevmajor22m() and 1marchive_device_set_rdevminor22m().

       The process of splitting the combined device number into major and  mi‐
       nor  number  and	 the  reverse  process of combing them differs between
       platforms.  Some archive formats use the	 combined  form,  while	 other
       formats use the split form.

1mSEE ALSO0m
       4mstat24m(2),	      4marchive_entry_acl24m(3),	 4marchive_entry_perms24m(3),
       4marchive_entry_time24m(3), 4mlibarchive24m(3)
d189 1
a189 1
Debian			       February 2, 2012		 4mARCHIVE_ENTRY_STAT24m(3)
@


1.1.1.7
log
@libarchive: import version 3.8.3
@
text
@d151 3
a153 3
       set, and 0 otherwise.  1marchive_entry_size_is_set22m() can be used to query
       that  status.   1marchive_entry_set_size22m() and 1marchive_entry_unset_size22m()
       set and unset the size, respectively.
d155 1
a155 1
       The number  of  references  (hardlinks)	can  be	 obtained  by  calling
d163 3
a165 3
       The  device  major and minor number can be obtained independently using
       1marchive_entry_devmajor22m() and 1marchive_entry_devminor22m().	 The device  can
       be  set either via 1marchive_entry_set_dev22m() or by the combination of ma‐
d169 1
a169 1
       The  inode number can be obtained using 1marchive_entry_ino22m().  This is a
d175 1
a175 1
       Block and character devices are characterised  either  using  a	device
d177 1
a177 1
       can    be    obtained   with   1marchive_device_rdev22m()   and	 set   with
d182 3
a184 3
       The  process of splitting the combined device number into major and mi‐
       nor number and the reverse process  of  combing	them  differs  between
       platforms.   Some  archive  formats  use the combined form, while other
d188 1
a188 1
       4mstat24m(2),	     4marchive_entry_acl24m(3),		 4marchive_entry_perms24m(3),
@


1.1.1.8
log
@libarchive: import version 3.8.10
@
text
@d177 4
a180 4
       can    be    obtained	with   1marchive_entry_rdev22m()   and	 set   with
       1marchive_entry_set_rdev22m().  The major and minor numbers are accessed	 by
       1marchive_entry_rdevmajor22m(),			  1marchive_entry_rdevminor22m()
       1marchive_entry_set_rdevmajor22m() and 1marchive_entry_set_rdevminor22m().
d182 3
a184 3
       The process of splitting the combined device number into major and  mi‐
       nor  number  and	 the reverse process of combining them differs between
       platforms.  Some archive formats use the	 combined  form,  while	 other
d188 1
a188 1
       4mstat24m(2),	      4marchive_entry_acl24m(3),	 4marchive_entry_perms24m(3),
@


