diff options
author | Tim Kientzle <kientzle@FreeBSD.org> | 2006-03-21 16:55:46 +0000 |
---|---|---|
committer | Tim Kientzle <kientzle@FreeBSD.org> | 2006-03-21 16:55:46 +0000 |
commit | 2228e327554de7a7c2b875bbc29ca4d7b78d71f1 (patch) | |
tree | c3aca38252d2ed10ab3875ada2f51f284743c856 /lib/libarchive/archive_entry.h | |
parent | 5342d17f09a8eec0477b117bc74a90921ac2f03e (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.h | 19 |
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 */ |