add_proplist_entry man page on DigitalUNIX

Man page or keyword search:  
man Server   12896 pages
apropos Keyword Search (all sections)
Output format
DigitalUNIX logo
[printable version]

add_proplist_entry(3)					 add_proplist_entry(3)

NAME
       add_proplist_entry  -  adds  an Extended File Attribute to the Extended
       File Attribute buffer

SYNOPSIS
       #include <sys/proplist.h>

       int add_proplist_entry(
	       char *name,
	       int flags,
	       int value_size,
	       char *value,
	       char **bufptr );

PARAMETERS
       Points to the Extended File Attribute  name,  a	null-terminated	 ASCII
       string.	 Specifies  system-wide attributes for Extended File Attribute
       entries. These system-wide attributes are  defined  in  sys/proplist.h.
       Specifies  the  size  in	 bytes	of  the Extended File Attribute value.
       Points to the value of the Extended  File  Attribute.   Points  to  the
       Extended File Attribute buffer.

DESCRIPTION
       The   add_proplist_entry()   function   initializes  an	Extended  File
       Attribute buffer, pointed  to  by  **bufptr,  with  the	Extended  File
       Attribute  specified  by	 the *name and *value parameters. The function
       can  be	called	repeatedly  because  it	 advances  the	Extended  File
       Attribute  buffer  pointer **bufptr to the end of the current entry. 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 sys‐
       tem (for example, ACLs and privileges) or by a  user-level  application
       (for example, PC File Attributes).

       Although	 not  a	 requirement,  it  is  recommended  that  you  use the
       sizeof_proplist_entry(3) and add_proplist_entry(3)  functions  to  ini‐
       tialize the Extended File Attribute buffer passed to setproplist(3) and
       fsetproplist(3).

RETURN VALUES
       If successful, the function returns the number of bytes copied into the
       Extended File Attribute buffer.

EXAMPLES
       #include	 <sys/proplist.h> main() { char *ptr, *buf, *name, *value; int
       *value_len, *options, 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);  buf‐
       fer_size += sizeof_proplist_entry("secondary_name", 13);

       /*
	* Malloc the buffer
	*/ buf = ptr = (char *)malloc(buffer_size);

       /*
	* Call add_proplist_entry to initialize the buffer with
	* the first name and value pair.
	*/ ret =  add_proplist_entry("primary_name",  0,  18,
       "Primary Name Value", &ptr); /*
	* Call add_proplist_entry to initialize the buffer with
	* the second name and value pair.
	*/  ret += add_proplist_entry("secondary_name", 0, 13,
       "Another Value", &ptr); if (ret != buffer_size) {       printf("ret  %d
       !=  buffer_size	%d0",  ret, buffer_size);      free(buf, buffer_size);
	    exit(1); }

       /*
	* Buffer now contains both name and value pairs. Call setproplist
	* system call to actually associate name and value pairs to
	* file.
	*/ nbytes = setproplist("/tmp/foo", 1, buffer_size, buf);
	       if (nbytes < 0 || nbytes != buffer_size) {
		       perror("setproplist");
		       free(buf);
		       exit(1);
	       }

SEE ALSO
       Functions: delproplist(3), fdelproplist(3),  fgetproplist(3),  fsetpro‐
       plist(3),    get_proplist_entry(3),   getproplist(3),   setproplist(3),
       sizeof_proplist_entry(3)

       Files: proplist(4)

							 add_proplist_entry(3)
[top]

List of man pages available for DigitalUNIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net