667 lines
20 KiB
Diff
667 lines
20 KiB
Diff
|
From b972600a26f3a930e53e2fce2625266a5d29813e Mon Sep 17 00:00:00 2001
|
||
|
From: Andreas Gruenbacher <andreas.gruenbacher@gmail.com>
|
||
|
Date: Tue, 14 Apr 2015 23:53:11 +0200
|
||
|
Subject: [PATCH 1/2] Remove the section 2 man pages
|
||
|
|
||
|
Commit 8d1263bca95722d66a6f8e83450f49d0956ea534 from upstream
|
||
|
https://git.savannah.nongnu.org/git/attr.git/
|
||
|
|
||
|
The section 2 man pages have long since been added to the man-pages package
|
||
|
which documents all system calls; they were disabled in attr by default since
|
||
|
January 2014. Get rid of them here.
|
||
|
|
||
|
Upstream-Status: Backport
|
||
|
|
||
|
[MA: modified to apply directly to v2.4.47]
|
||
|
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
|
||
|
---
|
||
|
man/Makefile | 2 +-
|
||
|
man/man2/Makefile | 35 -----------
|
||
|
man/man2/getxattr.2 | 143 --------------------------------------------
|
||
|
man/man2/listxattr.2 | 158 -------------------------------------------------
|
||
|
man/man2/removexattr.2 | 111 ----------------------------------
|
||
|
man/man2/setxattr.2 | 143 --------------------------------------------
|
||
|
6 files changed, 1 insertion(+), 591 deletions(-)
|
||
|
delete mode 100644 man/man2/Makefile
|
||
|
delete mode 100644 man/man2/getxattr.2
|
||
|
delete mode 100644 man/man2/listxattr.2
|
||
|
delete mode 100644 man/man2/removexattr.2
|
||
|
delete mode 100644 man/man2/setxattr.2
|
||
|
|
||
|
diff --git a/man/Makefile b/man/Makefile
|
||
|
index 9535426..755daed 100644
|
||
|
--- a/man/Makefile
|
||
|
+++ b/man/Makefile
|
||
|
@@ -19,7 +19,7 @@
|
||
|
TOPDIR = ..
|
||
|
include $(TOPDIR)/include/builddefs
|
||
|
|
||
|
-SUBDIRS = man1 man2 man3 man5
|
||
|
+SUBDIRS = man1 man3 man5
|
||
|
|
||
|
default : $(SUBDIRS)
|
||
|
|
||
|
diff --git a/man/man2/Makefile b/man/man2/Makefile
|
||
|
deleted file mode 100644
|
||
|
index d77309d..0000000
|
||
|
--- a/man/man2/Makefile
|
||
|
+++ /dev/null
|
||
|
@@ -1,35 +0,0 @@
|
||
|
-#
|
||
|
-# Copyright (c) 2000-2002 Silicon Graphics, Inc. All Rights Reserved.
|
||
|
-# Copyright (C) 2009 Andreas Gruenbacher <agruen@suse.de>
|
||
|
-#
|
||
|
-# This program is free software: you can redistribute it and/or modify it
|
||
|
-# under the terms of the GNU General Public License as published by
|
||
|
-# the Free Software Foundation, either version 2 of the License, or
|
||
|
-# (at your option) any later version.
|
||
|
-#
|
||
|
-# This program is distributed in the hope that it will be useful,
|
||
|
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
-# GNU General Public License for more details.
|
||
|
-#
|
||
|
-# You should have received a copy of the GNU General Public License
|
||
|
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||
|
-#
|
||
|
-
|
||
|
-TOPDIR = ../..
|
||
|
-include $(TOPDIR)/include/builddefs
|
||
|
-
|
||
|
-MAN_SECTION = 2
|
||
|
-
|
||
|
-MAN_PAGES = $(shell echo *.$(MAN_SECTION))
|
||
|
-MAN_DEST = $(PKG_MAN_DIR)/man$(MAN_SECTION)
|
||
|
-LSRCFILES = $(MAN_PAGES)
|
||
|
-
|
||
|
-default install : $(MAN_PAGES)
|
||
|
-
|
||
|
-include $(BUILDRULES)
|
||
|
-
|
||
|
-install-dev : default
|
||
|
- $(INSTALL) -m 755 -d $(MAN_DEST)
|
||
|
- $(INSTALL_MAN)
|
||
|
-install-lib:
|
||
|
diff --git a/man/man2/getxattr.2 b/man/man2/getxattr.2
|
||
|
deleted file mode 100644
|
||
|
index 405ad89..0000000
|
||
|
--- a/man/man2/getxattr.2
|
||
|
+++ /dev/null
|
||
|
@@ -1,143 +0,0 @@
|
||
|
-.\"
|
||
|
-.\" Extended attributes system calls manual pages
|
||
|
-.\"
|
||
|
-.\" (C) Andreas Gruenbacher, February 2001
|
||
|
-.\" (C) Silicon Graphics Inc, September 2001
|
||
|
-.\"
|
||
|
-.\" This is free documentation; you can redistribute it and/or
|
||
|
-.\" modify it under the terms of the GNU General Public License as
|
||
|
-.\" published by the Free Software Foundation; either version 2 of
|
||
|
-.\" the License, or (at your option) any later version.
|
||
|
-.\"
|
||
|
-.\" The GNU General Public License's references to "object code"
|
||
|
-.\" and "executables" are to be interpreted as the output of any
|
||
|
-.\" document formatting or typesetting system, including
|
||
|
-.\" intermediate and printed output.
|
||
|
-.\"
|
||
|
-.\" This manual is distributed in the hope that it will be useful,
|
||
|
-.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
-.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
-.\" GNU General Public License for more details.
|
||
|
-.\"
|
||
|
-.\" You should have received a copy of the GNU General Public
|
||
|
-.\" License along with this manual. If not, see
|
||
|
-.\" <http://www.gnu.org/licenses/>.
|
||
|
-.\"
|
||
|
-.TH GETXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
|
||
|
-.SH NAME
|
||
|
-getxattr, lgetxattr, fgetxattr \- retrieve an extended attribute value
|
||
|
-.SH SYNOPSIS
|
||
|
-.fam C
|
||
|
-.nf
|
||
|
-.B #include <sys/types.h>
|
||
|
-.B #include <attr/xattr.h>
|
||
|
-.sp
|
||
|
-.BI "ssize_t getxattr (const char\ *" path ", const char\ *" name ",
|
||
|
-.BI "\t\t\t\t void\ *" value ", size_t " size );
|
||
|
-.BI "ssize_t lgetxattr (const char\ *" path ", const char\ *" name ",
|
||
|
-.BI "\t\t\t\t void\ *" value ", size_t " size );
|
||
|
-.BI "ssize_t fgetxattr (int " filedes ", const char\ *" name ",
|
||
|
-.BI "\t\t\t\t void\ *" value ", size_t " size );
|
||
|
-.fi
|
||
|
-.fam T
|
||
|
-.SH DESCRIPTION
|
||
|
-Extended attributes are
|
||
|
-.IR name :\c
|
||
|
-.I value
|
||
|
-pairs associated with inodes (files, directories, symlinks, etc).
|
||
|
-They are extensions to the normal attributes which are associated
|
||
|
-with all inodes in the system (i.e. the
|
||
|
-.BR stat (2)
|
||
|
-data).
|
||
|
-A complete overview of extended attributes concepts can be found in
|
||
|
-.BR attr (5).
|
||
|
-.PP
|
||
|
-.B getxattr
|
||
|
-retrieves the
|
||
|
-.I value
|
||
|
-of the extended attribute identified by
|
||
|
-.I name
|
||
|
-and associated with the given
|
||
|
-.I path
|
||
|
-in the filesystem.
|
||
|
-The length of the attribute
|
||
|
-.I value
|
||
|
-is returned.
|
||
|
-.PP
|
||
|
-.B lgetxattr
|
||
|
-is identical to
|
||
|
-.BR getxattr ,
|
||
|
-except in the case of a symbolic link, where the link itself is
|
||
|
-interrogated, not the file that it refers to.
|
||
|
-.PP
|
||
|
-.B fgetxattr
|
||
|
-is identical to
|
||
|
-.BR getxattr ,
|
||
|
-only the open file pointed to by
|
||
|
-.I filedes
|
||
|
-(as returned by
|
||
|
-.BR open (2))
|
||
|
-is interrogated in place of
|
||
|
-.IR path .
|
||
|
-.PP
|
||
|
-An extended attribute
|
||
|
-.I name
|
||
|
-is a simple 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 specified length.
|
||
|
-.PP
|
||
|
-An empty buffer of
|
||
|
-.I size
|
||
|
-zero can be passed into these calls to return the current size of the
|
||
|
-named extended attribute, which can be used to estimate the size of a
|
||
|
-buffer which is sufficiently large to hold the value associated with
|
||
|
-the extended attribute.
|
||
|
-.PP
|
||
|
-The interface is designed to allow guessing of initial buffer
|
||
|
-sizes, and to enlarge buffers when the return value indicates
|
||
|
-that the buffer provided was too small.
|
||
|
-.SH RETURN VALUE
|
||
|
-On success, a positive number is returned indicating the size of the
|
||
|
-extended attribute value.
|
||
|
-On failure, \-1 is returned and
|
||
|
-.I errno
|
||
|
-is set appropriately.
|
||
|
-.PP
|
||
|
-If the named attribute does not exist, or the process has no access to
|
||
|
-this attribute,
|
||
|
-.I errno
|
||
|
-is set to ENOATTR.
|
||
|
-.PP
|
||
|
-If the
|
||
|
-.I size
|
||
|
-of the
|
||
|
-.I value
|
||
|
-buffer is too small to hold the result,
|
||
|
-.I errno
|
||
|
-is set to ERANGE.
|
||
|
-.PP
|
||
|
-If extended attributes are not supported by the filesystem, or are disabled,
|
||
|
-.I errno
|
||
|
-is set to ENOTSUP.
|
||
|
-.PP
|
||
|
-The errors documented for the
|
||
|
-.BR stat (2)
|
||
|
-system call are also applicable here.
|
||
|
-.SH AUTHORS
|
||
|
-Andreas Gruenbacher,
|
||
|
-.RI < a.gruenbacher@bestbits.at >
|
||
|
-and the SGI XFS development team,
|
||
|
-.RI < linux-xfs@oss.sgi.com >.
|
||
|
-Please send any bug reports or comments to these addresses.
|
||
|
-.SH SEE ALSO
|
||
|
-.BR getfattr (1),
|
||
|
-.BR setfattr (1),
|
||
|
-.BR open (2),
|
||
|
-.BR stat (2),
|
||
|
-.BR setxattr (2),
|
||
|
-.BR listxattr (2),
|
||
|
-.BR removexattr (2),
|
||
|
-and
|
||
|
-.BR attr (5).
|
||
|
diff --git a/man/man2/listxattr.2 b/man/man2/listxattr.2
|
||
|
deleted file mode 100644
|
||
|
index 8b4371c..0000000
|
||
|
--- a/man/man2/listxattr.2
|
||
|
+++ /dev/null
|
||
|
@@ -1,158 +0,0 @@
|
||
|
-.\"
|
||
|
-.\" Extended attributes system calls manual pages
|
||
|
-.\"
|
||
|
-.\" (C) Andreas Gruenbacher, February 2001
|
||
|
-.\" (C) Silicon Graphics Inc, September 2001
|
||
|
-.\"
|
||
|
-.\" This is free documentation; you can redistribute it and/or
|
||
|
-.\" modify it under the terms of the GNU General Public License as
|
||
|
-.\" published by the Free Software Foundation; either version 2 of
|
||
|
-.\" the License, or (at your option) any later version.
|
||
|
-.\"
|
||
|
-.\" The GNU General Public License's references to "object code"
|
||
|
-.\" and "executables" are to be interpreted as the output of any
|
||
|
-.\" document formatting or typesetting system, including
|
||
|
-.\" intermediate and printed output.
|
||
|
-.\"
|
||
|
-.\" This manual is distributed in the hope that it will be useful,
|
||
|
-.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
-.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
-.\" GNU General Public License for more details.
|
||
|
-.\"
|
||
|
-.\" You should have received a copy of the GNU General Public
|
||
|
-.\" License along with this manual. If not, see
|
||
|
-.\" <http://www.gnu.org/licenses/>.
|
||
|
-.\"
|
||
|
-.TH LISTXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
|
||
|
-.SH NAME
|
||
|
-listxattr, llistxattr, flistxattr \- list extended attribute names
|
||
|
-.SH SYNOPSIS
|
||
|
-.fam C
|
||
|
-.nf
|
||
|
-.B #include <sys/types.h>
|
||
|
-.B #include <attr/xattr.h>
|
||
|
-.sp
|
||
|
-.BI "ssize_t listxattr (const char\ *" path ",
|
||
|
-.BI "\t\t\t\t char\ *" list ", size_t " size );
|
||
|
-.BI "ssize_t llistxattr (const char\ *" path ",
|
||
|
-.BI "\t\t\t\t char\ *" list ", size_t " size );
|
||
|
-.BI "ssize_t flistxattr (int " filedes ",
|
||
|
-.BI "\t\t\t\t char\ *" list ", size_t " size );
|
||
|
-.fi
|
||
|
-.fam T
|
||
|
-.SH DESCRIPTION
|
||
|
-Extended attributes are name:value
|
||
|
-pairs associated with inodes (files, directories, symlinks, etc).
|
||
|
-They are extensions to the normal attributes which are associated
|
||
|
-with all inodes in the system (i.e. the
|
||
|
-.BR stat (2)
|
||
|
-data).
|
||
|
-A complete overview of extended attributes concepts can be found in
|
||
|
-.BR attr (5).
|
||
|
-.PP
|
||
|
-.B listxattr
|
||
|
-retrieves the
|
||
|
-.I list
|
||
|
-of extended attribute names associated with the given
|
||
|
-.I path
|
||
|
-in the filesystem.
|
||
|
-The list is the set of (NULL-terminated) names, one after the other.
|
||
|
-Names of extended attributes to which the calling process does not
|
||
|
-have access may be omitted from the list.
|
||
|
-The length of the attribute name
|
||
|
-.I list
|
||
|
-is returned.
|
||
|
-.PP
|
||
|
-.B llistxattr
|
||
|
-is identical to
|
||
|
-.BR listxattr ,
|
||
|
-except in the case of a symbolic link, where the list of names of
|
||
|
-extended attributes associated with the link itself is retrieved,
|
||
|
-not the file that it refers to.
|
||
|
-.I list
|
||
|
-is a caller-allocated buffer of size
|
||
|
-.IR size .
|
||
|
-.PP
|
||
|
-.B flistxattr
|
||
|
-is identical to
|
||
|
-.BR listxattr ,
|
||
|
-only the open file pointed to by
|
||
|
-.I filedes
|
||
|
-(as returned by
|
||
|
-.BR open (2))
|
||
|
-is interrogated in place of
|
||
|
-.IR path .
|
||
|
-.PP
|
||
|
-A single extended attribute
|
||
|
-.I name
|
||
|
-is a simple NULL-terminated string.
|
||
|
-The name includes a namespace prefix \- there may be several, disjoint
|
||
|
-namespaces associated with an individual inode.
|
||
|
-.PP
|
||
|
-An empty buffer of
|
||
|
-.I size
|
||
|
-zero can be passed into these calls to return the current size of the
|
||
|
-list of extended attribute names, which can be used to estimate the
|
||
|
-size of a buffer which is sufficiently large to hold the list of names.
|
||
|
-.SH EXAMPLES
|
||
|
-The
|
||
|
-.I list
|
||
|
-of names is returned as an unordered array of NULL-terminated character
|
||
|
-strings (attribute names are separated by NULL characters), like this:
|
||
|
-.fam C
|
||
|
-.RS
|
||
|
-.nf
|
||
|
-user.name1\\0system.name1\\0user.name2\\0
|
||
|
-.fi
|
||
|
-.RE
|
||
|
-.fam T
|
||
|
-.P
|
||
|
-Filesystems like ext2, ext3 and XFS which implement POSIX ACLs using
|
||
|
-extended attributes, might return a
|
||
|
-.I list
|
||
|
-like this:
|
||
|
-.fam C
|
||
|
-.RS
|
||
|
-.nf
|
||
|
-system.posix_acl_access\\0system.posix_acl_default\\0
|
||
|
-.fi
|
||
|
-.RE
|
||
|
-.fam T
|
||
|
-.SH RETURN VALUE
|
||
|
-On success, a positive number is returned indicating the size of the
|
||
|
-extended attribute name list.
|
||
|
-On failure, \-1 is returned and
|
||
|
-.I errno
|
||
|
-is set appropriately.
|
||
|
-.PP
|
||
|
-If the
|
||
|
-.I size
|
||
|
-of the
|
||
|
-.I list
|
||
|
-buffer is too small to hold the result,
|
||
|
-.I errno
|
||
|
-is set to ERANGE.
|
||
|
-.PP
|
||
|
-If extended attributes are not supported by the filesystem, or are disabled,
|
||
|
-.I errno
|
||
|
-is set to ENOTSUP.
|
||
|
-.PP
|
||
|
-The errors documented for the
|
||
|
-.BR stat (2)
|
||
|
-system call are also applicable here.
|
||
|
-.SH AUTHORS
|
||
|
-Andreas Gruenbacher,
|
||
|
-.RI < a.gruenbacher@bestbits.at >
|
||
|
-and the SGI XFS development team,
|
||
|
-.RI < linux-xfs@oss.sgi.com >.
|
||
|
-Please send any bug reports or comments to these addresses.
|
||
|
-.SH SEE ALSO
|
||
|
-.BR getfattr (1),
|
||
|
-.BR setfattr (1),
|
||
|
-.BR open (2),
|
||
|
-.BR stat (2),
|
||
|
-.BR getxattr (2),
|
||
|
-.BR setxattr (2),
|
||
|
-.BR removexattr (2),
|
||
|
-and
|
||
|
-.BR attr (5).
|
||
|
diff --git a/man/man2/removexattr.2 b/man/man2/removexattr.2
|
||
|
deleted file mode 100644
|
||
|
index 2c7d934..0000000
|
||
|
--- a/man/man2/removexattr.2
|
||
|
+++ /dev/null
|
||
|
@@ -1,111 +0,0 @@
|
||
|
-.\"
|
||
|
-.\" Extended attributes system calls manual pages
|
||
|
-.\"
|
||
|
-.\" (C) Andreas Gruenbacher, February 2001
|
||
|
-.\" (C) Silicon Graphics Inc, September 2001
|
||
|
-.\"
|
||
|
-.\" This is free documentation; you can redistribute it and/or
|
||
|
-.\" modify it under the terms of the GNU General Public License as
|
||
|
-.\" published by the Free Software Foundation; either version 2 of
|
||
|
-.\" the License, or (at your option) any later version.
|
||
|
-.\"
|
||
|
-.\" The GNU General Public License's references to "object code"
|
||
|
-.\" and "executables" are to be interpreted as the output of any
|
||
|
-.\" document formatting or typesetting system, including
|
||
|
-.\" intermediate and printed output.
|
||
|
-.\"
|
||
|
-.\" This manual is distributed in the hope that it will be useful,
|
||
|
-.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
-.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
-.\" GNU General Public License for more details.
|
||
|
-.\"
|
||
|
-.\" You should have received a copy of the GNU General Public
|
||
|
-.\" License along with this manual. If not, see
|
||
|
-.\" <http://www.gnu.org/licenses/>.
|
||
|
-.\"
|
||
|
-.TH REMOVEXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
|
||
|
-.SH NAME
|
||
|
-removexattr, lremovexattr, fremovexattr \- remove an extended attribute
|
||
|
-.SH SYNOPSIS
|
||
|
-.fam C
|
||
|
-.nf
|
||
|
-.B #include <sys/types.h>
|
||
|
-.B #include <attr/xattr.h>
|
||
|
-.sp
|
||
|
-.BI "int removexattr (const char\ *" path ", const char\ *" name );
|
||
|
-.BI "int lremovexattr (const char\ *" path ", const char\ *" name );
|
||
|
-.BI "int fremovexattr (int " filedes ", const char\ *" name );
|
||
|
-.fi
|
||
|
-.fam T
|
||
|
-.SH DESCRIPTION
|
||
|
-Extended attributes are
|
||
|
-.IR name :\c
|
||
|
-value pairs associated with inodes (files, directories, symlinks, etc).
|
||
|
-They are extensions to the normal attributes which are associated
|
||
|
-with all inodes in the system (i.e. the
|
||
|
-.BR stat (2)
|
||
|
-data).
|
||
|
-A complete overview of extended attributes concepts can be found in
|
||
|
-.BR attr (5).
|
||
|
-.PP
|
||
|
-.B removexattr
|
||
|
-removes the extended attribute identified by
|
||
|
-.I name
|
||
|
-and associated with the given
|
||
|
-.I path
|
||
|
-in the filesystem.
|
||
|
-.PP
|
||
|
-.B lremovexattr
|
||
|
-is identical to
|
||
|
-.BR removexattr ,
|
||
|
-except in the case of a symbolic link, where the extended attribute is
|
||
|
-removed from the link itself, not the file that it refers to.
|
||
|
-.PP
|
||
|
-.B fremovexattr
|
||
|
-is identical to
|
||
|
-.BR removexattr ,
|
||
|
-only the extended attribute is removed from the open file pointed to by
|
||
|
-.I filedes
|
||
|
-(as returned by
|
||
|
-.BR open (2))
|
||
|
-in place of
|
||
|
-.IR path .
|
||
|
-.PP
|
||
|
-An extended attribute name is a simple NULL-terminated string.
|
||
|
-The
|
||
|
-.I name
|
||
|
-includes a namespace prefix \- there may be several, disjoint
|
||
|
-namespaces associated with an individual inode.
|
||
|
-.SH RETURN VALUE
|
||
|
-On success, zero is returned.
|
||
|
-On failure, \-1 is returned and
|
||
|
-.I errno
|
||
|
-is set appropriately.
|
||
|
-.PP
|
||
|
-If the named attribute does not exist,
|
||
|
-.I errno
|
||
|
-is set to ENOATTR.
|
||
|
-.PP
|
||
|
-If extended attributes are not supported by the filesystem, or are disabled,
|
||
|
-.I errno
|
||
|
-is set to ENOTSUP.
|
||
|
-.PP
|
||
|
-The errors documented for the
|
||
|
-.BR stat (2)
|
||
|
-system call are also applicable here.
|
||
|
-.SH AUTHORS
|
||
|
-Andreas Gruenbacher,
|
||
|
-.RI < a.gruenbacher@bestbits.at >
|
||
|
-and the SGI XFS development team,
|
||
|
-.RI < linux-xfs@oss.sgi.com >.
|
||
|
-Please send any bug reports or comments to these addresses.
|
||
|
-.SH SEE ALSO
|
||
|
-.BR getfattr (1),
|
||
|
-.BR setfattr (1),
|
||
|
-.BR open (2),
|
||
|
-.BR stat (2),
|
||
|
-.BR setxattr (2),
|
||
|
-.BR getxattr (2),
|
||
|
-.BR listxattr (2),
|
||
|
-and
|
||
|
-.BR attr (5).
|
||
|
diff --git a/man/man2/setxattr.2 b/man/man2/setxattr.2
|
||
|
deleted file mode 100644
|
||
|
index b20dc9f..0000000
|
||
|
--- a/man/man2/setxattr.2
|
||
|
+++ /dev/null
|
||
|
@@ -1,143 +0,0 @@
|
||
|
-.\"
|
||
|
-.\" Extended attributes system calls manual pages
|
||
|
-.\"
|
||
|
-.\" (C) Andreas Gruenbacher, February 2001
|
||
|
-.\" (C) Silicon Graphics Inc, September 2001
|
||
|
-.\"
|
||
|
-.\" This is free documentation; you can redistribute it and/or
|
||
|
-.\" modify it under the terms of the GNU General Public License as
|
||
|
-.\" published by the Free Software Foundation; either version 2 of
|
||
|
-.\" the License, or (at your option) any later version.
|
||
|
-.\"
|
||
|
-.\" The GNU General Public License's references to "object code"
|
||
|
-.\" and "executables" are to be interpreted as the output of any
|
||
|
-.\" document formatting or typesetting system, including
|
||
|
-.\" intermediate and printed output.
|
||
|
-.\"
|
||
|
-.\" This manual is distributed in the hope that it will be useful,
|
||
|
-.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
-.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
-.\" GNU General Public License for more details.
|
||
|
-.\"
|
||
|
-.\" You should have received a copy of the GNU General Public
|
||
|
-.\" License along with this manual. If not, see
|
||
|
-.\" <http://www.gnu.org/licenses/>.
|
||
|
-.\"
|
||
|
-.TH SETXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
|
||
|
-.SH NAME
|
||
|
-setxattr, lsetxattr, fsetxattr \- set an extended attribute value
|
||
|
-.SH SYNOPSIS
|
||
|
-.fam C
|
||
|
-.nf
|
||
|
-.B #include <sys/types.h>
|
||
|
-.B #include <attr/xattr.h>
|
||
|
-.sp
|
||
|
-.BI "int setxattr (const char\ *" path ", const char\ *" name ",
|
||
|
-.BI "\t\t\t const void\ *" value ", size_t " size ", int " flags );
|
||
|
-.BI "int lsetxattr (const char\ *" path ", const char\ *" name ",
|
||
|
-.BI "\t\t\t const void\ *" value ", size_t " size ", int " flags );
|
||
|
-.BI "int fsetxattr (int " filedes ", const char\ *" name ",
|
||
|
-.BI "\t\t\t const void\ *" value ", size_t " size ", int " flags );
|
||
|
-.fi
|
||
|
-.fam T
|
||
|
-.SH DESCRIPTION
|
||
|
-Extended attributes are
|
||
|
-.IR name :\c
|
||
|
-.I value
|
||
|
-pairs associated with inodes (files, directories, symlinks, etc).
|
||
|
-They are extensions to the normal attributes which are associated
|
||
|
-with all inodes in the system (i.e. the
|
||
|
-.BR stat (2)
|
||
|
-data).
|
||
|
-A complete overview of extended attributes concepts can be found in
|
||
|
-.BR attr (5).
|
||
|
-.PP
|
||
|
-.B setxattr
|
||
|
-sets the
|
||
|
-.I value
|
||
|
-of the extended attribute identified by
|
||
|
-.I name
|
||
|
-and associated with the given
|
||
|
-.I path
|
||
|
-in the filesystem.
|
||
|
-The
|
||
|
-.I size
|
||
|
-of the
|
||
|
-.I value
|
||
|
-must be specified.
|
||
|
-.PP
|
||
|
-.B lsetxattr
|
||
|
-is identical to
|
||
|
-.BR 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.
|
||
|
-.PP
|
||
|
-.B fsetxattr
|
||
|
-is identical to
|
||
|
-.BR setxattr ,
|
||
|
-only the extended attribute is set on the open file pointed to by
|
||
|
-.I filedes
|
||
|
-(as returned by
|
||
|
-.BR open (2))
|
||
|
-in place of
|
||
|
-.IR path .
|
||
|
-.PP
|
||
|
-An extended attribute name is a simple NULL-terminated string.
|
||
|
-The
|
||
|
-.I name
|
||
|
-includes a namespace prefix \- there may be several, disjoint
|
||
|
-namespaces associated with an individual inode.
|
||
|
-The
|
||
|
-.I value
|
||
|
-of an extended attribute is a chunk of arbitrary textual or
|
||
|
-binary data of specified length.
|
||
|
-.PP
|
||
|
-The
|
||
|
-.I flags
|
||
|
-parameter can be used to refine the semantics of the operation.
|
||
|
-XATTR_CREATE specifies a pure create, which fails if the named
|
||
|
-attribute exists already.
|
||
|
-XATTR_REPLACE specifies a pure replace operation, which fails if the
|
||
|
-named attribute does not already exist.
|
||
|
-By default (no flags), the extended attribute will be created if
|
||
|
-need be, or will simply replace the value if the attribute exists.
|
||
|
-.SH RETURN VALUE
|
||
|
-On success, zero is returned.
|
||
|
-On failure, \-1 is returned and
|
||
|
-.I errno
|
||
|
-is set appropriately.
|
||
|
-.PP
|
||
|
-If XATTR_CREATE is specified, and the attribute exists already,
|
||
|
-.I errno
|
||
|
-is set to EEXIST.
|
||
|
-If XATTR_REPLACE is specified, and the attribute does not exist,
|
||
|
-.I errno
|
||
|
-is set to ENOATTR.
|
||
|
-.PP
|
||
|
-If there is insufficient space remaining to store the extended attribute,
|
||
|
-.I errno
|
||
|
-is set to either ENOSPC, or EDQUOT if quota enforcement was the cause.
|
||
|
-.PP
|
||
|
-If extended attributes are not supported by the filesystem, or are disabled,
|
||
|
-.I errno
|
||
|
-is set to ENOTSUP.
|
||
|
-.PP
|
||
|
-The errors documented for the
|
||
|
-.BR stat (2)
|
||
|
-system call are also applicable here.
|
||
|
-.SH AUTHORS
|
||
|
-Andreas Gruenbacher,
|
||
|
-.RI < a.gruenbacher@bestbits.at >
|
||
|
-and the SGI XFS development team,
|
||
|
-.RI < linux-xfs@oss.sgi.com >.
|
||
|
-Please send any bug reports or comments to these addresses.
|
||
|
-.SH SEE ALSO
|
||
|
-.BR getfattr (1),
|
||
|
-.BR setfattr (1),
|
||
|
-.BR open (2),
|
||
|
-.BR stat (2),
|
||
|
-.BR getxattr (2),
|
||
|
-.BR listxattr (2),
|
||
|
-.BR removexattr (2),
|
||
|
-and
|
||
|
-.BR attr (5).
|
||
|
--
|
||
|
2.7.4
|
||
|
|