Deleted Added
full compact
acl_perm.c (75928) acl_perm.c (90781)
1/*
1/*
2 * Copyright (c) 2001 Chris D. Faulhaber
2 * Copyright (c) 2001-2002 Chris D. Faulhaber
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright

--- 7 unchanged lines hidden (view full) ---

18 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
19 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
20 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
21 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
22 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
23 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
24 * POSSIBILITY OF SUCH DAMAGE.
25 *
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright

--- 7 unchanged lines hidden (view full) ---

18 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
19 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
20 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
21 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
22 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
23 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
24 * POSSIBILITY OF SUCH DAMAGE.
25 *
26 * $FreeBSD: head/lib/libc/posix1e/acl_perm.c 75928 2001-04-24 22:45:41Z jedgar $
26 * $FreeBSD: head/lib/libc/posix1e/acl_perm.c 90781 2002-02-17 20:05:20Z jedgar $
27 */
28
29#include <sys/types.h>
30#include "namespace.h"
31#include <sys/acl.h>
32#include "un-namespace.h"
33
34#include <errno.h>

--- 8 unchanged lines hidden (view full) ---

43{
44
45 if (permset_d) {
46 switch(perm) {
47 case ACL_READ:
48 case ACL_WRITE:
49 case ACL_EXECUTE:
50 *permset_d |= perm;
27 */
28
29#include <sys/types.h>
30#include "namespace.h"
31#include <sys/acl.h>
32#include "un-namespace.h"
33
34#include <errno.h>

--- 8 unchanged lines hidden (view full) ---

43{
44
45 if (permset_d) {
46 switch(perm) {
47 case ACL_READ:
48 case ACL_WRITE:
49 case ACL_EXECUTE:
50 *permset_d |= perm;
51 return 0;
51 return (0);
52 }
53 }
54
55 errno = EINVAL;
52 }
53 }
54
55 errno = EINVAL;
56 return -1;
56 return (-1);
57}
58
59/*
60 * acl_clear_perms() (23.4.3): clear all permisions from the permission
61 * set permset_d
62 */
63int
64acl_clear_perms(acl_permset_t permset_d)
65{
66
57}
58
59/*
60 * acl_clear_perms() (23.4.3): clear all permisions from the permission
61 * set permset_d
62 */
63int
64acl_clear_perms(acl_permset_t permset_d)
65{
66
67 if (!permset_d) {
67 if (permset_d == NULL) {
68 errno = EINVAL;
68 errno = EINVAL;
69 return -1;
69 return (-1);
70 }
71
72 *permset_d = ACL_PERM_NONE;
73
70 }
71
72 *permset_d = ACL_PERM_NONE;
73
74 return 0;
74 return (0);
75}
76
77/*
78 * acl_delete_perm() (23.4.10): remove the permission in perm from the
79 * permission set permset_d
80 */
81int
82acl_delete_perm(acl_permset_t permset_d, acl_perm_t perm)
83{
84
85 if (permset_d) {
86 switch(perm) {
87 case ACL_READ:
88 case ACL_WRITE:
89 case ACL_EXECUTE:
90 *permset_d &= ~(perm & ACL_PERM_BITS);
75}
76
77/*
78 * acl_delete_perm() (23.4.10): remove the permission in perm from the
79 * permission set permset_d
80 */
81int
82acl_delete_perm(acl_permset_t permset_d, acl_perm_t perm)
83{
84
85 if (permset_d) {
86 switch(perm) {
87 case ACL_READ:
88 case ACL_WRITE:
89 case ACL_EXECUTE:
90 *permset_d &= ~(perm & ACL_PERM_BITS);
91 return 0;
91 return (0);
92 }
93 }
94
95 errno = EINVAL;
92 }
93 }
94
95 errno = EINVAL;
96 return -1;
96 return (-1);
97}
97}