154 lines
5.5 KiB
Groff
154 lines
5.5 KiB
Groff
.\" Copyright (c) 2010 Joerg Sonnenberger
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.Dd February 2, 2012
|
|
.Dt ARCHIVE_ENTRY_PATHS 3
|
|
.Os
|
|
.Sh NAME
|
|
.Nm archive_entry_hardlink ,
|
|
.Nm archive_entry_hardlink_w ,
|
|
.Nm archive_entry_set_hardlink ,
|
|
.Nm archive_entry_copy_hardlink ,
|
|
.Nm archive_entry_copy_hardlink_w ,
|
|
.Nm archve_entry_update_hardlink_utf8 ,
|
|
.Nm archive_entry_set_link ,
|
|
.Nm archive_entry_copy_link ,
|
|
.Nm archive_entry_copy_link_w ,
|
|
.Nm archve_entry_update_link_utf8 ,
|
|
.Nm archive_entry_pathname ,
|
|
.Nm archive_entry_pathname_w ,
|
|
.Nm archive_entry_set_pathname ,
|
|
.Nm archive_entry_copy_pathname ,
|
|
.Nm archive_entry_copy_pathname_w ,
|
|
.Nm archve_entry_update_pathname_utf8 ,
|
|
.Nm archive_entry_sourcepath ,
|
|
.Nm archive_entry_copy_sourcepath ,
|
|
.Nm archive_entry_symlink,
|
|
.Nm archive_entry_symlink_w,
|
|
.Nm archive_entry_set_symlink ,
|
|
.Nm archive_entry_copy_symlink ,
|
|
.Nm archive_entry_copy_symlink_w ,
|
|
.Nm archve_entry_update_symlink_utf8
|
|
.Nd functions for manipulating path names in archive entry descriptions
|
|
.Sh LIBRARY
|
|
Streaming Archive Library (libarchive, -larchive)
|
|
.Sh SYNOPSIS
|
|
.In archive_entry.h
|
|
.Ft const char *
|
|
.Fn archive_entry_hardlink "struct archive_entry *a"
|
|
.Ft const wchar_t *
|
|
.Fn archive_entry_hardlink_w "struct archive_entry *a"
|
|
.Ft void
|
|
.Fn archive_entry_set_hardlink "struct archive_entry *a" "const char *path"
|
|
.Ft void
|
|
.Fn archive_entry_copy_hardlink "struct archive_entry *a" "const char *path"
|
|
.Ft void
|
|
.Fn archive_entry_copy_hardlink_w "struct archive_entry *a "const wchar_t *path"
|
|
.Ft int
|
|
.Fn archive_entry_update_hardlink_utf8 "struct archive_entry *a" "const char *path"
|
|
.Ft void
|
|
.Fn archive_entry_set_link "struct archive_entry *a" "const char *path"
|
|
.Ft void
|
|
.Fn archive_entry_copy_link "struct archive_entry *a" " const char *path"
|
|
.Ft void
|
|
.Fn archive_entry_copy_link_w "struct archive_entry *a" " const wchar_t *path"
|
|
.Ft int
|
|
.Fn archive_entry_update_link_utf8 "struct archive_entry *a" " const char *path"
|
|
.Ft const char *
|
|
.Fn archive_entry_pathname "struct archive_entry *a"
|
|
.Ft const wchar_t *
|
|
.Fn archive_entry_pathname_w "struct archive_entry *a"
|
|
.Ft void
|
|
.Fn archive_entry_set_pathname "struct archive_entry *a" "const char *path"
|
|
.Ft void
|
|
.Fn archive_entry_copy_pathname "struct archive_entry *a" "const char *path"
|
|
.Ft void
|
|
.Fn archive_entry_copy_pathname_w "struct archive_entry *a" "const wchar_t *path"
|
|
.Ft int
|
|
.Fn archive_entry_update_pathname_utf8 "struct archive_entry *a" "const char *path"
|
|
.Ft const char *
|
|
.Fn archive_entry_sourcepath "struct archive_entry *a"
|
|
.Ft void
|
|
.Fn archive_entry_copy_sourcepath "struct archive_entry *a" "const char *path"
|
|
.Ft const char *
|
|
.Fn archive_entry_symlink "struct archive_entry *a"
|
|
.Ft const wchar_t *
|
|
.Fn archive_entry_symlink_w "struct archive_entry *a"
|
|
.Ft void
|
|
.Fn archive_entry_set_symlink "struct archive_entry *a" "const char *path"
|
|
.Ft void
|
|
.Fn archive_entry_copy_symlink "struct archive_entry *a" "const char *path"
|
|
.Ft void
|
|
.Fn archive_entry_copy_symlink_w "struct archive_entry *a" "const wchar_t *path"
|
|
.Ft int
|
|
.Fn archive_entry_update_symlink_utf8 "struct archive_entry *a" "const char *path"
|
|
.Sh DESCRIPTION
|
|
Path names supported by
|
|
.Xr archive_entry 3 :
|
|
.Bl -tag -width "sourcepath" -compact
|
|
.It hardlink
|
|
Destination of the hardlink.
|
|
.It link
|
|
Update only.
|
|
For a symlink, update the destination.
|
|
Otherwise, make the entry a hardlink and alter
|
|
the destination for that.
|
|
.It pathname
|
|
Path in the archive
|
|
.It sourcepath
|
|
Path on the disk for use by
|
|
.Xr archive_read_disk 3 .
|
|
.It symlink
|
|
Destination of the symbolic link.
|
|
.El
|
|
.Pp
|
|
Path names can be provided in one of three different ways:
|
|
.Bl -tag -width "wchar_t *"
|
|
.It char *
|
|
Multibyte strings in the current locale.
|
|
.It wchar_t *
|
|
Wide character strings in the current locale.
|
|
The accessor functions are named
|
|
.Fn XXX_w .
|
|
.It UTF-8
|
|
Unicode strings encoded as UTF-8.
|
|
This are convience functions to update both the multibyte and wide
|
|
character strings at the same time.
|
|
.El
|
|
.Pp
|
|
The sourcepath is a pure filesystem concept and never stored in an
|
|
archive directly.
|
|
.Pp
|
|
For that reason, it is only available as multibyte string.
|
|
The link path is a convience function for conditionally setting
|
|
hardlink or symlink destination.
|
|
It doesn't have a corresponding get accessor function.
|
|
.Pp
|
|
.Fn archive_entry_set_XXX
|
|
is an alias for
|
|
.Fn archive_entry_copy_XXX .
|
|
.Sh SEE ALSO
|
|
.Xr archive 3 ,
|
|
.Xr archive_entry 3
|