summaryrefslogtreecommitdiff
path: root/man/man3
diff options
context:
space:
mode:
authorNathan Scott <nathans@sgi.com>2002-02-25 22:13:12 +0000
committerNathan Scott <nathans@sgi.com>2002-02-25 22:13:12 +0000
commitc9f8bfe909a76d624ba8061d35a28141f43ed251 (patch)
tree539b229655accf088d42f989899842d06e279bc0 /man/man3
parent3b23e11526bee6d7d47d182a8d3d71c23a4a3c12 (diff)
downloadacl-c9f8bfe909a76d624ba8061d35a28141f43ed251.tar.gz
Merge of xfs-cmds-2.4.18:slinx:111141a by nathans.
deleted, we now switch over to a new version of ACL userspace derived closely from Andreas' code.
Diffstat (limited to 'man/man3')
-rw-r--r--man/man3/Makefile48
-rw-r--r--man/man3/acl_copy_ext.344
-rw-r--r--man/man3/acl_delete_def_file.353
-rw-r--r--man/man3/acl_dup.319
-rw-r--r--man/man3/acl_free.314
-rw-r--r--man/man3/acl_from_text.362
-rw-r--r--man/man3/acl_get_fd.397
-rw-r--r--man/man3/acl_get_file.3121
-rw-r--r--man/man3/acl_set_compat.334
-rw-r--r--man/man3/acl_size.318
-rw-r--r--man/man3/acl_valid.326
11 files changed, 0 insertions, 536 deletions
diff --git a/man/man3/Makefile b/man/man3/Makefile
index 549c947..e69de29 100644
--- a/man/man3/Makefile
+++ b/man/man3/Makefile
@@ -1,48 +0,0 @@
-#
-# Copyright (c) 2000 Silicon Graphics, Inc. All Rights Reserved.
-#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of version 2 of the GNU General Public License as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it would be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-#
-# Further, this software is distributed without any warranty that it is
-# free of the rightful claim of any third person regarding infringement
-# or the like. Any license provided herein, whether implied or
-# otherwise, applies only to this software file. Patent licenses, if
-# any, provided herein do not apply to combinations of this program with
-# other software, or any other product whatsoever.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write the Free Software Foundation, Inc., 59
-# Temple Place - Suite 330, Boston MA 02111-1307, USA.
-#
-# Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
-# Mountain View, CA 94043, or:
-#
-# http://www.sgi.com
-#
-# For further information regarding this notice, see:
-#
-# http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
-#
-
-TOPDIR = ../..
-include $(TOPDIR)/include/builddefs
-
-MAN_SECTION = 3
-
-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)
diff --git a/man/man3/acl_copy_ext.3 b/man/man3/acl_copy_ext.3
index 7d1ffc1..e69de29 100644
--- a/man/man3/acl_copy_ext.3
+++ b/man/man3/acl_copy_ext.3
@@ -1,44 +0,0 @@
-.TH ACL_COPY_EXT 3
-.SH NAME
-acl_copy_ext, acl_copy_int \- copy ACL from system to user space or from user to system space
-.SH SYNOPSIS
-.B #include <sys/acl.h>
-.PP
-.B "ssize_t acl_copy_ext(void *bufp, struct acl *aclp, ssize_t size);"
-.br
-.B struct acl *acl_copy_int(void *bufp);
-.SH DESCRIPTION
-\f2acl_copy_ext\fP sets \f2*bufp\fP to \f2*aclp\fP if the arguments are valid.
-\f2acl_copy_int\fP allocates a \f2struct acl\fP and copies the \f2struct acl\fP
-pointed to by
-\f2*bufp\fP into it, if the arguments are valid. The storage should
-be freed by calling \f2acl_free\fP(3) when no longer needed.
-.PP
-In the
-POSIX specifications, the internal form of an ACL may be different from the
-external form, hence the need for these functions. In IRIX, both forms are
-the same.
-.SH RETURN VALUES
-.I acl_copy_ext
-returns \f2sizeof(struct acl)\fP in the normal case,
-or -1 if \f2aclp\fP is null.
-.PP
-.I acl_copy_int
-returns \f2aclp\fP in the normal case or \f2(struct acl *)0\fP if the
-arguments are invalid.
-.SH ERRORS
-.I acl_copy_ext:
-.TP 16
-EINVAL
-\f2aclp\fP is null or \f2bufp\fP is null or \f2size\fP is 0 or negative.
-.TP 16
-ERANGE
-\f2size\fP is less than \f2sizeof(struct acl)\fP
-.PP
-.I acl_copy_int:
-.TP 16
-EINVAL
-\f2bufp\fP is null
-.TP 16
-ENOMEM
-memory allocation failure
diff --git a/man/man3/acl_delete_def_file.3 b/man/man3/acl_delete_def_file.3
index d738303..e69de29 100644
--- a/man/man3/acl_delete_def_file.3
+++ b/man/man3/acl_delete_def_file.3
@@ -1,53 +0,0 @@
-.TH ACL_DELETE_DEF_FILE 3
-.SH NAME
-acl_delete_def_file \- delete the default ACL for a named directory
-.SH SYNOPSIS
-.B #include <sys/acl.h>
-.PP
-.B int acl_delete_def_file(const char *path);
-.SH DESCRIPTION
-Deletes the default ACL associated with the directory specified in \f2path\fP.
-The effective UID of the process must match the owner of the directory
-or the process must have appropriate privilege to delete the
-default ACL from
-\f2path_p\fP.
-If capabilities are not enabled, only the superuser can delete the
-default ACL from a directory not owned by the effective UID.
-If
-.B _POSIX_CAP
-is in effect, then the appropriate capability shall include CAP_FOWNER.
-In addition, if
-.B _POSIX_MAC
-is in effect, then the process must have MAC write access to
-the directory.
-.P
-If the argument
-\f2path\fP
-is not a directory, then the function fails.
-.SH RETURN VALUES
-.I acl_delete_def_file
-returns 0 if successful, -1 otherwise.
-.SH ERRORS
-.TP 16
-EACCESS
-Search permission is denied for a component
-of the path prefix or the object exists and the process does not have
-appropriate access rights.
-.TP 16
-ENAMETOOLONG
-The length of the pathname argument is greater than PATH_MAX, or some
-component of it is greater than NAME_MAX.
-.TP 16
-ENOENT
-The directory does not exist or \f2path\fP points to an empty string.
-.TP 16
-ENOTDIR
-\f2path\fP is not a directory.
-.TP 16
-EPERM
-The process does not have appropriate privilege to
-perform the operation to delete the default ACL.
-.TP 16
-EROFS
-This function requires modification of a file system which is currently
-read-only.
diff --git a/man/man3/acl_dup.3 b/man/man3/acl_dup.3
index 4bb8a80..e69de29 100644
--- a/man/man3/acl_dup.3
+++ b/man/man3/acl_dup.3
@@ -1,19 +0,0 @@
-.TH ACL_DUP 3
-.SH NAME
-acl_dup \- make a copy of an ACL
-.SH SYNOPSIS
-.B #include <sys/acl.h>
-.PP
-.B acl_t acl_dup( acl_t acl);
-.SH DESCRIPTION
-Returns a pointer to an allocated ACL that is a copy of the ACL supplied
-as an argument.
-.SH RETURN VALUES
-Returns a pointer or null.
-.SH ERRORS
-.TP 16
-EINVAL
-\f2aclp\fP is null.
-.TP 16
-ENOMEM
-allocation of the \f2struct acl\fP failed.
diff --git a/man/man3/acl_free.3 b/man/man3/acl_free.3
index 7bf092c..e69de29 100644
--- a/man/man3/acl_free.3
+++ b/man/man3/acl_free.3
@@ -1,14 +0,0 @@
-.TH ACL_FREE 3
-.SH NAME
-acl_free \- free allocated memory
-.SH SYNOPSIS
-.B #include <sys/acl.h>
-.PP
-.B int acl_free( void *obj_p);
-.SH DESCRIPTION
-Free memory allocated by ACL interface calls.
-This routine is present for POSIX compliance, it is simply a wrapper
-for \f2free\fP(3).
-.SH RETURN VALUES
-.I acl_free
-returns 0.
diff --git a/man/man3/acl_from_text.3 b/man/man3/acl_from_text.3
index dd1f82d..e69de29 100644
--- a/man/man3/acl_from_text.3
+++ b/man/man3/acl_from_text.3
@@ -1,62 +0,0 @@
-.TH ACL_FROM_TEXT 3
-.SH NAME
-acl_from_text, acl_to_short_text, acl_to_text \- convert a POSIX ACL string to a struct acl or
-a struct acl to a POSIX ACL string
-.SH SYNOPSIS
-.B #include <sys/acl.h>
-.PP
-.B acl_t acl_from_text(const char *argp);
-.br
-.B char * acl_to_short_text(struct acl * aclp, ssize_t *len_p);
-.br
-.B char * acl_to_text(struct acl * aclp, ssize_t *len_p);
-.SH DESCRIPTION
-These routines convert strings defined by the POSIX P1003.1e specifications
-(see
-.IR chacl (1))
-to/from
-.IR "struct acl" ,
-which is the internal
-format for an
-Access Control List.
-.SH RETURN VALUES
-\f2acl_from_text\fP returns a pointer to a \f2struct acl\fP
-allocated by the routine or a NULL pointer in the case of a failure.
-The acl should be freed when no longer needed by calling
-.IR acl_free (3).
-.PP
-\f2acl_to_text\fP returns a pointer to a null terminated
-character string allocated by the routine which is
-a long form representation of the ACL, or a NULL pointer if an error
-occurred. This string
-should be freed when no longer needed by calling
-.IR acl_free (3).
-If the \f2len_p\fP argument is not NULL, then the length of the string
-is returned in \f2ssize_t\fP pointed to by \f2len_p\fP.
-.PP
-\f2acl_to_short_text\fP is identical to \f2acl_to_text\fP, except that a
-short form representation of the ACL is returned.
-.SH ERRORS
-.I acl_from_text:
-.TP 16
-EINVAL
-input text is invalid
-.TP 16
-ENOMEM
-could not allocate space for new acl
-.PP
-.I acl_to_short_text:
-.TP 16
-EINVAL
-input acl is invalid
-.TP 16
-ENOMEM
-could not allocate space for the return string
-.PP
-.I acl_to_text:
-.TP 16
-EINVAL
-input acl is invalid
-.TP 16
-ENOMEM
-could not allocate space for the return string
diff --git a/man/man3/acl_get_fd.3 b/man/man3/acl_get_fd.3
index 457e7c8..e69de29 100644
--- a/man/man3/acl_get_fd.3
+++ b/man/man3/acl_get_fd.3
@@ -1,97 +0,0 @@
-.TH ACL_GET_FD 3
-.SH NAME
-acl_get_fd, acl_set_fd \- get or set the ACL associated with an open file
-.SH SYNOPSIS
-.B #include <sys/acl.h>
-.PP
-.B struct acl * acl_get_fd(int fd);
-.br
-.B int acl_set_fd(int fd, struct acl *aclp);
-.SH DESCRIPTION
-.I acl_get_fd
-returns a pointer to an allocated \f2struct acl\fP associated with the
-open file referred to by \f2fd\fP.
-If
-.B _POSIX_MAC
-is in effect, then the process must have MAC read access to the object.
-If no access ACL is associated with the \f2fd\fP, then the resultant ACL
-is dependent on the ACL compatibility mode (see
-.BR acl_set_compat (8)
-). If \f2ACL_COMPAT_IRIXGET\f1 is
-set then an ACL with a count of ACL_NOT_PRESENT is returned. Otherwise,
-when no compatibility mode has been set, a mininum 3 ACE ACL based on the
-file's mode is returned.
-.PP
-.I acl_set_fd
-sets the ACL for the open file referred to by \f2fd\fP from the \f2struct acl\fP
-pointed to by \f2aclp\fP.
-The effective UID of the process must match the owner of the object or the
-process must have appropriate privilege to set the access ACL on the
-object. If
-.B _POSIX_CAP
-is in effect, then the appropriate capability must include CAP_FOWNER.
-In addition, if
-.B _POSIX_MAC
-is in effect, then the process must have MAC write access to the object.
-\f2acl_set_fd\fP
-function will succeed only if the ACL
-is valid as defined by the
-\f2acl_valid\fP(3)
-function.
-.SH RETURN VALUES
-.I acl_get_fd
-returns a pointer to an allocated \f2struct acl\fP if successful, NULL otherwise.
-The storage should be freed with a call to \f2acl_free\fP with the returned
-pointer as an argument when it is no longer needed.
-.PP
-.I acl_set_fd
-returns 0 if successful, -1 otherwise.
-.SH ERRORS
-.I acl_get_fd:
-.TP 16
-EACCESS
-Access to the object is denied.
-.TP 16
-EBADF
-\f2fd\fP is not a valid file descriptor.
-.TP 16
-ENOMEM
-allocation of the \f2struct acl\fP failed.
-.TP 16
-ENOSYS
-ACL support is not configured in kernel.
-.TP 16
-EOPNOTSUPP (ENOTSUP)
-ACL support is not available for given filesystem.
-.PP
-.I acl_set_fd:
-.TP 16
-EACCESS
-Access to the object is denied.
-.TP 16
-EBADF
-\f2fd\fP is not a valid file descriptor.
-.TP 16
-EINVAL
-The ACL is not valid or too large (too many entries).
-.TP 16
-ENOSPC
-The file system is full or some other resource needed for the ACL storage
-is not available.
-.TP 16
-ENOSYS
-ACL support is not configured in kernel.
-.TP 16
-EOPNOTSUPP (ENOTSUP)
-ACL support is not available for given filesystem.
-.TP 16
-EPERM
-The process does not have appropriate privilege to
-perform the operation to set the ACL.
-.TP 16
-EROFS
-This function requires modification of a file system which is currently
-read-only.
-.SH SEE ALSO
-.BR acl_get_file (8),
-.BR acl_set_compat (8).
diff --git a/man/man3/acl_get_file.3 b/man/man3/acl_get_file.3
index b1648de..e69de29 100644
--- a/man/man3/acl_get_file.3
+++ b/man/man3/acl_get_file.3
@@ -1,121 +0,0 @@
-.TH ACL_GET_FILE 3
-.SH NAME
-acl_get_file, acl_set_file \- get or set the ACL for a pathname
-.SH SYNOPSIS
-.B #include <sys/acl.h>
-.PP
-.B struct acl * acl_get_file(const char *path, acl_type_t type);
-.br
-.B "int acl_set_file(const char *path, acl_type_t type, struct acl *aclp);"
-.SH DESCRIPTION
-.I acl_get_file
-returns a pointer to an allocated \f2struct acl\fP associated with the
-pathname pointed to by \f2path\fP. \f2type\fP determines whether the
-default ACL (\f2type == ACL_TYPE_DEFAULT\fP) or access ACL (\f2type == ACL_TYPE_ACCESS\fP) is returned. The default ACL is available only for directories.
-If
-.B _POSIX_MAC
-is in effect, then the process must have MAC read access to the object.
-If no ACL is associated with the \f2path\fP, then the resultant ACL
-is dependent on the ACL compatibility mode (see
-.BR acl_set_compat (8)
-). If \f2ACL_COMPAT_IRIXGET\f1 is
-set then an ACL with a count of ACL_NOT_PRESENT is returned.
-If no compatibility mode has been set and the ACL is an access ACL then
-a mininum 3 ACE ACL based on the file's mode is returned.
-If no compatibility mode has been set and the ACL is a default ACL then
-an ACL with a count of zero entries is returned.
-.PP
-.I acl_set_file
-sets the ACL of the specified pathname. \f2type\fP indicates which ACL,
-default or access, is to be set. Only directories can have a default ACL.
-If \f2type\fP is not valid, the call fails.
-The ACL is first checked for validity by
-\f2acl_valid\fP(3).
-The effective UID of the process must match the owner of the object
-or the process must have appropriate privilege to set the access ACL
-or the default ACL on
-\f2path\fP.
-If
-.B _POSIX_CAP
-is in effect, then the appropriate capability must include CAP_FOWNER.
-In addition, if
-.B _POSIX_MAC
-is in effect, then the process must have MAC write access to the object.
-.SH RETURN VALUES
-.I acl_get_file
-a pointer to an allocated \f2struct acl\fP if successful, NULL otherwise.
-The storage should be freed with a call to \f2acl_free\fP with the returned
-pointer as an argument when it is no longer needed.
-.PP
-.I acl_set_file
-returns 0 if successful, -1 otherwise.
-.SH ERRORS
-.I acl_get_file:
-.TP 16
-EACCESS
-Search permission is denied for a component
-of the path prefix or the object exists and the process does not have
-appropriate access rights.
-.TP 16
-EINVAL
-\f2type\fP is not valid
-.TP 16
-ENAMETOLONG
-The pathname or one of its components is too long.
-.TP 16
-ENOENT
-The named object does not exist or \f2path\fP points to an empty string.
-.TP 16
-ENOMEM
-allocation of the \f2struct acl\fP failed.
-.TP 16
-ENOSYS
-ACL support is not configured in kernel.
-.TP 16
-EOPNOTSUPP (ENOTSUP)
-ACL support is not available for given filesystem.
-.TP 16
-ENOTDIR
-A component of the path prefix is not a directory.
-.PP
-.I acl_set_file:
-.TP 16
-EACCESS
-Search permission is denied for a component
-of the path prefix or the object exists and the process does not have
-appropriate access rights.
-.TP 16
-EINVAL
-\f2aclp\fP points to an invalid ACL.
-\f2type\fP is not either ACL_TYPE_ACCESS, or ACL_TYPE_DEFAULT.
-The ACL is too large (too many entries).
-.TP 16
-ENAMETOLONG
-The pathname or one of its components is too long.
-.TP 16
-ENOENT
-The named object does not exist or \f2path\fP points to an empty string.
-.TP 16
-ENOSPC
-The file system is full or some other resource needed for the ACL storage
-is not available.
-.TP 16
-ENOSYS
-ACL support is not configured in kernel.
-.TP 16
-EOPNOTSUPP (ENOTSUP)
-ACL support is not available for given filesystem.
-.TP 16
-ENOTDIR
-A component of the path prefix is not a directory.
-.TP 16
-EPERM
-The process does not have appropriate privilege to
-perform the operation to set the ACL.
-.TP 16
-EROFS
-This function requires modification of a file system which is currently
-read-only.
-.SH SEE ALSO
-.BR acl_get_fd (8),
-.BR acl_set_compat (8).
diff --git a/man/man3/acl_set_compat.3 b/man/man3/acl_set_compat.3
deleted file mode 100644
index 2c6df39..0000000
--- a/man/man3/acl_set_compat.3
+++ /dev/null
@@ -1,34 +0,0 @@
-.TH ACL_SET_COMPAT 3
-.SH NAME
-acl_set_compat \- set compatibility mode for ACL library
-.SH SYNOPSIS
-.B #include <sys/acl.h>
-.PP
-.B void acl_set_compat(acl_compat_t compat_bits);
-.SH DESCRIPTION
-.I acl_set_compat
-sets the compatibility mode for various IRIX and Linux ACL functionality.
-The ACL semantics for IRIX even though they are based on the Posix 1003.1e
-withdrawn ACL standard, are subtly different from the semantics of
-ext2 ACLs and BSD ACLs. The default semantics used are that of the ext2
-Posix ACLs and a call to this function should only be made to gain
-IRIX compatibility.
-.PP
-\f2Compat_bits\f1 is a bit-vector formed by or'ing compatiblity macros
-with the prefix of \f2ACL_COMPAT_\f1. Each call to this function will
-add to the current compatibility vector. Given a \f2compat_bits\f1 value
-of zero will reset it.
-If \f2compat_bits\f1 is set to \f2ACL_COMPAT_IRIXGET\f1 then the semantics for
-.BR acl_get_fd (8)
-and
-.BR acl_get_file (8)
-are changed in the cases where no ACL was ever explicitly set for
-a file or directory.
-Please refer to
-.BR acl_get_fd (8)
-and
-.BR acl_get_file (8)
-for a description of the differing semantics.
-.SH SEE ALSO
-.BR acl_get_fd (8),
-.BR acl_get_file (8).
diff --git a/man/man3/acl_size.3 b/man/man3/acl_size.3
index 4ce89eb..e69de29 100644
--- a/man/man3/acl_size.3
+++ b/man/man3/acl_size.3
@@ -1,18 +0,0 @@
-.TH ACL_SIZE 3
-.SH NAME
-acl_size \- return the size of an ACL
-.SH SYNOPSIS
-.B #include <sys/acl.h>
-.PP
-.B ssize_t acl_size(struct acl *aclp);
-.SH DESCRIPTION
-Returns the size of an ACL pointed to by \f2aclp\fP. In IRIX ACLs are all
-a fixed size, but the POSIX specifications allow for the possibility of
-variable sized structures.
-.SH RETURN VALUES
-.I acl_size
-returns \f2sizeof(struct acl)\fP or -1 if \f2aclp\fP is null.
-.SH ERRORS
-.TP 16
-EINVAL
-\f2aclp\fP is null
diff --git a/man/man3/acl_valid.3 b/man/man3/acl_valid.3
index bdd8d9a..e69de29 100644
--- a/man/man3/acl_valid.3
+++ b/man/man3/acl_valid.3
@@ -1,26 +0,0 @@
-.TH ACL_VALID 3
-.SH NAME
-acl_valid \- validate an ACL
-.SH SYNOPSIS
-.B #include <sys/acl.h>
-.PP
-.B int acl_valid( struct acl *aclp);
-.SH DESCRIPTION
-Check that the format of an ACL is valid.
-.PP
-First, \f2aclp\fP must be non null.
-The three required entries (ACL_USER_OBJ, ACL_GROUP_OBJ, and ACL_OTHER_OBJ) must
-exist exactly once in the ACL.
-If the ACL contains any ACL_USER, ACL_GROUP, or any implementation-defined
-entries in the file group class, then one ACL_MASK entry is
-required. The ACL may contain at most one ACL_MASK entry.
-.PP
-The qualifier field must be unique among all entries of the same
-type.
-.SH RETURN VALUES
-.I acl_valid
-returns 0 if the ACL is valid, -1 otherwise.
-.SH ERRORS
-.TP 16
-EINVAL
-ACL is not valid.