1 |
+ |
<!-- Creator : groff version 1.21 --> |
2 |
+ |
<!-- CreationDate: Sat Feb 9 12:24:02 2013 --> |
3 |
+ |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" |
4 |
+ |
"http://www.w3.org/TR/html4/loose.dtd"> |
5 |
+ |
<html> |
6 |
+ |
<head> |
7 |
+ |
<meta name="generator" content="groff -Thtml, see www.gnu.org"> |
8 |
+ |
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> |
9 |
+ |
<meta name="Content-Style" content="text/css"> |
10 |
+ |
<style type="text/css"> |
11 |
+ |
p { margin-top: 0; margin-bottom: 0; vertical-align: top } |
12 |
+ |
pre { margin-top: 0; margin-bottom: 0; vertical-align: top } |
13 |
+ |
table { margin-top: 0; margin-bottom: 0; vertical-align: top } |
14 |
+ |
h1 { text-align: center } |
15 |
+ |
</style> |
16 |
+ |
<title></title> |
17 |
+ |
</head> |
18 |
+ |
<body> |
19 |
+ |
|
20 |
+ |
<hr> |
21 |
+ |
|
22 |
+ |
|
23 |
+ |
<p>ARCHIVE_ENTRY(3) BSD Library Functions Manual |
24 |
+ |
ARCHIVE_ENTRY(3)</p> |
25 |
+ |
|
26 |
+ |
<p style="margin-top: 1em"><b>NAME</b></p> |
27 |
+ |
|
28 |
+ |
<p style="margin-left:6%;"><b>archive_entry_clear</b>, |
29 |
+ |
<b>archive_entry_clone</b>, <b>archive_entry_free</b>, |
30 |
+ |
<b>archive_entry_new</b>, — functions for managing |
31 |
+ |
archive entry descriptions</p> |
32 |
+ |
|
33 |
+ |
<p style="margin-top: 1em"><b>LIBRARY</b></p> |
34 |
+ |
|
35 |
+ |
<p style="margin-left:6%;">Streaming Archive Library |
36 |
+ |
(libarchive, -larchive)</p> |
37 |
+ |
|
38 |
+ |
<p style="margin-top: 1em"><b>SYNOPSIS</b></p> |
39 |
+ |
|
40 |
+ |
<p style="margin-left:6%;"><b>#include |
41 |
+ |
<archive_entry.h></b></p> |
42 |
+ |
|
43 |
+ |
<p style="margin-left:6%; margin-top: 1em"><i>struct |
44 |
+ |
archive_entry *</i></p> |
45 |
+ |
|
46 |
+ |
|
47 |
+ |
<p style="margin-left:12%;"><b>archive_entry_clear</b>(<i>struct archive_entry *</i>);</p> |
48 |
+ |
|
49 |
+ |
<p style="margin-left:6%; margin-top: 1em"><i>struct |
50 |
+ |
archive_entry *</i></p> |
51 |
+ |
|
52 |
+ |
|
53 |
+ |
<p style="margin-left:12%;"><b>archive_entry_clone</b>(<i>struct archive_entry *</i>);</p> |
54 |
+ |
|
55 |
+ |
<p style="margin-left:6%; margin-top: 1em"><i>void</i></p> |
56 |
+ |
|
57 |
+ |
|
58 |
+ |
<p style="margin-left:12%;"><b>archive_entry_free</b>(<i>struct archive_entry *</i>);</p> |
59 |
+ |
|
60 |
+ |
<p style="margin-left:6%; margin-top: 1em"><i>struct |
61 |
+ |
archive_entry *</i></p> |
62 |
+ |
|
63 |
+ |
|
64 |
+ |
<p style="margin-left:12%;"><b>archive_entry_new</b>(<i>void</i>);</p> |
65 |
+ |
|
66 |
+ |
<p style="margin-top: 1em"><b>DESCRIPTION</b></p> |
67 |
+ |
|
68 |
+ |
<p style="margin-left:6%;">These functions create and |
69 |
+ |
manipulate data objects that represent entries within an |
70 |
+ |
archive. You can think of a struct archive_entry as a |
71 |
+ |
heavy-duty version of struct stat: it includes everything |
72 |
+ |
from struct stat plus associated pathname, textual group and |
73 |
+ |
user names, etc. These objects are used by libarchive(3) to |
74 |
+ |
represent the metadata associated with a particular entry in |
75 |
+ |
an archive.</p> |
76 |
+ |
|
77 |
+ |
<p style="margin-left:6%; margin-top: 1em"><b>Create and |
78 |
+ |
Destroy</b> <br> |
79 |
+ |
There are functions to allocate, destroy, clear, and copy |
80 |
+ |
<i>archive_entry</i> objects:</p> |
81 |
+ |
|
82 |
+ |
<p><b>archive_entry_clear</b>()</p> |
83 |
+ |
|
84 |
+ |
<p style="margin-left:17%;">Erases the object, resetting |
85 |
+ |
all internal fields to the same state as a newly-created |
86 |
+ |
object. This is provided to allow you to quickly recycle |
87 |
+ |
objects without thrashing the heap.</p> |
88 |
+ |
|
89 |
+ |
<p><b>archive_entry_clone</b>()</p> |
90 |
+ |
|
91 |
+ |
<p style="margin-left:17%;">A deep copy operation; all text |
92 |
+ |
fields are duplicated.</p> |
93 |
+ |
|
94 |
+ |
<p><b>archive_entry_free</b>()</p> |
95 |
+ |
|
96 |
+ |
<p style="margin-left:17%;">Releases the struct |
97 |
+ |
archive_entry object.</p> |
98 |
+ |
|
99 |
+ |
<p><b>archive_entry_new</b>()</p> |
100 |
+ |
|
101 |
+ |
<p style="margin-left:17%;">Allocate and return a blank |
102 |
+ |
struct archive_entry object.</p> |
103 |
+ |
|
104 |
+ |
<p style="margin-left:6%; margin-top: 1em"><b>Function |
105 |
+ |
groups</b> <br> |
106 |
+ |
Due to high number of functions, the accessor functions can |
107 |
+ |
be found in man pages grouped by the purpose.</p> |
108 |
+ |
|
109 |
+ |
<p style="margin-top: 1em">archive_entry_acl(3)</p> |
110 |
+ |
|
111 |
+ |
<p style="margin-left:37%; margin-top: 1em">Access Control |
112 |
+ |
List manipulation</p> |
113 |
+ |
|
114 |
+ |
<p style="margin-top: 1em">archive_entry_paths(3)</p> |
115 |
+ |
|
116 |
+ |
<p style="margin-left:37%; margin-top: 1em">Path name |
117 |
+ |
manipulation</p> |
118 |
+ |
|
119 |
+ |
<p style="margin-top: 1em">archive_entry_perms(3)</p> |
120 |
+ |
|
121 |
+ |
<p style="margin-left:37%; margin-top: 1em">User, group and |
122 |
+ |
mode manipulation</p> |
123 |
+ |
|
124 |
+ |
<p style="margin-top: 1em">archive_entry_stat(3)</p> |
125 |
+ |
|
126 |
+ |
<p style="margin-left:37%; margin-top: 1em">Functions not |
127 |
+ |
in the other groups and copying to/from <i>struct |
128 |
+ |
stat</i>.</p> |
129 |
+ |
|
130 |
+ |
<p style="margin-top: 1em">archive_entry_time(3)</p> |
131 |
+ |
|
132 |
+ |
<p style="margin-left:37%; margin-top: 1em">Time field |
133 |
+ |
manipulation</p> |
134 |
+ |
|
135 |
+ |
<p style="margin-left:6%; margin-top: 1em">Most of the |
136 |
+ |
functions set or read entries in an object. Such functions |
137 |
+ |
have one of the following forms:</p> |
138 |
+ |
|
139 |
+ |
<p><b>archive_entry_set_XXXX</b>()</p> |
140 |
+ |
|
141 |
+ |
<p style="margin-left:17%;">Stores the provided data in the |
142 |
+ |
object. In particular, for strings, the pointer is stored, |
143 |
+ |
not the referenced string.</p> |
144 |
+ |
|
145 |
+ |
<p><b>archive_entry_copy_XXXX</b>()</p> |
146 |
+ |
|
147 |
+ |
<p style="margin-left:17%;">As above, except that the |
148 |
+ |
referenced data is copied into the object.</p> |
149 |
+ |
|
150 |
+ |
<p><b>archive_entry_XXXX</b>()</p> |
151 |
+ |
|
152 |
+ |
<p style="margin-left:17%;">Returns the specified data. In |
153 |
+ |
the case of strings, a const-qualified pointer to the string |
154 |
+ |
is returned.</p> |
155 |
+ |
|
156 |
+ |
<p style="margin-left:6%;">String data can be set or |
157 |
+ |
accessed as wide character strings or normal <i>char</i> |
158 |
+ |
strings. The functions that use wide character strings are |
159 |
+ |
suffixed with <b>_w</b>. Note that these are different |
160 |
+ |
representations of the same data: For example, if you store |
161 |
+ |
a narrow string and read the corresponding wide string, the |
162 |
+ |
object will transparently convert formats using the current |
163 |
+ |
locale. Similarly, if you store a wide string and then store |
164 |
+ |
a narrow string for the same data, the previously-set wide |
165 |
+ |
string will be discarded in favor of the new data.</p> |
166 |
+ |
|
167 |
+ |
<p style="margin-top: 1em"><b>SEE ALSO</b></p> |
168 |
+ |
|
169 |
+ |
<p style="margin-left:6%;">archive(3), |
170 |
+ |
archive_entry_acl(3), archive_entry_paths(3), |
171 |
+ |
archive_entry_perms(3), archive_entry_time(3)</p> |
172 |
+ |
|
173 |
+ |
<p style="margin-top: 1em"><b>HISTORY</b></p> |
174 |
+ |
|
175 |
+ |
<p style="margin-left:6%;">The <b>libarchive</b> library |
176 |
+ |
first appeared in FreeBSD 5.3.</p> |
177 |
+ |
|
178 |
+ |
<p style="margin-top: 1em"><b>AUTHORS</b></p> |
179 |
+ |
|
180 |
+ |
<p style="margin-left:6%;">The <b>libarchive</b> library |
181 |
+ |
was written by Tim Kientzle ⟨ kientzle@acm.org⟩ |
182 |
+ |
.</p> |
183 |
+ |
|
184 |
+ |
<p style="margin-left:6%; margin-top: 1em">BSD |
185 |
+ |
Feburary 2, 2012 BSD</p> |
186 |
+ |
<hr> |
187 |
+ |
</body> |
188 |
+ |
</html> |