1*86d7f5d3SJohn Marino.\"- 2*86d7f5d3SJohn Marino.\" Copyright (c) 1999 Robert N. M. Watson 3*86d7f5d3SJohn Marino.\" All rights reserved. 4*86d7f5d3SJohn Marino.\" 5*86d7f5d3SJohn Marino.\" Redistribution and use in source and binary forms, with or without 6*86d7f5d3SJohn Marino.\" modification, are permitted provided that the following conditions 7*86d7f5d3SJohn Marino.\" are met: 8*86d7f5d3SJohn Marino.\" 1. Redistributions of source code must retain the above copyright 9*86d7f5d3SJohn Marino.\" notice, this list of conditions and the following disclaimer. 10*86d7f5d3SJohn Marino.\" 2. Redistributions in binary form must reproduce the above copyright 11*86d7f5d3SJohn Marino.\" notice, this list of conditions and the following disclaimer in the 12*86d7f5d3SJohn Marino.\" documentation and/or other materials provided with the distribution. 13*86d7f5d3SJohn Marino.\" 14*86d7f5d3SJohn Marino.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15*86d7f5d3SJohn Marino.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16*86d7f5d3SJohn Marino.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17*86d7f5d3SJohn Marino.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18*86d7f5d3SJohn Marino.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19*86d7f5d3SJohn Marino.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20*86d7f5d3SJohn Marino.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21*86d7f5d3SJohn Marino.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22*86d7f5d3SJohn Marino.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23*86d7f5d3SJohn Marino.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24*86d7f5d3SJohn Marino.\" SUCH DAMAGE. 25*86d7f5d3SJohn Marino.\" 26*86d7f5d3SJohn Marino.\" $FreeBSD: src/share/man/man9/extattr.9,v 1.1.2.4 2001/12/17 11:30:18 ru Exp $ 27*86d7f5d3SJohn Marino.\" 28*86d7f5d3SJohn Marino.Dd May 8, 2010 29*86d7f5d3SJohn Marino.Dt EXTATTR 9 30*86d7f5d3SJohn Marino.Os 31*86d7f5d3SJohn Marino.Sh NAME 32*86d7f5d3SJohn Marino.Nm extattr 33*86d7f5d3SJohn Marino.Nd virtual file system named extended attributes 34*86d7f5d3SJohn Marino.Sh SYNOPSIS 35*86d7f5d3SJohn Marino.In sys/param.h 36*86d7f5d3SJohn Marino.In sys/vnode.h 37*86d7f5d3SJohn Marino.In sys/extattr.h 38*86d7f5d3SJohn Marino.Sh DESCRIPTION 39*86d7f5d3SJohn MarinoNamed extended attributes allow additional meta-data to be associated 40*86d7f5d3SJohn Marinowith vnodes representing files and directories. 41*86d7f5d3SJohn MarinoThe semantics of this additional data is that of a "name=value" pair, where 42*86d7f5d3SJohn Marinoa name may be defined or undefined, and if defined, associated with zero or 43*86d7f5d3SJohn Marinomore bytes of arbitrary binary data. 44*86d7f5d3SJohn Marino.Pp 45*86d7f5d3SJohn MarinoReads of extended attribute data may return specific contiguous regions of 46*86d7f5d3SJohn Marinothe meta-data, in the style of 47*86d7f5d3SJohn Marino.Xr VOP_READ 9 , 48*86d7f5d3SJohn Marinobut writes will replace the entire current "value" associated with 49*86d7f5d3SJohn Marinoa given name. 50*86d7f5d3SJohn MarinoAs there are a plethora of file systems with differing extended attributes, 51*86d7f5d3SJohn Marinoavailability and functionality of these functions may be limited, and they 52*86d7f5d3SJohn Marinoshould be used with awareness of the underlying semantics of the supporting 53*86d7f5d3SJohn Marinofile system. 54*86d7f5d3SJohn MarinoAuthorization schemes for extended attribute data may also vary by file 55*86d7f5d3SJohn Marinosystem, as well as maximum attribute size, and whether or not any or 56*86d7f5d3SJohn Marinospecific new attributes may be defined. 57*86d7f5d3SJohn Marino.Pp 58*86d7f5d3SJohn MarinoExtended attributes are named using a null-terminated character string. 59*86d7f5d3SJohn MarinoDepending on underlying file system semantics, this name may or may not be 60*86d7f5d3SJohn Marinocase-sensitive. 61*86d7f5d3SJohn MarinoAppropriate vnode extended attribute calls are: 62*86d7f5d3SJohn Marino.Xr VOP_GETEXTATTR 9 63*86d7f5d3SJohn Marinoand 64*86d7f5d3SJohn Marino.Xr VOP_SETEXTATTR 9 . 65*86d7f5d3SJohn Marino.Sh SEE ALSO 66*86d7f5d3SJohn Marino.Xr VFS 9 , 67*86d7f5d3SJohn Marino.Xr VOP_GETEXTATTR 9 , 68*86d7f5d3SJohn Marino.Xr VOP_SETEXTATTR 9 69*86d7f5d3SJohn Marino.Sh AUTHORS 70*86d7f5d3SJohn MarinoThis manual page was written by 71*86d7f5d3SJohn Marino.An Robert Watson . 72