diff options
author | jedgar <jedgar@FreeBSD.org> | 2002-02-19 02:36:15 +0000 |
---|---|---|
committer | jedgar <jedgar@FreeBSD.org> | 2002-02-19 02:36:15 +0000 |
commit | 8df81cb6594e95979ea65b5cafae5dd328343839 (patch) | |
tree | f1d1d96b74dad4f04f991999fd859b3bbc8d1f4c /bin/setfacl | |
parent | 6ebb003bcc8147bb747614deb821a7242f9cf359 (diff) | |
download | FreeBSD-src-8df81cb6594e95979ea65b5cafae5dd328343839.zip FreeBSD-src-8df81cb6594e95979ea65b5cafae5dd328343839.tar.gz |
Use acl_dup() to duplicate an ACL instead of rolling our own
Diffstat (limited to 'bin/setfacl')
-rw-r--r-- | bin/setfacl/mask.c | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/bin/setfacl/mask.c b/bin/setfacl/mask.c index d81cfb6..2106548 100644 --- a/bin/setfacl/mask.c +++ b/bin/setfacl/mask.c @@ -41,7 +41,7 @@ int set_acl_mask(acl_t *prev_acl) { - acl_entry_t entry, entry_new; + acl_entry_t entry; acl_t acl; acl_tag_t tag; int entry_id; @@ -105,19 +105,7 @@ set_acl_mask(acl_t *prev_acl) } acl_free(*prev_acl); - *prev_acl = acl_init(ACL_MAX_ENTRIES); - if (*prev_acl == NULL) - err(1, "acl_init() failed"); - - entry_id = ACL_FIRST_ENTRY; - while (acl_get_entry(acl, entry_id, &entry) == 1) { - entry_id = ACL_NEXT_ENTRY; - if (acl_create_entry(prev_acl, &entry_new) == -1) - err(1, "acl_create_entry() failed"); - if (acl_copy_entry(entry_new, entry) == -1) - err(1, "acl_copy_entry() failed"); - } - + *prev_acl = acl_dup(acl); acl_free(acl); return (0); |