Home Man
Search
Today's Posts
Register

Linux & Unix Commands - Search Man Pages

Linux 2.6 - man page for setxattr (linux section 2)

SETXATTR(2)			    Linux Programmer's Manual			      SETXATTR(2)

NAME
       setxattr, lsetxattr, fsetxattr - set an extended attribute value

SYNOPSIS
       #include <sys/types.h>
       #include <sys/xattr.h>

       int setxattr(const char *path, const char *name,
		     const void *value, size_t size, int flags);
       int lsetxattr(const char *path, const char *name,
		     const void *value, size_t size, int flags);
       int fsetxattr(int fd, const char *name,
		     const void *value, size_t size, int flags);

DESCRIPTION
       Extended  attributes are name:value pairs associated with inodes (files, directories, sym-
       bolic links, etc.).  They are extensions to the normal  attributes  which  are  associated
       with  all  inodes in the system (i.e., the stat(2) data).  A complete overview of extended
       attributes concepts can be found in attr(5).

       setxattr() sets the value of the extended attribute identified by name and associated with
       the  given  path  in  the  filesystem.  The size argument specifies the size (in bytes) of
       value; a zero-length value is permitted.

       lsetxattr() is identical to setxattr(), except in the case of a symbolic link,  where  the
       extended attribute is set on the link itself, not the file that it refers to.

       fsetxattr()  is	identical  to  setxattr(), only the extended attribute is set on the open
       file referred to by fd (as returned by open(2)) in place of path.

       An extended attribute name is a null-terminated string.	The  name  includes  a	namespace
       prefix;	there  may  be	several, disjoint namespaces associated with an individual inode.
       The value of an extended attribute is a chunk of arbitrary textual or binary data of spec-
       ified length.

       By  default  (i.e.,  flags is zero), the extended attribute will be created if it does not
       exist, or the value will be replaced if the attribute already  exists.	To  modify  these
       semantics, one of the following values can be specified in flags:

       XATTR_CREATE
	      Perform a pure create, which fails if the named attribute exists already.

       XATTR_REPLACE
	      Perform  a  pure	replace  operation,  which  fails if the named attribute does not
	      already exist.

RETURN VALUE
       On success, zero is returned.  On failure, -1 is returned and errno is set appropriately.

ERRORS
       EDQUOT Disk quota limits meant that there is insufficient space	remaining  to  store  the
	      extended attribute.

       EEXIST XATTR_CREATE was specified, and the attribute exists already.

       ENOATTR
	      XATTR_REPLACE was specified, and the attribute does not exist.  (ENOATTR is defined
	      to be a synonym for ENODATA in <attr/xattr.h>.)

       ENOSPC There is insufficient space remaining to store the extended attribute.

       ENOTSUP
	      The namespace prefix of name is not valid.

       ENOTSUP
	      Extended attributes are not supported by the filesystem, or are disabled,

       In addition, the errors documented in stat(2) can also occur.

VERSIONS
       These system calls have been available on Linux since kernel 2.4; glibc	support  is  pro-
       vided since version 2.3.

CONFORMING TO
       These system calls are Linux-specific.

SEE ALSO
       getfattr(1),  setfattr(1),  getxattr(2),  listxattr(2),	open(2), removexattr(2), stat(2),
       attr(5), symlink(7)

Linux					    2015-02-21				      SETXATTR(2)


All times are GMT -4. The time now is 04:54 AM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
UNIX.COM Login
Username:
Password:  
Show Password