vop_listextattr(9)

NAME

VOP_LISTEXTATTR - retrieve a list of named extended at
tribute from a
vnode

SYNOPSIS

#include <sys/param.h>
#include <sys/vnode.h>
#include <sys/extattr.h>
int
VOP_LISTEXTATTR(struct  vnode *vp, int attrnamespace, struct
uio *uio,
        size_t *size,  struct  ucred  *cred,  struct  thread
*td);

DESCRIPTION

This vnode call may be used to retrieve a list of named ex
tended
attributes from a specified namespace on a file or directo
ry.
Its arguments are:
vp The vnode of the file or directory.
attrnamespace Integer constant indicating which extend
ed attribute
namespace the attribute name is present
in.
uio The location of the data to be read. The
resulting
data will be a list of attribute names.
Each list
entry consists of a single byte contain
ing the length
of the attribute name, followed by the
attribute name.
The attribute name is not terminated by
ASCII NUL.
size If not NULL, on return it will contain
the number of
bytes required to read the list. In most
cases uio
will be NULL when size is not, and vise
versa.
cred The user credentials to use in authoriz
ing the
request.
td The thread requesting the extended at
tribute.
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 retrieval
that the
active process might not be permitted to do.
Extended attribute semantics may vary by file system imple
menting 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

On success, zero will be returned, and the uio structure
will be updated
to reflect the list read. 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] Sufficient memory is not available to
fulfill the
request.
[EFAULT] The uio structure refers to an invalid
userspace
address.
[EINVAL] The namespace or uio argument is invalid.
[EOPNOTSUPP] The file system does not support

VOP_LISTEXTATTR

SEE ALSO

extattr(9), vnode(9), VOP_GETEXTATTR(9), VOP_SETEXTATTR(9)
BSD August 19, 2005
Copyright © 2010-2024 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout