attr_remove

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
ATTR_REMOVE(3)		    XFS Compatibility API	       ATTR_REMOVE(3)



NAME
       attr_remove,  attr_removef  -  remove a user attribute of a filesystem
       object

C SYNOPSIS
       #include <attr/attributes.h>

       int attr_remove (const char *path, const char *attrname, int flags);

       int attr_removef (int fd, const char *attrname, int flags);

DESCRIPTION
       The attr_remove and attr_removef functions provide  a  way  to  remove
       previously created attributes from filesystem objects.

       Path  points  to a path name for a filesystem object, and fd refers to
       the file descriptor associated with a file.  If the attribute attrname
       exists,	the  attribute	name  and  value  will	be  removed  from the
       fileystem object.  The flags argument can contain the  following	 sym-
       bols bitwise OR“ed together:

       ATTR_ROOT
	      Look  for	 attrname  in the root address space, not in the user
	      address space.  (limited to use by super-user only)

       ATTR_DONTFOLLOW
	      Do not follow symbolic  links  when  resolving  a	 path  on  an
	      attr_remove  function  call.  The default is to follow symbolic
	      links.

       attr_remove will fail if one or more of the following are true:

       [ENOATTR]	The attribute name given is not associated  with  the
			indicated filesystem object.

       [ENOENT]		The named file does not exist.

       [EPERM]		The effective user ID does not match the owner of the
			file and the effective user ID is not super-user.

       [ENOTDIR]	A component of the path prefix is not a directory.

       [EACCES]		Search permission is denied on	a  component  of  the
			path prefix.

       [EINVAL]		A  bit	was  set  in  the  flag	 argument that is not
			defined for this system call.

       [EFAULT]		Path points outside the allocated  address  space  of
			the process.

       [ELOOP]		A  path name lookup involved too many symbolic links.

       [ENAMETOOLONG]	The length of path exceeds {MAXPATHLEN}, or  a	path-
			name component is longer than {MAXNAMELEN}.

       attr_removef will fail if:

       [ENOATTR]      The  attribute  name  given  is not associated with the
		      indicated filesystem object.

       [EINVAL]	      A bit was set in the flag argument that is not  defined
		      for  this	 system call, or fd refers to a socket, not a
		      file.

       [EFAULT]	      Attrname points outside the allocated address space  of
		      the process.

       [EBADF]	      Fd does not refer to a valid descriptor.

DIAGNOSTICS
       On  success, zero is returned.  On error, -1 is returned, and errno is
       set appropriately.

SEE ALSO
       attr(1), attr_get(3), attr_multi(3), and attr_set(3).



Dec 2001		     Extended Attributes	       ATTR_REMOVE(3)