Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
VOP_SETEXTATTR(9)      FreeBSD Kernel Developer's Manual     VOP_SETEXTATTR(9)

NAME
     VOP_SETEXTATTR -- set named extended attribute for	a vnode

SYNOPSIS
     #include <sys/param.h>
     #include <sys/vnode.h>
     #include <sys/extattr.h>

     int
     VOP_SETEXTATTR(struct vnode *vp, int attrnamespace, const char *name,
	 struct	uio *uio, struct ucred *cred, struct thread *td);

DESCRIPTION
     This vnode	call may be used to set	specific named extended	attribute for
     a file or directory.

     Its arguments are:

     vp	   The vnode of	the file or directory.

     attrnamespace
	   Integer constant indicating which extended attribute	namespace the
	   attribute name is present in.

     name  Pointer to a	null-terminated	character string containing the
	   attribute name.

     uio   The location	of the data to be read or written.

     cred  The user credentials	to use in authorizing the request.

     td	   The thread setting the extended attribute.

     The uio structure is used in a manner similar to the argument of the same
     name in VOP_WRITE(9).  However, as	extended attributes provide a strict
     "name=value" semantic, non-zero offsets will be rejected.

     The uio pointer may be NULL to indicate that the specified	extended
     attribute should be deleted.

     The cred pointer may be NULL to indicate that access control checks are
     not to be performed, if possible.	This cred setting might	be used	to
     allow the kernel to authorize extended attribute changes that the active
     process might not be permitted to make.

     Extended attribute	semantics may vary by file system implementing the
     call.  More information on	extended attributes may	be found in
     extattr(9).

LOCKS
     The vnode will be locked on entry and should remain locked	on return.

RETURN VALUES
     If	the extended attribute is successfully set, then zero is returned.
     Otherwise,	an appropriate error code is returned.

ERRORS
     [EACCES]		The caller does	not have the appropriate privilege.

     [ENXIO]		The request was	not valid in this file system for the
			specified vnode	and attribute name.

     [ENOMEM]		Insufficient memory available to fulfill the request.

     [EFAULT]		The uio	structure refers to an invalid userspace
			address.

     [EINVAL]		The name, namespace, or	uio argument is	invalid.

     [EOPNOTSUPP]	The file system	does not support VOP_SETEXTATTR().

     [ENOSPC]		The file system	is out of space.

     [EROFS]		The file system	is read-only.

SEE ALSO
     extattr(9), vnode(9), VOP_GETEXTATTR(9), VOP_LISTEXTATTR(9)

AUTHORS
     This manual page was written by Robert Watson.

FreeBSD	9.2		       December	23, 1999		   FreeBSD 9.2

NAME | SYNOPSIS | DESCRIPTION | LOCKS | RETURN VALUES | ERRORS | SEE ALSO | AUTHORS

Want to link to this manual page? Use this URL:
<http://www.freebsd.org/cgi/man.cgi?query=VOP_SETEXTATTR&sektion=9&manpath=FreeBSD+10.0-RELEASE>

home | help