archive_entry (3)
Leading comments
Copyright (c) 2003-2007 Tim Kientzle Copyright (c) 2010 Joerg Sonnenberger All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disc...
NAME
archive_entry_clear archive_entry_clone archive_entry_free archive_entry_new - functions for managing archive entry descriptionsLIBRARY
Streaming Archive Library (libarchive, -larchive)SYNOPSIS
In archive_entry.h Ft struct archive_entry * Fn archive_entry_clear struct archive_entry * Ft struct archive_entry * Fn archive_entry_clone struct archive_entry * Ft void Fn archive_entry_free struct archive_entry * Ft struct archive_entry * Fn archive_entry_new voidDESCRIPTION
These functions create and manipulate data objects that represent entries within an archive. You can think of a struct archive_entry as a heavy-duty version of struct stat it includes everything from struct stat plus associated pathname, textual group and user names, etc. These objects are used by libarchive(3) to represent the metadata associated with a particular entry in an archive.Create and Destroy
There are functions to allocate, destroy, clear, and copy archive_entry objects:- Fn archive_entry_clear
- Erases the object, resetting all internal fields to the same state as a newly-created object. This is provided to allow you to quickly recycle objects without thrashing the heap.
- Fn archive_entry_clone
- A deep copy operation; all text fields are duplicated.
- Fn archive_entry_free
- Releases the struct archive_entry object.
- Fn archive_entry_new
- Allocate and return a blank struct archive_entry object.
Function groups
Due to high number of functions, the accessor functions can be found in man pages grouped by the purpose.- archive_entry_acl3
- Access Control List manipulation
- archive_entry_paths3
- Path name manipulation
- archive_entry_perms3
- User, group and mode manipulation
- archive_entry_stat3
- Functions not in the other groups and copying to/from Vt struct stat .
- archive_entry_time3
- Time field manipulation
Most of the functions set or read entries in an object. Such functions have one of the following forms:
- Fn archive_entry_set_XXXX
- Stores the provided data in the object. In particular, for strings, the pointer is stored, not the referenced string.
- Fn archive_entry_copy_XXXX
- As above, except that the referenced data is copied into the object.
- Fn archive_entry_XXXX
- Returns the specified data. In the case of strings, a const-qualified pointer to the string is returned.
String data can be set or accessed as wide character strings or normal char strings. The functions that use wide character strings are suffixed with _w Note that these are different representations of the same data: For example, if you store a narrow string and read the corresponding wide string, the object will transparently convert formats using the current locale. Similarly, if you store a wide string and then store a narrow string for the same data, the previously-set wide string will be discarded in favor of the new data.