Fix acl_set_fd(3) and acl_get_fd(3) for cases where the kernel doesn't know
anything about _PC_ACL_NFS4.
This commit is contained in:
parent
5d2850ae03
commit
26f635f51f
@ -47,6 +47,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include "un-namespace.h"
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
@ -102,7 +103,7 @@ acl_get_link_np(const char *path_p, acl_type_t type)
|
||||
acl_t
|
||||
acl_get_fd(int fd)
|
||||
{
|
||||
if (fpathconf(fd, _PC_ACL_NFS4))
|
||||
if (fpathconf(fd, _PC_ACL_NFS4) == 1)
|
||||
return (acl_get_fd_np(fd, ACL_TYPE_NFS4));
|
||||
|
||||
return (acl_get_fd_np(fd, ACL_TYPE_ACCESS));
|
||||
|
@ -108,7 +108,7 @@ int
|
||||
acl_set_fd(int fd, acl_t acl)
|
||||
{
|
||||
|
||||
if (fpathconf(fd, _PC_ACL_NFS4))
|
||||
if (fpathconf(fd, _PC_ACL_NFS4) == 1)
|
||||
return (acl_set_fd_np(fd, acl, ACL_TYPE_NFS4));
|
||||
|
||||
return (acl_set_fd_np(fd, acl, ACL_TYPE_ACCESS));
|
||||
|
Loading…
Reference in New Issue
Block a user