acl_delete_def_fileacl_delete_def_link_npacl_delete_fd_npacl_delete_file_npacl_delete_link_np
- delete an ACL from a file
LIBRARY
Lb libc
SYNOPSIS
#include <sys/types.h>
#include <sys/acl.h> int
acl_delete_def_file (const char *path_p); int
acl_delete_def_link_np (const char *path_p); int
acl_delete_fd_np (int filedes acl_type_t type); int
acl_delete_file_np (const char *path_p acl_type_t type); int
acl_delete_link_np (const char *path_p acl_type_t type);
DESCRIPTION
The
acl_delete_def_file (,);
acl_delete_def_link_np (,);
acl_delete_fd_np (,);
acl_delete_file_np (,);
and
acl_delete_link_np ();
each allow the deletion of an ACL from a file.
The
acl_delete_def_file ();
function
is a POSIX.1e call that deletes the default ACL from a file (normally a
directory) by name; the remainder of the calls are non-portable extensions
that permit the deletion of arbitrary ACL types from a file/directory
either by path name or file descriptor.
The
_file ();
variations follow a symlink if it occurs in the last segment of the
path name; the
_link ();
variations operate on the symlink itself.
IMPLEMENTATION NOTES
Fx Ns 's
support for POSIX.1e interfaces and features is still under
development at this time.
RETURN VALUES
Rv -std
ERRORS
If any of the following conditions occur, these functions shall return -1
and set
errno
to the corresponding value:
Bq Er EACCES
Search permission is denied for a component of the path prefix, or the
object exists and the process does not have appropriate access rights.
Bq Er EBADF
The
fd
argument is not a valid file descriptor.
Bq Er EINVAL
The ACL type passed is invalid for this file object.
Bq Er ENAMETOOLONG
A component of a pathname exceeded 255 characters, or an
entire path name exceeded 1023 characters.
Bq Er ENOENT
The named object does not exist, or the
path_p
argument points to an empty string.
Bq Er ENOMEM
Insufficient memory available to fulfill request.
Bq Er ENOTDIR
A component of the path prefix is not a directory.
Argument
path_p
must be a directory, and is not.
Bq Er EOPNOTSUPP
The file system does not support ACL deletion.
Bq Er EPERM
The process does not have appropriate privilege to perform the operation
to delete an ACL.
POSIX.1e is described in IEEE POSIX.1e draft 17.
Discussion
of the draft continues on the cross-platform POSIX.1e implementation
mailing list.
To join this list, see the
Fx POSIX.1e implementation
page for more information.
HISTORY
POSIX.1e support was introduced in
Fx 4.0 ,
and development continues.