29 #ifndef ARCHIVE_ENTRY_H_INCLUDED 30 #define ARCHIVE_ENTRY_H_INCLUDED 33 #define ARCHIVE_VERSION_NUMBER 3005002 43 #include <sys/types.h> 48 #if defined(_WIN32) && !defined(__CYGWIN__) 53 #if !defined(__LA_INT64_T_DEFINED) 54 # if ARCHIVE_VERSION_NUMBER < 4000000 55 #define __LA_INT64_T la_int64_t 57 #define __LA_INT64_T_DEFINED 58 # if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__WATCOMC__) 59 typedef __int64 la_int64_t;
62 # if defined(_SCO_DS) || defined(__osf__) 63 typedef long long la_int64_t;
65 typedef int64_t la_int64_t;
71 #if !defined(__LA_SSIZE_T_DEFINED) 73 # if ARCHIVE_VERSION_NUMBER < 4000000 74 #define __LA_SSIZE_T la_ssize_t 76 #define __LA_SSIZE_T_DEFINED 77 # if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__WATCOMC__) 78 # if defined(_SSIZE_T_DEFINED) || defined(_SSIZE_T_) 79 typedef ssize_t la_ssize_t;
80 # elif defined(_WIN64) 81 typedef __int64 la_ssize_t;
83 typedef long la_ssize_t;
87 typedef ssize_t la_ssize_t;
92 #if ARCHIVE_VERSION_NUMBER >= 3999000 94 # define __LA_MODE_T int 95 #elif defined(_WIN32) && !defined(__CYGWIN__) && !defined(__BORLANDC__) && !defined(__WATCOMC__) 96 # define __LA_MODE_T unsigned short 98 # define __LA_MODE_T mode_t 103 #include "android_lf.h" 111 #if ((defined __WIN32__) || (defined _WIN32) || defined(__CYGWIN__)) && (!defined LIBARCHIVE_STATIC) 112 # ifdef __LIBARCHIVE_BUILD 114 # define __LA_DECL __attribute__((dllexport)) extern 116 # define __LA_DECL __declspec(dllexport) 122 # define __LA_DECL __declspec(dllimport) 130 #if defined(__GNUC__) && __GNUC__ >= 3 && __GNUC_MINOR__ >= 1 131 # define __LA_DEPRECATED __attribute__((deprecated)) 133 # define __LA_DEPRECATED 157 struct archive_entry;
184 #define AE_IFMT ((__LA_MODE_T)0170000) 185 #define AE_IFREG ((__LA_MODE_T)0100000) 186 #define AE_IFLNK ((__LA_MODE_T)0120000) 187 #define AE_IFSOCK ((__LA_MODE_T)0140000) 188 #define AE_IFCHR ((__LA_MODE_T)0020000) 189 #define AE_IFBLK ((__LA_MODE_T)0060000) 190 #define AE_IFDIR ((__LA_MODE_T)0040000) 191 #define AE_IFIFO ((__LA_MODE_T)0010000) 196 #define AE_SYMLINK_TYPE_UNDEFINED 0 197 #define AE_SYMLINK_TYPE_FILE 1 198 #define AE_SYMLINK_TYPE_DIRECTORY 2 204 __LA_DECL
struct archive_entry *archive_entry_clear(
struct archive_entry *);
206 __LA_DECL
struct archive_entry *archive_entry_clone(
struct archive_entry *);
207 __LA_DECL
void archive_entry_free(
struct archive_entry *);
208 __LA_DECL
struct archive_entry *archive_entry_new(
void);
217 __LA_DECL
struct archive_entry *archive_entry_new2(
struct archive *);
238 __LA_DECL time_t archive_entry_atime(
struct archive_entry *);
239 __LA_DECL
long archive_entry_atime_nsec(
struct archive_entry *);
240 __LA_DECL
int archive_entry_atime_is_set(
struct archive_entry *);
241 __LA_DECL time_t archive_entry_birthtime(
struct archive_entry *);
242 __LA_DECL
long archive_entry_birthtime_nsec(
struct archive_entry *);
243 __LA_DECL
int archive_entry_birthtime_is_set(
struct archive_entry *);
244 __LA_DECL time_t archive_entry_ctime(
struct archive_entry *);
245 __LA_DECL
long archive_entry_ctime_nsec(
struct archive_entry *);
246 __LA_DECL
int archive_entry_ctime_is_set(
struct archive_entry *);
247 __LA_DECL dev_t archive_entry_dev(
struct archive_entry *);
248 __LA_DECL
int archive_entry_dev_is_set(
struct archive_entry *);
249 __LA_DECL dev_t archive_entry_devmajor(
struct archive_entry *);
250 __LA_DECL dev_t archive_entry_devminor(
struct archive_entry *);
251 __LA_DECL __LA_MODE_T archive_entry_filetype(
struct archive_entry *);
252 __LA_DECL
void archive_entry_fflags(
struct archive_entry *,
255 __LA_DECL
const char *archive_entry_fflags_text(
struct archive_entry *);
256 __LA_DECL la_int64_t archive_entry_gid(
struct archive_entry *);
257 __LA_DECL
const char *archive_entry_gname(
struct archive_entry *);
258 __LA_DECL
const char *archive_entry_gname_utf8(
struct archive_entry *);
259 __LA_DECL
const wchar_t *archive_entry_gname_w(
struct archive_entry *);
260 __LA_DECL
const char *archive_entry_hardlink(
struct archive_entry *);
261 __LA_DECL
const char *archive_entry_hardlink_utf8(
struct archive_entry *);
262 __LA_DECL
const wchar_t *archive_entry_hardlink_w(
struct archive_entry *);
263 __LA_DECL la_int64_t archive_entry_ino(
struct archive_entry *);
264 __LA_DECL la_int64_t archive_entry_ino64(
struct archive_entry *);
265 __LA_DECL
int archive_entry_ino_is_set(
struct archive_entry *);
266 __LA_DECL __LA_MODE_T archive_entry_mode(
struct archive_entry *);
267 __LA_DECL time_t archive_entry_mtime(
struct archive_entry *);
268 __LA_DECL
long archive_entry_mtime_nsec(
struct archive_entry *);
269 __LA_DECL
int archive_entry_mtime_is_set(
struct archive_entry *);
270 __LA_DECL
unsigned int archive_entry_nlink(
struct archive_entry *);
271 __LA_DECL
const char *archive_entry_pathname(
struct archive_entry *);
272 __LA_DECL
const char *archive_entry_pathname_utf8(
struct archive_entry *);
273 __LA_DECL
const wchar_t *archive_entry_pathname_w(
struct archive_entry *);
274 __LA_DECL __LA_MODE_T archive_entry_perm(
struct archive_entry *);
275 __LA_DECL dev_t archive_entry_rdev(
struct archive_entry *);
276 __LA_DECL dev_t archive_entry_rdevmajor(
struct archive_entry *);
277 __LA_DECL dev_t archive_entry_rdevminor(
struct archive_entry *);
278 __LA_DECL
const char *archive_entry_sourcepath(
struct archive_entry *);
279 __LA_DECL
const wchar_t *archive_entry_sourcepath_w(
struct archive_entry *);
280 __LA_DECL la_int64_t archive_entry_size(
struct archive_entry *);
281 __LA_DECL
int archive_entry_size_is_set(
struct archive_entry *);
282 __LA_DECL
const char *archive_entry_strmode(
struct archive_entry *);
283 __LA_DECL
const char *archive_entry_symlink(
struct archive_entry *);
284 __LA_DECL
const char *archive_entry_symlink_utf8(
struct archive_entry *);
285 __LA_DECL
int archive_entry_symlink_type(
struct archive_entry *);
286 __LA_DECL
const wchar_t *archive_entry_symlink_w(
struct archive_entry *);
287 __LA_DECL la_int64_t archive_entry_uid(
struct archive_entry *);
288 __LA_DECL
const char *archive_entry_uname(
struct archive_entry *);
289 __LA_DECL
const char *archive_entry_uname_utf8(
struct archive_entry *);
290 __LA_DECL
const wchar_t *archive_entry_uname_w(
struct archive_entry *);
291 __LA_DECL
int archive_entry_is_data_encrypted(
struct archive_entry *);
292 __LA_DECL
int archive_entry_is_metadata_encrypted(
struct archive_entry *);
293 __LA_DECL
int archive_entry_is_encrypted(
struct archive_entry *);
304 __LA_DECL
void archive_entry_set_atime(
struct archive_entry *, time_t,
long);
305 __LA_DECL
void archive_entry_unset_atime(
struct archive_entry *);
306 #if defined(_WIN32) && !defined(__CYGWIN__) 307 __LA_DECL
void archive_entry_copy_bhfi(
struct archive_entry *, BY_HANDLE_FILE_INFORMATION *);
309 __LA_DECL
void archive_entry_set_birthtime(
struct archive_entry *, time_t,
long);
310 __LA_DECL
void archive_entry_unset_birthtime(
struct archive_entry *);
311 __LA_DECL
void archive_entry_set_ctime(
struct archive_entry *, time_t,
long);
312 __LA_DECL
void archive_entry_unset_ctime(
struct archive_entry *);
313 __LA_DECL
void archive_entry_set_dev(
struct archive_entry *, dev_t);
314 __LA_DECL
void archive_entry_set_devmajor(
struct archive_entry *, dev_t);
315 __LA_DECL
void archive_entry_set_devminor(
struct archive_entry *, dev_t);
316 __LA_DECL
void archive_entry_set_filetype(
struct archive_entry *,
unsigned int);
317 __LA_DECL
void archive_entry_set_fflags(
struct archive_entry *,
318 unsigned long ,
unsigned long );
321 __LA_DECL
const char *archive_entry_copy_fflags_text(
struct archive_entry *,
323 __LA_DECL
const wchar_t *archive_entry_copy_fflags_text_w(
struct archive_entry *,
325 __LA_DECL
void archive_entry_set_gid(
struct archive_entry *, la_int64_t);
326 __LA_DECL
void archive_entry_set_gname(
struct archive_entry *,
const char *);
327 __LA_DECL
void archive_entry_set_gname_utf8(
struct archive_entry *,
const char *);
328 __LA_DECL
void archive_entry_copy_gname(
struct archive_entry *,
const char *);
329 __LA_DECL
void archive_entry_copy_gname_w(
struct archive_entry *,
const wchar_t *);
330 __LA_DECL
int archive_entry_update_gname_utf8(
struct archive_entry *,
const char *);
331 __LA_DECL
void archive_entry_set_hardlink(
struct archive_entry *,
const char *);
332 __LA_DECL
void archive_entry_set_hardlink_utf8(
struct archive_entry *,
const char *);
333 __LA_DECL
void archive_entry_copy_hardlink(
struct archive_entry *,
const char *);
334 __LA_DECL
void archive_entry_copy_hardlink_w(
struct archive_entry *,
const wchar_t *);
335 __LA_DECL
int archive_entry_update_hardlink_utf8(
struct archive_entry *,
const char *);
336 __LA_DECL
void archive_entry_set_ino(
struct archive_entry *, la_int64_t);
337 __LA_DECL
void archive_entry_set_ino64(
struct archive_entry *, la_int64_t);
338 __LA_DECL
void archive_entry_set_link(
struct archive_entry *,
const char *);
339 __LA_DECL
void archive_entry_set_link_utf8(
struct archive_entry *,
const char *);
340 __LA_DECL
void archive_entry_copy_link(
struct archive_entry *,
const char *);
341 __LA_DECL
void archive_entry_copy_link_w(
struct archive_entry *,
const wchar_t *);
342 __LA_DECL
int archive_entry_update_link_utf8(
struct archive_entry *,
const char *);
343 __LA_DECL
void archive_entry_set_mode(
struct archive_entry *, __LA_MODE_T);
344 __LA_DECL
void archive_entry_set_mtime(
struct archive_entry *, time_t,
long);
345 __LA_DECL
void archive_entry_unset_mtime(
struct archive_entry *);
346 __LA_DECL
void archive_entry_set_nlink(
struct archive_entry *,
unsigned int);
347 __LA_DECL
void archive_entry_set_pathname(
struct archive_entry *,
const char *);
348 __LA_DECL
void archive_entry_set_pathname_utf8(
struct archive_entry *,
const char *);
349 __LA_DECL
void archive_entry_copy_pathname(
struct archive_entry *,
const char *);
350 __LA_DECL
void archive_entry_copy_pathname_w(
struct archive_entry *,
const wchar_t *);
351 __LA_DECL
int archive_entry_update_pathname_utf8(
struct archive_entry *,
const char *);
352 __LA_DECL
void archive_entry_set_perm(
struct archive_entry *, __LA_MODE_T);
353 __LA_DECL
void archive_entry_set_rdev(
struct archive_entry *, dev_t);
354 __LA_DECL
void archive_entry_set_rdevmajor(
struct archive_entry *, dev_t);
355 __LA_DECL
void archive_entry_set_rdevminor(
struct archive_entry *, dev_t);
356 __LA_DECL
void archive_entry_set_size(
struct archive_entry *, la_int64_t);
357 __LA_DECL
void archive_entry_unset_size(
struct archive_entry *);
358 __LA_DECL
void archive_entry_copy_sourcepath(
struct archive_entry *,
const char *);
359 __LA_DECL
void archive_entry_copy_sourcepath_w(
struct archive_entry *,
const wchar_t *);
360 __LA_DECL
void archive_entry_set_symlink(
struct archive_entry *,
const char *);
361 __LA_DECL
void archive_entry_set_symlink_type(
struct archive_entry *,
int);
362 __LA_DECL
void archive_entry_set_symlink_utf8(
struct archive_entry *,
const char *);
363 __LA_DECL
void archive_entry_copy_symlink(
struct archive_entry *,
const char *);
364 __LA_DECL
void archive_entry_copy_symlink_w(
struct archive_entry *,
const wchar_t *);
365 __LA_DECL
int archive_entry_update_symlink_utf8(
struct archive_entry *,
const char *);
366 __LA_DECL
void archive_entry_set_uid(
struct archive_entry *, la_int64_t);
367 __LA_DECL
void archive_entry_set_uname(
struct archive_entry *,
const char *);
368 __LA_DECL
void archive_entry_set_uname_utf8(
struct archive_entry *,
const char *);
369 __LA_DECL
void archive_entry_copy_uname(
struct archive_entry *,
const char *);
370 __LA_DECL
void archive_entry_copy_uname_w(
struct archive_entry *,
const wchar_t *);
371 __LA_DECL
int archive_entry_update_uname_utf8(
struct archive_entry *,
const char *);
372 __LA_DECL
void archive_entry_set_is_data_encrypted(
struct archive_entry *,
char is_encrypted);
373 __LA_DECL
void archive_entry_set_is_metadata_encrypted(
struct archive_entry *,
char is_encrypted);
386 __LA_DECL
const struct stat *archive_entry_stat(
struct archive_entry *);
387 __LA_DECL
void archive_entry_copy_stat(
struct archive_entry *,
const struct stat *);
396 __LA_DECL
const void * archive_entry_mac_metadata(
struct archive_entry *,
size_t *);
397 __LA_DECL
void archive_entry_copy_mac_metadata(
struct archive_entry *,
const void *,
size_t);
403 #define ARCHIVE_ENTRY_DIGEST_MD5 0x00000001 404 #define ARCHIVE_ENTRY_DIGEST_RMD160 0x00000002 405 #define ARCHIVE_ENTRY_DIGEST_SHA1 0x00000003 406 #define ARCHIVE_ENTRY_DIGEST_SHA256 0x00000004 407 #define ARCHIVE_ENTRY_DIGEST_SHA384 0x00000005 408 #define ARCHIVE_ENTRY_DIGEST_SHA512 0x00000006 410 __LA_DECL
const unsigned char * archive_entry_digest(
struct archive_entry *,
int );
427 #define ARCHIVE_ENTRY_ACL_EXECUTE 0x00000001 428 #define ARCHIVE_ENTRY_ACL_WRITE 0x00000002 429 #define ARCHIVE_ENTRY_ACL_READ 0x00000004 430 #define ARCHIVE_ENTRY_ACL_READ_DATA 0x00000008 431 #define ARCHIVE_ENTRY_ACL_LIST_DIRECTORY 0x00000008 432 #define ARCHIVE_ENTRY_ACL_WRITE_DATA 0x00000010 433 #define ARCHIVE_ENTRY_ACL_ADD_FILE 0x00000010 434 #define ARCHIVE_ENTRY_ACL_APPEND_DATA 0x00000020 435 #define ARCHIVE_ENTRY_ACL_ADD_SUBDIRECTORY 0x00000020 436 #define ARCHIVE_ENTRY_ACL_READ_NAMED_ATTRS 0x00000040 437 #define ARCHIVE_ENTRY_ACL_WRITE_NAMED_ATTRS 0x00000080 438 #define ARCHIVE_ENTRY_ACL_DELETE_CHILD 0x00000100 439 #define ARCHIVE_ENTRY_ACL_READ_ATTRIBUTES 0x00000200 440 #define ARCHIVE_ENTRY_ACL_WRITE_ATTRIBUTES 0x00000400 441 #define ARCHIVE_ENTRY_ACL_DELETE 0x00000800 442 #define ARCHIVE_ENTRY_ACL_READ_ACL 0x00001000 443 #define ARCHIVE_ENTRY_ACL_WRITE_ACL 0x00002000 444 #define ARCHIVE_ENTRY_ACL_WRITE_OWNER 0x00004000 445 #define ARCHIVE_ENTRY_ACL_SYNCHRONIZE 0x00008000 447 #define ARCHIVE_ENTRY_ACL_PERMS_POSIX1E \ 448 (ARCHIVE_ENTRY_ACL_EXECUTE \ 449 | ARCHIVE_ENTRY_ACL_WRITE \ 450 | ARCHIVE_ENTRY_ACL_READ) 452 #define ARCHIVE_ENTRY_ACL_PERMS_NFS4 \ 453 (ARCHIVE_ENTRY_ACL_EXECUTE \ 454 | ARCHIVE_ENTRY_ACL_READ_DATA \ 455 | ARCHIVE_ENTRY_ACL_LIST_DIRECTORY \ 456 | ARCHIVE_ENTRY_ACL_WRITE_DATA \ 457 | ARCHIVE_ENTRY_ACL_ADD_FILE \ 458 | ARCHIVE_ENTRY_ACL_APPEND_DATA \ 459 | ARCHIVE_ENTRY_ACL_ADD_SUBDIRECTORY \ 460 | ARCHIVE_ENTRY_ACL_READ_NAMED_ATTRS \ 461 | ARCHIVE_ENTRY_ACL_WRITE_NAMED_ATTRS \ 462 | ARCHIVE_ENTRY_ACL_DELETE_CHILD \ 463 | ARCHIVE_ENTRY_ACL_READ_ATTRIBUTES \ 464 | ARCHIVE_ENTRY_ACL_WRITE_ATTRIBUTES \ 465 | ARCHIVE_ENTRY_ACL_DELETE \ 466 | ARCHIVE_ENTRY_ACL_READ_ACL \ 467 | ARCHIVE_ENTRY_ACL_WRITE_ACL \ 468 | ARCHIVE_ENTRY_ACL_WRITE_OWNER \ 469 | ARCHIVE_ENTRY_ACL_SYNCHRONIZE) 474 #define ARCHIVE_ENTRY_ACL_ENTRY_INHERITED 0x01000000 475 #define ARCHIVE_ENTRY_ACL_ENTRY_FILE_INHERIT 0x02000000 476 #define ARCHIVE_ENTRY_ACL_ENTRY_DIRECTORY_INHERIT 0x04000000 477 #define ARCHIVE_ENTRY_ACL_ENTRY_NO_PROPAGATE_INHERIT 0x08000000 478 #define ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY 0x10000000 479 #define ARCHIVE_ENTRY_ACL_ENTRY_SUCCESSFUL_ACCESS 0x20000000 480 #define ARCHIVE_ENTRY_ACL_ENTRY_FAILED_ACCESS 0x40000000 482 #define ARCHIVE_ENTRY_ACL_INHERITANCE_NFS4 \ 483 (ARCHIVE_ENTRY_ACL_ENTRY_FILE_INHERIT \ 484 | ARCHIVE_ENTRY_ACL_ENTRY_DIRECTORY_INHERIT \ 485 | ARCHIVE_ENTRY_ACL_ENTRY_NO_PROPAGATE_INHERIT \ 486 | ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY \ 487 | ARCHIVE_ENTRY_ACL_ENTRY_SUCCESSFUL_ACCESS \ 488 | ARCHIVE_ENTRY_ACL_ENTRY_FAILED_ACCESS \ 489 | ARCHIVE_ENTRY_ACL_ENTRY_INHERITED) 492 #define ARCHIVE_ENTRY_ACL_TYPE_ACCESS 0x00000100 493 #define ARCHIVE_ENTRY_ACL_TYPE_DEFAULT 0x00000200 494 #define ARCHIVE_ENTRY_ACL_TYPE_ALLOW 0x00000400 495 #define ARCHIVE_ENTRY_ACL_TYPE_DENY 0x00000800 496 #define ARCHIVE_ENTRY_ACL_TYPE_AUDIT 0x00001000 497 #define ARCHIVE_ENTRY_ACL_TYPE_ALARM 0x00002000 498 #define ARCHIVE_ENTRY_ACL_TYPE_POSIX1E (ARCHIVE_ENTRY_ACL_TYPE_ACCESS \ 499 | ARCHIVE_ENTRY_ACL_TYPE_DEFAULT) 500 #define ARCHIVE_ENTRY_ACL_TYPE_NFS4 (ARCHIVE_ENTRY_ACL_TYPE_ALLOW \ 501 | ARCHIVE_ENTRY_ACL_TYPE_DENY \ 502 | ARCHIVE_ENTRY_ACL_TYPE_AUDIT \ 503 | ARCHIVE_ENTRY_ACL_TYPE_ALARM) 506 #define ARCHIVE_ENTRY_ACL_USER 10001 507 #define ARCHIVE_ENTRY_ACL_USER_OBJ 10002 508 #define ARCHIVE_ENTRY_ACL_GROUP 10003 509 #define ARCHIVE_ENTRY_ACL_GROUP_OBJ 10004 510 #define ARCHIVE_ENTRY_ACL_MASK 10005 511 #define ARCHIVE_ENTRY_ACL_OTHER 10006 512 #define ARCHIVE_ENTRY_ACL_EVERYONE 10107 523 __LA_DECL
void archive_entry_acl_clear(
struct archive_entry *);
524 __LA_DECL
int archive_entry_acl_add_entry(
struct archive_entry *,
526 int ,
const char * );
527 __LA_DECL
int archive_entry_acl_add_entry_w(
struct archive_entry *,
529 int ,
const wchar_t * );
536 __LA_DECL
int archive_entry_acl_reset(
struct archive_entry *,
int );
537 __LA_DECL
int archive_entry_acl_next(
struct archive_entry *,
int ,
538 int * ,
int * ,
int * ,
539 int * ,
const char ** );
563 #define ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID 0x00000001 564 #define ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT 0x00000002 565 #define ARCHIVE_ENTRY_ACL_STYLE_SOLARIS 0x00000004 566 #define ARCHIVE_ENTRY_ACL_STYLE_SEPARATOR_COMMA 0x00000008 567 #define ARCHIVE_ENTRY_ACL_STYLE_COMPACT 0x00000010 569 __LA_DECL
wchar_t *archive_entry_acl_to_text_w(
struct archive_entry *,
570 la_ssize_t * ,
int );
571 __LA_DECL
char *archive_entry_acl_to_text(
struct archive_entry *,
572 la_ssize_t * ,
int );
573 __LA_DECL
int archive_entry_acl_from_text_w(
struct archive_entry *,
574 const wchar_t * ,
int );
575 __LA_DECL
int archive_entry_acl_from_text(
struct archive_entry *,
576 const char * ,
int );
579 #define OLD_ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID 1024 580 #define OLD_ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT 2048 583 __LA_DECL
const wchar_t *archive_entry_acl_text_w(
struct archive_entry *,
584 int ) __LA_DEPRECATED;
585 __LA_DECL
const char *archive_entry_acl_text(
struct archive_entry *,
586 int ) __LA_DEPRECATED;
589 __LA_DECL
int archive_entry_acl_types(
struct archive_entry *);
592 __LA_DECL
int archive_entry_acl_count(
struct archive_entry *,
int );
597 __LA_DECL
struct archive_acl *archive_entry_acl(
struct archive_entry *);
603 __LA_DECL
void archive_entry_xattr_clear(
struct archive_entry *);
604 __LA_DECL
void archive_entry_xattr_add_entry(
struct archive_entry *,
605 const char * ,
const void * ,
613 __LA_DECL
int archive_entry_xattr_count(
struct archive_entry *);
614 __LA_DECL
int archive_entry_xattr_reset(
struct archive_entry *);
615 __LA_DECL
int archive_entry_xattr_next(
struct archive_entry *,
616 const char ** ,
const void ** ,
size_t *);
622 __LA_DECL
void archive_entry_sparse_clear(
struct archive_entry *);
623 __LA_DECL
void archive_entry_sparse_add_entry(
struct archive_entry *,
624 la_int64_t , la_int64_t );
631 __LA_DECL
int archive_entry_sparse_count(
struct archive_entry *);
632 __LA_DECL
int archive_entry_sparse_reset(
struct archive_entry *);
633 __LA_DECL
int archive_entry_sparse_next(
struct archive_entry *,
634 la_int64_t * , la_int64_t * );
664 struct archive_entry_linkresolver;
706 __LA_DECL
struct archive_entry_linkresolver *archive_entry_linkresolver_new(
void);
707 __LA_DECL
void archive_entry_linkresolver_set_strategy(
708 struct archive_entry_linkresolver *,
int );
709 __LA_DECL
void archive_entry_linkresolver_free(
struct archive_entry_linkresolver *);
710 __LA_DECL
void archive_entry_linkify(
struct archive_entry_linkresolver *,
711 struct archive_entry **,
struct archive_entry **);
712 __LA_DECL
struct archive_entry *archive_entry_partial_links(
713 struct archive_entry_linkresolver *res,
unsigned int *links);