]> git.proxmox.com Git - libarchive-perl.git/blame - LibArchive/lib/LibArchive.pm
d/copyright: update and license as AGPL-3.0-or-later
[libarchive-perl.git] / LibArchive / lib / LibArchive.pm
CommitLineData
918a6904
DM
1package LibArchive;
2
34f6f4f9 3use 5.036000;
918a6904
DM
4use strict;
5use warnings;
6use Carp;
7
8require Exporter;
9use AutoLoader;
10
11our @ISA = qw(Exporter);
12
13# Items to export into callers namespace by default. Note: do not export
14# names by default without a very good reason. Use EXPORT_OK instead.
15# Do not simply export all your public functions/methods/constants.
16
17# This allows declaration use LibArchive ':all';
18# If you do not need this, moving things directly into @EXPORT or @EXPORT_OK
19# will save memory.
20our %EXPORT_TAGS = ( 'all' => [ qw(
918a6904
DM
21 ARCHIVE_COMPRESSION_BZIP2
22 ARCHIVE_COMPRESSION_COMPRESS
23 ARCHIVE_COMPRESSION_GZIP
549b20dc 24 ARCHIVE_COMPRESSION_LRZIP
c9a94924
DM
25 ARCHIVE_COMPRESSION_LZIP
26 ARCHIVE_COMPRESSION_LZMA
918a6904
DM
27 ARCHIVE_COMPRESSION_NONE
28 ARCHIVE_COMPRESSION_PROGRAM
c9a94924
DM
29 ARCHIVE_COMPRESSION_RPM
30 ARCHIVE_COMPRESSION_UU
31 ARCHIVE_COMPRESSION_XZ
32 ARCHIVE_ENTRY_ACL_ADD_FILE
33 ARCHIVE_ENTRY_ACL_ADD_SUBDIRECTORY
34 ARCHIVE_ENTRY_ACL_APPEND_DATA
35 ARCHIVE_ENTRY_ACL_DELETE
36 ARCHIVE_ENTRY_ACL_DELETE_CHILD
37 ARCHIVE_ENTRY_ACL_ENTRY_DIRECTORY_INHERIT
38 ARCHIVE_ENTRY_ACL_ENTRY_FAILED_ACCESS
39 ARCHIVE_ENTRY_ACL_ENTRY_FILE_INHERIT
549b20dc 40 ARCHIVE_ENTRY_ACL_ENTRY_INHERITED
c9a94924
DM
41 ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY
42 ARCHIVE_ENTRY_ACL_ENTRY_NO_PROPAGATE_INHERIT
43 ARCHIVE_ENTRY_ACL_ENTRY_SUCCESSFUL_ACCESS
44 ARCHIVE_ENTRY_ACL_EVERYONE
45 ARCHIVE_ENTRY_ACL_EXECUTE
46 ARCHIVE_ENTRY_ACL_GROUP
47 ARCHIVE_ENTRY_ACL_GROUP_OBJ
48 ARCHIVE_ENTRY_ACL_INHERITANCE_NFS4
49 ARCHIVE_ENTRY_ACL_LIST_DIRECTORY
50 ARCHIVE_ENTRY_ACL_MASK
51 ARCHIVE_ENTRY_ACL_OTHER
52 ARCHIVE_ENTRY_ACL_PERMS_NFS4
53 ARCHIVE_ENTRY_ACL_PERMS_POSIX1E
54 ARCHIVE_ENTRY_ACL_READ
55 ARCHIVE_ENTRY_ACL_READ_ACL
56 ARCHIVE_ENTRY_ACL_READ_ATTRIBUTES
57 ARCHIVE_ENTRY_ACL_READ_DATA
58 ARCHIVE_ENTRY_ACL_READ_NAMED_ATTRS
549b20dc 59 ARCHIVE_ENTRY_ACL_STYLE_COMPACT
c9a94924
DM
60 ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID
61 ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT
549b20dc
SI
62 ARCHIVE_ENTRY_ACL_STYLE_SEPARATOR_COMMA
63 ARCHIVE_ENTRY_ACL_STYLE_SOLARIS
c9a94924
DM
64 ARCHIVE_ENTRY_ACL_SYNCHRONIZE
65 ARCHIVE_ENTRY_ACL_TYPE_ACCESS
66 ARCHIVE_ENTRY_ACL_TYPE_ALARM
67 ARCHIVE_ENTRY_ACL_TYPE_ALLOW
68 ARCHIVE_ENTRY_ACL_TYPE_AUDIT
69 ARCHIVE_ENTRY_ACL_TYPE_DEFAULT
70 ARCHIVE_ENTRY_ACL_TYPE_DENY
71 ARCHIVE_ENTRY_ACL_TYPE_NFS4
72 ARCHIVE_ENTRY_ACL_TYPE_POSIX1E
73 ARCHIVE_ENTRY_ACL_USER
74 ARCHIVE_ENTRY_ACL_USER_OBJ
75 ARCHIVE_ENTRY_ACL_WRITE
76 ARCHIVE_ENTRY_ACL_WRITE_ACL
77 ARCHIVE_ENTRY_ACL_WRITE_ATTRIBUTES
78 ARCHIVE_ENTRY_ACL_WRITE_DATA
79 ARCHIVE_ENTRY_ACL_WRITE_NAMED_ATTRS
80 ARCHIVE_ENTRY_ACL_WRITE_OWNER
34f6f4f9
SI
81 ARCHIVE_ENTRY_DIGEST_MD5
82 ARCHIVE_ENTRY_DIGEST_RMD160
83 ARCHIVE_ENTRY_DIGEST_SHA1
84 ARCHIVE_ENTRY_DIGEST_SHA256
85 ARCHIVE_ENTRY_DIGEST_SHA384
86 ARCHIVE_ENTRY_DIGEST_SHA512
918a6904
DM
87 ARCHIVE_EOF
88 ARCHIVE_EXTRACT_ACL
549b20dc 89 ARCHIVE_EXTRACT_CLEAR_NOCHANGE_FFLAGS
918a6904 90 ARCHIVE_EXTRACT_FFLAGS
549b20dc 91 ARCHIVE_EXTRACT_HFS_COMPRESSION_FORCED
c9a94924 92 ARCHIVE_EXTRACT_MAC_METADATA
918a6904 93 ARCHIVE_EXTRACT_NO_AUTODIR
549b20dc 94 ARCHIVE_EXTRACT_NO_HFS_COMPRESSION
918a6904
DM
95 ARCHIVE_EXTRACT_NO_OVERWRITE
96 ARCHIVE_EXTRACT_NO_OVERWRITE_NEWER
97 ARCHIVE_EXTRACT_OWNER
98 ARCHIVE_EXTRACT_PERM
549b20dc
SI
99 ARCHIVE_EXTRACT_SAFE_WRITES
100 ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS
918a6904
DM
101 ARCHIVE_EXTRACT_SECURE_NODOTDOT
102 ARCHIVE_EXTRACT_SECURE_SYMLINKS
c9a94924 103 ARCHIVE_EXTRACT_SPARSE
918a6904
DM
104 ARCHIVE_EXTRACT_TIME
105 ARCHIVE_EXTRACT_UNLINK
106 ARCHIVE_EXTRACT_XATTR
107 ARCHIVE_FAILED
108 ARCHIVE_FATAL
c9a94924
DM
109 ARCHIVE_FILTER_BZIP2
110 ARCHIVE_FILTER_COMPRESS
549b20dc 111 ARCHIVE_FILTER_GRZIP
c9a94924 112 ARCHIVE_FILTER_GZIP
549b20dc
SI
113 ARCHIVE_FILTER_LRZIP
114 ARCHIVE_FILTER_LZ4
c9a94924
DM
115 ARCHIVE_FILTER_LZIP
116 ARCHIVE_FILTER_LZMA
549b20dc 117 ARCHIVE_FILTER_LZOP
c9a94924
DM
118 ARCHIVE_FILTER_NONE
119 ARCHIVE_FILTER_PROGRAM
120 ARCHIVE_FILTER_RPM
121 ARCHIVE_FILTER_UU
122 ARCHIVE_FILTER_XZ
549b20dc 123 ARCHIVE_FILTER_ZSTD
c9a94924 124 ARCHIVE_FORMAT_7ZIP
918a6904
DM
125 ARCHIVE_FORMAT_AR
126 ARCHIVE_FORMAT_AR_BSD
127 ARCHIVE_FORMAT_AR_GNU
128 ARCHIVE_FORMAT_BASE_MASK
c9a94924 129 ARCHIVE_FORMAT_CAB
918a6904 130 ARCHIVE_FORMAT_CPIO
c9a94924 131 ARCHIVE_FORMAT_CPIO_AFIO_LARGE
918a6904
DM
132 ARCHIVE_FORMAT_CPIO_BIN_BE
133 ARCHIVE_FORMAT_CPIO_BIN_LE
134 ARCHIVE_FORMAT_CPIO_POSIX
34f6f4f9 135 ARCHIVE_FORMAT_CPIO_PWB
918a6904
DM
136 ARCHIVE_FORMAT_CPIO_SVR4_CRC
137 ARCHIVE_FORMAT_CPIO_SVR4_NOCRC
138 ARCHIVE_FORMAT_EMPTY
139 ARCHIVE_FORMAT_ISO9660
140 ARCHIVE_FORMAT_ISO9660_ROCKRIDGE
c9a94924
DM
141 ARCHIVE_FORMAT_LHA
142 ARCHIVE_FORMAT_MTREE
143 ARCHIVE_FORMAT_RAR
549b20dc 144 ARCHIVE_FORMAT_RAR_V5
c9a94924 145 ARCHIVE_FORMAT_RAW
918a6904
DM
146 ARCHIVE_FORMAT_SHAR
147 ARCHIVE_FORMAT_SHAR_BASE
148 ARCHIVE_FORMAT_SHAR_DUMP
149 ARCHIVE_FORMAT_TAR
150 ARCHIVE_FORMAT_TAR_GNUTAR
151 ARCHIVE_FORMAT_TAR_PAX_INTERCHANGE
152 ARCHIVE_FORMAT_TAR_PAX_RESTRICTED
153 ARCHIVE_FORMAT_TAR_USTAR
549b20dc 154 ARCHIVE_FORMAT_WARC
c9a94924 155 ARCHIVE_FORMAT_XAR
918a6904 156 ARCHIVE_FORMAT_ZIP
c9a94924
DM
157 ARCHIVE_MATCH_CTIME
158 ARCHIVE_MATCH_EQUAL
159 ARCHIVE_MATCH_MTIME
160 ARCHIVE_MATCH_NEWER
161 ARCHIVE_MATCH_OLDER
918a6904 162 ARCHIVE_OK
c9a94924
DM
163 ARCHIVE_READDISK_HONOR_NODUMP
164 ARCHIVE_READDISK_MAC_COPYFILE
549b20dc
SI
165 ARCHIVE_READDISK_NO_ACL
166 ARCHIVE_READDISK_NO_FFLAGS
34f6f4f9 167 ARCHIVE_READDISK_NO_SPARSE
c9a94924 168 ARCHIVE_READDISK_NO_TRAVERSE_MOUNTS
549b20dc 169 ARCHIVE_READDISK_NO_XATTR
c9a94924 170 ARCHIVE_READDISK_RESTORE_ATIME
549b20dc
SI
171 ARCHIVE_READ_FORMAT_CAPS_ENCRYPT_DATA
172 ARCHIVE_READ_FORMAT_CAPS_ENCRYPT_METADATA
173 ARCHIVE_READ_FORMAT_CAPS_NONE
174 ARCHIVE_READ_FORMAT_ENCRYPTION_DONT_KNOW
175 ARCHIVE_READ_FORMAT_ENCRYPTION_UNSUPPORTED
918a6904 176 ARCHIVE_RETRY
c9a94924 177 ARCHIVE_VERSION_NUMBER
918a6904
DM
178 ARCHIVE_WARN
179) ] );
180
181our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
182
183our @EXPORT = qw(
918a6904
DM
184 ARCHIVE_COMPRESSION_BZIP2
185 ARCHIVE_COMPRESSION_COMPRESS
186 ARCHIVE_COMPRESSION_GZIP
549b20dc 187 ARCHIVE_COMPRESSION_LRZIP
c9a94924
DM
188 ARCHIVE_COMPRESSION_LZIP
189 ARCHIVE_COMPRESSION_LZMA
918a6904
DM
190 ARCHIVE_COMPRESSION_NONE
191 ARCHIVE_COMPRESSION_PROGRAM
c9a94924
DM
192 ARCHIVE_COMPRESSION_RPM
193 ARCHIVE_COMPRESSION_UU
194 ARCHIVE_COMPRESSION_XZ
195 ARCHIVE_ENTRY_ACL_ADD_FILE
196 ARCHIVE_ENTRY_ACL_ADD_SUBDIRECTORY
197 ARCHIVE_ENTRY_ACL_APPEND_DATA
198 ARCHIVE_ENTRY_ACL_DELETE
199 ARCHIVE_ENTRY_ACL_DELETE_CHILD
200 ARCHIVE_ENTRY_ACL_ENTRY_DIRECTORY_INHERIT
201 ARCHIVE_ENTRY_ACL_ENTRY_FAILED_ACCESS
202 ARCHIVE_ENTRY_ACL_ENTRY_FILE_INHERIT
549b20dc 203 ARCHIVE_ENTRY_ACL_ENTRY_INHERITED
c9a94924
DM
204 ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY
205 ARCHIVE_ENTRY_ACL_ENTRY_NO_PROPAGATE_INHERIT
206 ARCHIVE_ENTRY_ACL_ENTRY_SUCCESSFUL_ACCESS
207 ARCHIVE_ENTRY_ACL_EVERYONE
208 ARCHIVE_ENTRY_ACL_EXECUTE
209 ARCHIVE_ENTRY_ACL_GROUP
210 ARCHIVE_ENTRY_ACL_GROUP_OBJ
211 ARCHIVE_ENTRY_ACL_INHERITANCE_NFS4
212 ARCHIVE_ENTRY_ACL_LIST_DIRECTORY
213 ARCHIVE_ENTRY_ACL_MASK
214 ARCHIVE_ENTRY_ACL_OTHER
215 ARCHIVE_ENTRY_ACL_PERMS_NFS4
216 ARCHIVE_ENTRY_ACL_PERMS_POSIX1E
217 ARCHIVE_ENTRY_ACL_READ
218 ARCHIVE_ENTRY_ACL_READ_ACL
219 ARCHIVE_ENTRY_ACL_READ_ATTRIBUTES
220 ARCHIVE_ENTRY_ACL_READ_DATA
221 ARCHIVE_ENTRY_ACL_READ_NAMED_ATTRS
549b20dc 222 ARCHIVE_ENTRY_ACL_STYLE_COMPACT
c9a94924
DM
223 ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID
224 ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT
549b20dc
SI
225 ARCHIVE_ENTRY_ACL_STYLE_SEPARATOR_COMMA
226 ARCHIVE_ENTRY_ACL_STYLE_SOLARIS
c9a94924
DM
227 ARCHIVE_ENTRY_ACL_SYNCHRONIZE
228 ARCHIVE_ENTRY_ACL_TYPE_ACCESS
229 ARCHIVE_ENTRY_ACL_TYPE_ALARM
230 ARCHIVE_ENTRY_ACL_TYPE_ALLOW
231 ARCHIVE_ENTRY_ACL_TYPE_AUDIT
232 ARCHIVE_ENTRY_ACL_TYPE_DEFAULT
233 ARCHIVE_ENTRY_ACL_TYPE_DENY
234 ARCHIVE_ENTRY_ACL_TYPE_NFS4
235 ARCHIVE_ENTRY_ACL_TYPE_POSIX1E
236 ARCHIVE_ENTRY_ACL_USER
237 ARCHIVE_ENTRY_ACL_USER_OBJ
238 ARCHIVE_ENTRY_ACL_WRITE
239 ARCHIVE_ENTRY_ACL_WRITE_ACL
240 ARCHIVE_ENTRY_ACL_WRITE_ATTRIBUTES
241 ARCHIVE_ENTRY_ACL_WRITE_DATA
242 ARCHIVE_ENTRY_ACL_WRITE_NAMED_ATTRS
243 ARCHIVE_ENTRY_ACL_WRITE_OWNER
34f6f4f9
SI
244 ARCHIVE_ENTRY_DIGEST_MD5
245 ARCHIVE_ENTRY_DIGEST_RMD160
246 ARCHIVE_ENTRY_DIGEST_SHA1
247 ARCHIVE_ENTRY_DIGEST_SHA256
248 ARCHIVE_ENTRY_DIGEST_SHA384
249 ARCHIVE_ENTRY_DIGEST_SHA512
918a6904
DM
250 ARCHIVE_EOF
251 ARCHIVE_EXTRACT_ACL
549b20dc 252 ARCHIVE_EXTRACT_CLEAR_NOCHANGE_FFLAGS
918a6904 253 ARCHIVE_EXTRACT_FFLAGS
549b20dc 254 ARCHIVE_EXTRACT_HFS_COMPRESSION_FORCED
c9a94924 255 ARCHIVE_EXTRACT_MAC_METADATA
918a6904 256 ARCHIVE_EXTRACT_NO_AUTODIR
549b20dc 257 ARCHIVE_EXTRACT_NO_HFS_COMPRESSION
918a6904
DM
258 ARCHIVE_EXTRACT_NO_OVERWRITE
259 ARCHIVE_EXTRACT_NO_OVERWRITE_NEWER
260 ARCHIVE_EXTRACT_OWNER
261 ARCHIVE_EXTRACT_PERM
549b20dc
SI
262 ARCHIVE_EXTRACT_SAFE_WRITES
263 ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS
918a6904
DM
264 ARCHIVE_EXTRACT_SECURE_NODOTDOT
265 ARCHIVE_EXTRACT_SECURE_SYMLINKS
c9a94924 266 ARCHIVE_EXTRACT_SPARSE
918a6904
DM
267 ARCHIVE_EXTRACT_TIME
268 ARCHIVE_EXTRACT_UNLINK
269 ARCHIVE_EXTRACT_XATTR
270 ARCHIVE_FAILED
271 ARCHIVE_FATAL
c9a94924
DM
272 ARCHIVE_FILTER_BZIP2
273 ARCHIVE_FILTER_COMPRESS
549b20dc 274 ARCHIVE_FILTER_GRZIP
c9a94924 275 ARCHIVE_FILTER_GZIP
549b20dc
SI
276 ARCHIVE_FILTER_LRZIP
277 ARCHIVE_FILTER_LZ4
c9a94924
DM
278 ARCHIVE_FILTER_LZIP
279 ARCHIVE_FILTER_LZMA
549b20dc 280 ARCHIVE_FILTER_LZOP
c9a94924
DM
281 ARCHIVE_FILTER_NONE
282 ARCHIVE_FILTER_PROGRAM
283 ARCHIVE_FILTER_RPM
284 ARCHIVE_FILTER_UU
285 ARCHIVE_FILTER_XZ
549b20dc 286 ARCHIVE_FILTER_ZSTD
c9a94924 287 ARCHIVE_FORMAT_7ZIP
918a6904
DM
288 ARCHIVE_FORMAT_AR
289 ARCHIVE_FORMAT_AR_BSD
290 ARCHIVE_FORMAT_AR_GNU
291 ARCHIVE_FORMAT_BASE_MASK
c9a94924 292 ARCHIVE_FORMAT_CAB
918a6904 293 ARCHIVE_FORMAT_CPIO
c9a94924 294 ARCHIVE_FORMAT_CPIO_AFIO_LARGE
918a6904
DM
295 ARCHIVE_FORMAT_CPIO_BIN_BE
296 ARCHIVE_FORMAT_CPIO_BIN_LE
297 ARCHIVE_FORMAT_CPIO_POSIX
34f6f4f9 298 ARCHIVE_FORMAT_CPIO_PWB
918a6904
DM
299 ARCHIVE_FORMAT_CPIO_SVR4_CRC
300 ARCHIVE_FORMAT_CPIO_SVR4_NOCRC
301 ARCHIVE_FORMAT_EMPTY
302 ARCHIVE_FORMAT_ISO9660
303 ARCHIVE_FORMAT_ISO9660_ROCKRIDGE
c9a94924
DM
304 ARCHIVE_FORMAT_LHA
305 ARCHIVE_FORMAT_MTREE
306 ARCHIVE_FORMAT_RAR
549b20dc 307 ARCHIVE_FORMAT_RAR_V5
c9a94924 308 ARCHIVE_FORMAT_RAW
918a6904
DM
309 ARCHIVE_FORMAT_SHAR
310 ARCHIVE_FORMAT_SHAR_BASE
311 ARCHIVE_FORMAT_SHAR_DUMP
312 ARCHIVE_FORMAT_TAR
313 ARCHIVE_FORMAT_TAR_GNUTAR
314 ARCHIVE_FORMAT_TAR_PAX_INTERCHANGE
315 ARCHIVE_FORMAT_TAR_PAX_RESTRICTED
316 ARCHIVE_FORMAT_TAR_USTAR
549b20dc 317 ARCHIVE_FORMAT_WARC
c9a94924 318 ARCHIVE_FORMAT_XAR
918a6904 319 ARCHIVE_FORMAT_ZIP
c9a94924
DM
320 ARCHIVE_MATCH_CTIME
321 ARCHIVE_MATCH_EQUAL
322 ARCHIVE_MATCH_MTIME
323 ARCHIVE_MATCH_NEWER
324 ARCHIVE_MATCH_OLDER
918a6904 325 ARCHIVE_OK
c9a94924
DM
326 ARCHIVE_READDISK_HONOR_NODUMP
327 ARCHIVE_READDISK_MAC_COPYFILE
549b20dc
SI
328 ARCHIVE_READDISK_NO_ACL
329 ARCHIVE_READDISK_NO_FFLAGS
34f6f4f9 330 ARCHIVE_READDISK_NO_SPARSE
c9a94924 331 ARCHIVE_READDISK_NO_TRAVERSE_MOUNTS
549b20dc 332 ARCHIVE_READDISK_NO_XATTR
c9a94924 333 ARCHIVE_READDISK_RESTORE_ATIME
549b20dc
SI
334 ARCHIVE_READ_FORMAT_CAPS_ENCRYPT_DATA
335 ARCHIVE_READ_FORMAT_CAPS_ENCRYPT_METADATA
336 ARCHIVE_READ_FORMAT_CAPS_NONE
337 ARCHIVE_READ_FORMAT_ENCRYPTION_DONT_KNOW
338 ARCHIVE_READ_FORMAT_ENCRYPTION_UNSUPPORTED
918a6904 339 ARCHIVE_RETRY
c9a94924 340 ARCHIVE_VERSION_NUMBER
918a6904
DM
341 ARCHIVE_WARN
342);
343
34f6f4f9 344our $VERSION = '3.6.2';
918a6904
DM
345
346sub AUTOLOAD {
347 # This AUTOLOAD is used to 'autoload' constants from the constant()
348 # XS function.
349
350 my $constname;
351 our $AUTOLOAD;
352 ($constname = $AUTOLOAD) =~ s/.*:://;
353 croak "&LibArchive::constant not defined" if $constname eq 'constant';
354 my ($error, $val) = constant($constname);
355 if ($error) { croak $error; }
356 {
357 no strict 'refs';
c9a94924
DM
358 # Fixed between 5.005_53 and 5.005_61
359#XXX if ($] >= 5.00561) {
360#XXX *$AUTOLOAD = sub () { $val };
361#XXX }
362#XXX else {
363 *$AUTOLOAD = sub { $val };
364#XXX }
918a6904
DM
365 }
366 goto &$AUTOLOAD;
367}
368
369require XSLoader;
370XSLoader::load('LibArchive', $VERSION);
371
372# Preloaded methods go here.
373
374# Autoload methods go after =cut, and are processed by the autosplit program.
375
3761;
377__END__
378# Below is stub documentation for your module. You'd better edit it!
379
380=head1 NAME
381
382LibArchive - Perl extension to access libarchive functions
383
384=head1 SYNOPSIS
385
386 use LibArchive;
387
918a6904
DM
388=head1 DESCRIPTION
389
390We currently support only a limited interface for reading archives.
391
392=head2 EXPORT
393
394None by default.
395
396=head2 Exportable constants
397
918a6904
DM
398 ARCHIVE_COMPRESSION_BZIP2
399 ARCHIVE_COMPRESSION_COMPRESS
400 ARCHIVE_COMPRESSION_GZIP
549b20dc 401 ARCHIVE_COMPRESSION_LRZIP
c9a94924
DM
402 ARCHIVE_COMPRESSION_LZIP
403 ARCHIVE_COMPRESSION_LZMA
918a6904
DM
404 ARCHIVE_COMPRESSION_NONE
405 ARCHIVE_COMPRESSION_PROGRAM
c9a94924
DM
406 ARCHIVE_COMPRESSION_RPM
407 ARCHIVE_COMPRESSION_UU
408 ARCHIVE_COMPRESSION_XZ
409 ARCHIVE_ENTRY_ACL_ADD_FILE
410 ARCHIVE_ENTRY_ACL_ADD_SUBDIRECTORY
411 ARCHIVE_ENTRY_ACL_APPEND_DATA
412 ARCHIVE_ENTRY_ACL_DELETE
413 ARCHIVE_ENTRY_ACL_DELETE_CHILD
414 ARCHIVE_ENTRY_ACL_ENTRY_DIRECTORY_INHERIT
415 ARCHIVE_ENTRY_ACL_ENTRY_FAILED_ACCESS
416 ARCHIVE_ENTRY_ACL_ENTRY_FILE_INHERIT
549b20dc 417 ARCHIVE_ENTRY_ACL_ENTRY_INHERITED
c9a94924
DM
418 ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY
419 ARCHIVE_ENTRY_ACL_ENTRY_NO_PROPAGATE_INHERIT
420 ARCHIVE_ENTRY_ACL_ENTRY_SUCCESSFUL_ACCESS
421 ARCHIVE_ENTRY_ACL_EVERYONE
422 ARCHIVE_ENTRY_ACL_EXECUTE
423 ARCHIVE_ENTRY_ACL_GROUP
424 ARCHIVE_ENTRY_ACL_GROUP_OBJ
425 ARCHIVE_ENTRY_ACL_INHERITANCE_NFS4
426 ARCHIVE_ENTRY_ACL_LIST_DIRECTORY
427 ARCHIVE_ENTRY_ACL_MASK
428 ARCHIVE_ENTRY_ACL_OTHER
429 ARCHIVE_ENTRY_ACL_PERMS_NFS4
430 ARCHIVE_ENTRY_ACL_PERMS_POSIX1E
431 ARCHIVE_ENTRY_ACL_READ
432 ARCHIVE_ENTRY_ACL_READ_ACL
433 ARCHIVE_ENTRY_ACL_READ_ATTRIBUTES
434 ARCHIVE_ENTRY_ACL_READ_DATA
435 ARCHIVE_ENTRY_ACL_READ_NAMED_ATTRS
549b20dc 436 ARCHIVE_ENTRY_ACL_STYLE_COMPACT
c9a94924
DM
437 ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID
438 ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT
549b20dc
SI
439 ARCHIVE_ENTRY_ACL_STYLE_SEPARATOR_COMMA
440 ARCHIVE_ENTRY_ACL_STYLE_SOLARIS
c9a94924
DM
441 ARCHIVE_ENTRY_ACL_SYNCHRONIZE
442 ARCHIVE_ENTRY_ACL_TYPE_ACCESS
443 ARCHIVE_ENTRY_ACL_TYPE_ALARM
444 ARCHIVE_ENTRY_ACL_TYPE_ALLOW
445 ARCHIVE_ENTRY_ACL_TYPE_AUDIT
446 ARCHIVE_ENTRY_ACL_TYPE_DEFAULT
447 ARCHIVE_ENTRY_ACL_TYPE_DENY
448 ARCHIVE_ENTRY_ACL_TYPE_NFS4
449 ARCHIVE_ENTRY_ACL_TYPE_POSIX1E
450 ARCHIVE_ENTRY_ACL_USER
451 ARCHIVE_ENTRY_ACL_USER_OBJ
452 ARCHIVE_ENTRY_ACL_WRITE
453 ARCHIVE_ENTRY_ACL_WRITE_ACL
454 ARCHIVE_ENTRY_ACL_WRITE_ATTRIBUTES
455 ARCHIVE_ENTRY_ACL_WRITE_DATA
456 ARCHIVE_ENTRY_ACL_WRITE_NAMED_ATTRS
457 ARCHIVE_ENTRY_ACL_WRITE_OWNER
34f6f4f9
SI
458 ARCHIVE_ENTRY_DIGEST_MD5
459 ARCHIVE_ENTRY_DIGEST_RMD160
460 ARCHIVE_ENTRY_DIGEST_SHA1
461 ARCHIVE_ENTRY_DIGEST_SHA256
462 ARCHIVE_ENTRY_DIGEST_SHA384
463 ARCHIVE_ENTRY_DIGEST_SHA512
918a6904
DM
464 ARCHIVE_EOF
465 ARCHIVE_EXTRACT_ACL
549b20dc 466 ARCHIVE_EXTRACT_CLEAR_NOCHANGE_FFLAGS
918a6904 467 ARCHIVE_EXTRACT_FFLAGS
549b20dc 468 ARCHIVE_EXTRACT_HFS_COMPRESSION_FORCED
c9a94924 469 ARCHIVE_EXTRACT_MAC_METADATA
918a6904 470 ARCHIVE_EXTRACT_NO_AUTODIR
549b20dc 471 ARCHIVE_EXTRACT_NO_HFS_COMPRESSION
918a6904
DM
472 ARCHIVE_EXTRACT_NO_OVERWRITE
473 ARCHIVE_EXTRACT_NO_OVERWRITE_NEWER
474 ARCHIVE_EXTRACT_OWNER
475 ARCHIVE_EXTRACT_PERM
549b20dc
SI
476 ARCHIVE_EXTRACT_SAFE_WRITES
477 ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS
918a6904
DM
478 ARCHIVE_EXTRACT_SECURE_NODOTDOT
479 ARCHIVE_EXTRACT_SECURE_SYMLINKS
c9a94924 480 ARCHIVE_EXTRACT_SPARSE
918a6904
DM
481 ARCHIVE_EXTRACT_TIME
482 ARCHIVE_EXTRACT_UNLINK
483 ARCHIVE_EXTRACT_XATTR
484 ARCHIVE_FAILED
485 ARCHIVE_FATAL
c9a94924
DM
486 ARCHIVE_FILTER_BZIP2
487 ARCHIVE_FILTER_COMPRESS
549b20dc 488 ARCHIVE_FILTER_GRZIP
c9a94924 489 ARCHIVE_FILTER_GZIP
549b20dc
SI
490 ARCHIVE_FILTER_LRZIP
491 ARCHIVE_FILTER_LZ4
c9a94924
DM
492 ARCHIVE_FILTER_LZIP
493 ARCHIVE_FILTER_LZMA
549b20dc 494 ARCHIVE_FILTER_LZOP
c9a94924
DM
495 ARCHIVE_FILTER_NONE
496 ARCHIVE_FILTER_PROGRAM
497 ARCHIVE_FILTER_RPM
498 ARCHIVE_FILTER_UU
499 ARCHIVE_FILTER_XZ
549b20dc 500 ARCHIVE_FILTER_ZSTD
c9a94924 501 ARCHIVE_FORMAT_7ZIP
918a6904
DM
502 ARCHIVE_FORMAT_AR
503 ARCHIVE_FORMAT_AR_BSD
504 ARCHIVE_FORMAT_AR_GNU
505 ARCHIVE_FORMAT_BASE_MASK
c9a94924 506 ARCHIVE_FORMAT_CAB
918a6904 507 ARCHIVE_FORMAT_CPIO
c9a94924 508 ARCHIVE_FORMAT_CPIO_AFIO_LARGE
918a6904
DM
509 ARCHIVE_FORMAT_CPIO_BIN_BE
510 ARCHIVE_FORMAT_CPIO_BIN_LE
511 ARCHIVE_FORMAT_CPIO_POSIX
34f6f4f9 512 ARCHIVE_FORMAT_CPIO_PWB
918a6904
DM
513 ARCHIVE_FORMAT_CPIO_SVR4_CRC
514 ARCHIVE_FORMAT_CPIO_SVR4_NOCRC
515 ARCHIVE_FORMAT_EMPTY
516 ARCHIVE_FORMAT_ISO9660
517 ARCHIVE_FORMAT_ISO9660_ROCKRIDGE
c9a94924
DM
518 ARCHIVE_FORMAT_LHA
519 ARCHIVE_FORMAT_MTREE
520 ARCHIVE_FORMAT_RAR
549b20dc 521 ARCHIVE_FORMAT_RAR_V5
c9a94924 522 ARCHIVE_FORMAT_RAW
918a6904
DM
523 ARCHIVE_FORMAT_SHAR
524 ARCHIVE_FORMAT_SHAR_BASE
525 ARCHIVE_FORMAT_SHAR_DUMP
526 ARCHIVE_FORMAT_TAR
527 ARCHIVE_FORMAT_TAR_GNUTAR
528 ARCHIVE_FORMAT_TAR_PAX_INTERCHANGE
529 ARCHIVE_FORMAT_TAR_PAX_RESTRICTED
530 ARCHIVE_FORMAT_TAR_USTAR
549b20dc 531 ARCHIVE_FORMAT_WARC
c9a94924 532 ARCHIVE_FORMAT_XAR
918a6904 533 ARCHIVE_FORMAT_ZIP
c9a94924
DM
534 ARCHIVE_MATCH_CTIME
535 ARCHIVE_MATCH_EQUAL
536 ARCHIVE_MATCH_MTIME
537 ARCHIVE_MATCH_NEWER
538 ARCHIVE_MATCH_OLDER
918a6904 539 ARCHIVE_OK
c9a94924
DM
540 ARCHIVE_READDISK_HONOR_NODUMP
541 ARCHIVE_READDISK_MAC_COPYFILE
549b20dc
SI
542 ARCHIVE_READDISK_NO_ACL
543 ARCHIVE_READDISK_NO_FFLAGS
34f6f4f9 544 ARCHIVE_READDISK_NO_SPARSE
c9a94924 545 ARCHIVE_READDISK_NO_TRAVERSE_MOUNTS
549b20dc 546 ARCHIVE_READDISK_NO_XATTR
c9a94924 547 ARCHIVE_READDISK_RESTORE_ATIME
549b20dc
SI
548 ARCHIVE_READ_FORMAT_CAPS_ENCRYPT_DATA
549 ARCHIVE_READ_FORMAT_CAPS_ENCRYPT_METADATA
550 ARCHIVE_READ_FORMAT_CAPS_NONE
551 ARCHIVE_READ_FORMAT_ENCRYPTION_DONT_KNOW
552 ARCHIVE_READ_FORMAT_ENCRYPTION_UNSUPPORTED
918a6904 553 ARCHIVE_RETRY
c9a94924 554 ARCHIVE_VERSION_NUMBER
918a6904
DM
555 ARCHIVE_WARN
556
549b20dc
SI
557
558
918a6904
DM
559=head1 SEE ALSO
560
c9a94924 561 man libarchive
918a6904
DM
562
563=head1 AUTHOR
564
565perl bindings: Proxmox Support Team, E<lt>support@proxmox.comE<gt>
566
567libarchive: Tim Kientzle
568
569=head1 COPYRIGHT AND LICENSE
570
f05d0585
TL
571Copyright (C) 2007-2023 Proxmox Server Solutions GmbH <support@proxmox.com>
572
573This program is free software: you can redistribute it and/or modify it under
574the terms of the GNU Affero General Public License as published by the Free
575Software Foundation, either version 3 of the License, or (at your option) any
576later version.
577
578This program is distributed in the hope that it will be useful, but WITHOUT ANY
579WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
580PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
581
582You should have received a copy of the GNU Affero General Public License along
583with this program. If not, see <https://www.gnu.org/licenses/>.
918a6904 584
918a6904 585=cut