Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
ACL_SET(3)             FreeBSD Library Functions Manual             ACL_SET(3)

NAME
     acl_set_fd, acl_set_fd_np, acl_set_file, acl_set_link_np -- set an ACL
     for a file

LIBRARY
     Standard C Library (libc, -lc)

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

     int
     acl_set_fd(int fd, acl_t acl);

     int
     acl_set_fd_np(int fd, acl_t acl, acl_type_t type);

     int
     acl_set_file(const char *path_p, acl_type_t type, acl_t acl);

     int
     acl_set_link_np(const char *path_p, acl_type_t type, acl_t acl);

DESCRIPTION
     The acl_set_fd(), acl_set_fd_np(), acl_set_file(), and acl_set_link_np()
     each associate an ACL with an object referred to by fd or path_p.  The
     acl_set_fd_np() and acl_set_link_np() functions are not POSIX.1e calls.
     The acl_set_fd() function allows only the setting of ACLs of type
     ACL_TYPE_ACCESS where as acl_set_fd_np() allows the setting of ACLs of
     any type.  The acl_set_link_np() function acts on a symlink rather than
     its target, if the target of the path is a symlink.

IMPLEMENTATION NOTES
     FreeBSD's support for POSIX.1e interfaces and features is still under
     development at this time.

RETURN VALUES
     Upon successful completion, the value 0 is returned; otherwise the
     value -1 is returned and the global variable errno is set to indicate the
     error.

ERRORS
     If any of the following conditions occur, these functions shall return -1
     and set errno to the corresponding value:

     [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.

     [EBADF]            The fd argument is not a valid file descriptor.

     [EINVAL]           Argument acl does not point to a valid ACL for this
                        object, or the ACL type specified in type is invalid
                        for this object, or both.

     [ENAMETOOLONG]     A component of a pathname exceeded 255 characters, or
                        an entire path name exceeded 1023 characters.

     [ENOENT]           The named object does not exist, or the path_p argu-
                        ment points to an empty string.

     [ENOMEM]           Insufficient memory available to fulfill request.

     [ENOSPC]           The directory or file system that would contain the
                        new ACL cannot be extended, or the file system is out
                        of file allocation resources.

     [EOPNOTSUPP]       The file system does not support ACL retrieval.

     [EROFS]            This function requires modification of a file system
                        which is currently read-only.

SEE ALSO
     acl(3), acl_delete(3), acl_get(3), acl_valid(3), posix1e(3)

STANDARDS
     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 FreeBSD POSIX.1e implementation page for more
     information.

HISTORY
     POSIX.1e support was introduced in FreeBSD 4.0, and development contin-
     ues.

AUTHORS
     Robert N M Watson

FreeBSD 6.2                    December 29, 2002                   FreeBSD 6.2

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | IMPLEMENTATION NOTES | RETURN VALUES | ERRORS | SEE ALSO | STANDARDS | HISTORY | AUTHORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=acl_set_fd&sektion=3&manpath=FreeBSD+6.2-RELEASE>

home | help