Content-type: text/html
sizeof_proplist_entry - Determines space necessary to store an Extended File Attribute
#include <sys/proplist.h>
int sizeof_proplist_entry (
char *name,
int value_size );
The sizeof_proplist_entry function determines the minimum size of the Extended File Attribute buffer required to store an Extended File Attribute, specified by the *name and value_size parameters. An Extended File Attribute is a name and value pair that is contained in a variable-sized structure called a Property List. A Property List is part of a file's metadata and can contain abstract name and value pairs (Extended File Attributes) that can be set either by the operating system (for example, ACLs and privileges) or by a user-level application (for example, PC File Attributes).
Although not a requirement, Digital recommends that you use the sizeof_proplist_entry(3) and add_proplist_entry(3) functions to initialize the Extended File Attribute buffer passed to setproplist(3) and fsetproplist(3).
#include <sys/proplist.h>
main()
{
char *ptr, *buf, *name, *value;
int *value_len, *flags, buffer_size, min_buffer_size, ret, nbytes;
struct proplistname_args;
static char *names[] = {
"primary_name",
"secondary_name",
""
};
/*
* How big a buffer do I need to store my name and value
* pair in a property list ?
*/
buffer_size = sizeof_proplist_entry("primary_name", 18);
buffer_size += sizeof_proplist_entry("secondary_name", 13);
.
.
.
If successful, the function returns the minimum number of bytes required to store the specified name and value pair in an Extended File Attribute buffer.
Functions: add_proplist_entry(3), delproplist(3), fdelproplist(3), fgetproplist(3), fsetproplist(3), get_proplist_entry(3), getproplist(3), setproplist(3), sizeof_proplist_entry(3).
Files: proplist(4), sys/proplist.h.
delim off