aboutsummaryrefslogtreecommitdiff
path: root/lib/libarchive/archive_entry.h
diff options
context:
space:
mode:
authorTim Kientzle <kientzle@FreeBSD.org>2006-03-21 16:55:46 +0000
committerTim Kientzle <kientzle@FreeBSD.org>2006-03-21 16:55:46 +0000
commit2228e327554de7a7c2b875bbc29ca4d7b78d71f1 (patch)
treec3aca38252d2ed10ab3875ada2f51f284743c856 /lib/libarchive/archive_entry.h
parent5342d17f09a8eec0477b117bc74a90921ac2f03e (diff)
POSIX.1e-style Extended Attribute support
This commit implements storing/reading POSIX.1e-style extended attribute information in "pax" format archives. An outline of the storage format is in the tar.5 manpage. The archive_read_extract() function has code to restore those archives to disk for Linux; FreeBSD implementation is forthcoming. Many thanks to Jaakko Heinonen for finding flaws in earlier proposals and doing the bulk of the coding in this work.
Notes
Notes: svn path=/head/; revision=156961
Diffstat (limited to 'lib/libarchive/archive_entry.h')
-rw-r--r--lib/libarchive/archive_entry.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/libarchive/archive_entry.h b/lib/libarchive/archive_entry.h
index a35f0dfae58b..3c3f73dfbc8d 100644
--- a/lib/libarchive/archive_entry.h
+++ b/lib/libarchive/archive_entry.h
@@ -229,4 +229,23 @@ int __archive_entry_acl_parse_w(struct archive_entry *,
}
#endif
+/*
+ * extended attributes
+ */
+
+void archive_entry_xattr_clear(struct archive_entry *);
+void archive_entry_xattr_add_entry(struct archive_entry *,
+ const char *name, const void *value, size_t size);
+
+/*
+ * To retrieve the xattr list, first "reset", then repeatedly ask for the
+ * "next" entry.
+ */
+
+int archive_entry_xattr_count(struct archive_entry *);
+int archive_entry_xattr_reset(struct archive_entry *);
+int archive_entry_xattr_next(struct archive_entry *,
+ const char **name, const void **value, size_t *);
+
+
#endif /* !ARCHIVE_ENTRY_H_INCLUDED */