Lines Matching refs:acep
514 ace_t *acep, *result = NULL; in ln_aent_to_ace() local
542 acep = result; in ln_aent_to_ace()
555 acep->a_type = ACE_ACCESS_DENIED_ACE_TYPE; in ln_aent_to_ace()
556 acep->a_flags = 0; in ln_aent_to_ace()
558 acep->a_who = (uid_t)-1; in ln_aent_to_ace()
559 acep->a_flags |= in ln_aent_to_ace()
562 acep->a_who = aclent[i].a_id; in ln_aent_to_ace()
564 acep->a_who = aclent[i].a_id; in ln_aent_to_ace()
565 acep->a_flags |= ACE_IDENTIFIER_GROUP; in ln_aent_to_ace()
568 acep->a_flags |= ACE_INHERIT_ONLY_ACE | in ln_aent_to_ace()
578 acep->a_access_mask = mode_to_ace_access((mask ^ 07), in ln_aent_to_ace()
580 acep += 1; in ln_aent_to_ace()
584 acep->a_access_mask = mode_to_ace_access(aclent[i].a_perm, in ln_aent_to_ace()
589 acep->a_flags |= ACE_INHERIT_ONLY_ACE | in ln_aent_to_ace()
602 acep->a_who = (uid_t)-1; in ln_aent_to_ace()
603 acep->a_flags |= ACE_OWNER; in ln_aent_to_ace()
604 ace_make_deny(acep, acep + 1, isdir, B_TRUE); in ln_aent_to_ace()
605 acep += 2; in ln_aent_to_ace()
607 acep->a_who = aclent[i].a_id; in ln_aent_to_ace()
608 ace_make_deny(acep, acep + 1, isdir, B_FALSE); in ln_aent_to_ace()
609 acep += 2; in ln_aent_to_ace()
612 acep->a_who = (uid_t)-1; in ln_aent_to_ace()
613 acep->a_flags |= ACE_GROUP; in ln_aent_to_ace()
615 acep->a_who = aclent[i].a_id; in ln_aent_to_ace()
617 acep->a_flags |= ACE_IDENTIFIER_GROUP; in ln_aent_to_ace()
639 ace_make_deny(acep, acep + skip, isdir, B_FALSE); in ln_aent_to_ace()
645 acep += numgroup + 1; in ln_aent_to_ace()
647 acep += 1; in ln_aent_to_ace()
649 acep->a_who = (uid_t)-1; in ln_aent_to_ace()
650 acep->a_flags |= ACE_EVERYONE; in ln_aent_to_ace()
651 ace_make_deny(acep, acep + 1, isdir, B_FALSE); in ln_aent_to_ace()
652 acep += 2; in ln_aent_to_ace()
676 ace_t *acep; in convert_aent_to_ace() local
703 error = ln_aent_to_ace(aclentp, i, &acep, &acecnt, isdir); in convert_aent_to_ace()
711 if (acep) { in convert_aent_to_ace()
712 cacl_free(acep, acecnt * sizeof (ace_t)); in convert_aent_to_ace()
721 acep = cacl_realloc(acep, acesz, acesz + dfacesz); in convert_aent_to_ace()
722 if (acep == NULL) in convert_aent_to_ace()
725 (void) memcpy(acep + acecnt, dfacep, dfacesz); in convert_aent_to_ace()
732 *retacep = acep; in convert_aent_to_ace()
825 access_mask_check(ace_t *acep, int mask_bit, int isowner) in access_mask_check() argument
832 if (acep->a_type == ACE_ACCESS_DENIED_ACE_TYPE) { in access_mask_check()
833 haswriteperm = (acep->a_access_mask & ACE_WRITE_DATA) ? 0 : 1; in access_mask_check()
834 hasreadperm = (acep->a_access_mask & ACE_READ_DATA) ? 0 : 1; in access_mask_check()
836 haswriteperm = (acep->a_access_mask & ACE_WRITE_DATA) ? 1 : 0; in access_mask_check()
837 hasreadperm = (acep->a_access_mask & ACE_READ_DATA) ? 1 : 0; in access_mask_check()
878 if ((acep->a_access_mask & mask_bit) && in access_mask_check()
879 (acep->a_type & ACE_ACCESS_ALLOWED_ACE_TYPE)) { in access_mask_check()
904 if (acep->a_type == ACE_ACCESS_DENIED_ACE_TYPE) { in access_mask_check()
906 if (!(acep->a_access_mask & mask_bit)) { in access_mask_check()
910 if (acep->a_access_mask & mask_bit) { in access_mask_check()
917 if (!(acep->a_access_mask & mask_bit)) { in access_mask_check()
921 if (acep->a_access_mask & mask_bit) { in access_mask_check()
930 ace_to_aent_legal(ace_t *acep) in ace_to_aent_legal() argument
936 if ((acep->a_type != ACE_ACCESS_ALLOWED_ACE_TYPE) && in ace_to_aent_legal()
937 (acep->a_type != ACE_ACCESS_DENIED_ACE_TYPE)) { in ace_to_aent_legal()
943 if (acep->a_flags & ~(ACE_VALID_FLAG_BITS)) { in ace_to_aent_legal()
949 if (acep->a_flags & (ACE_SUCCESSFUL_ACCESS_ACE_FLAG | in ace_to_aent_legal()
957 if (acep->a_access_mask & ~(ACE_VALID_MASK_BITS)) { in ace_to_aent_legal()
962 if ((acep->a_flags & ACE_OWNER)) { in ace_to_aent_legal()
968 error = access_mask_check(acep, ACE_SYNCHRONIZE, isowner); in ace_to_aent_legal()
972 error = access_mask_check(acep, ACE_WRITE_OWNER, isowner); in ace_to_aent_legal()
976 error = access_mask_check(acep, ACE_DELETE, isowner); in ace_to_aent_legal()
980 error = access_mask_check(acep, ACE_WRITE_ATTRIBUTES, isowner); in ace_to_aent_legal()
984 error = access_mask_check(acep, ACE_READ_NAMED_ATTRS, isowner); in ace_to_aent_legal()
988 error = access_mask_check(acep, ACE_WRITE_NAMED_ATTRS, isowner); in ace_to_aent_legal()
993 if (acep->a_type == ACE_ACCESS_ALLOWED_ACE_TYPE) { in ace_to_aent_legal()
994 if (! (acep->a_access_mask & ACE_READ_ATTRIBUTES)) { in ace_to_aent_legal()
998 if ((acep->a_access_mask & ACE_WRITE_DATA) && in ace_to_aent_legal()
999 (! (acep->a_access_mask & ACE_APPEND_DATA))) { in ace_to_aent_legal()
1003 if ((! (acep->a_access_mask & ACE_WRITE_DATA)) && in ace_to_aent_legal()
1004 (acep->a_access_mask & ACE_APPEND_DATA)) { in ace_to_aent_legal()
1011 if ((acep->a_access_mask & ACE_READ_ACL) && in ace_to_aent_legal()
1012 (acep->a_type != ACE_ACCESS_ALLOWED_ACE_TYPE)) { in ace_to_aent_legal()
1016 if (acep->a_access_mask & ACE_WRITE_ACL) { in ace_to_aent_legal()
1017 if ((acep->a_type == ACE_ACCESS_DENIED_ACE_TYPE) && in ace_to_aent_legal()
1022 if ((acep->a_type == ACE_ACCESS_ALLOWED_ACE_TYPE) && in ace_to_aent_legal()
1270 ace_t *acep; in ln_ace_to_aent() local
1314 acep = &ace[i]; in ln_ace_to_aent()
1317 error = ace_to_aent_legal(acep); in ln_ace_to_aent()
1325 acep->a_access_mask &= ~(ACE_WRITE_OWNER | ACE_DELETE | in ln_ace_to_aent()
1330 bits = acep->a_flags & in ln_ace_to_aent()
1347 if ((acep->a_flags & ACE_OWNER)) { in ln_ace_to_aent()
1356 } else if ((acep->a_flags & ACE_EVERYONE)) { in ln_ace_to_aent()
1361 } else if (acep->a_flags & ACE_IDENTIFIER_GROUP) { in ln_ace_to_aent()
1366 if ((acep->a_flags & ACE_GROUP)) { in ln_ace_to_aent()
1372 vals = acevals_find(acep, &acl->group, in ln_ace_to_aent()
1388 vals = acevals_find(acep, &acl->user, in ln_ace_to_aent()
1402 if (acep->a_type == ACE_ACCESS_ALLOWED_ACE_TYPE) { in ln_ace_to_aent()
1408 vals->allowed = acep->a_access_mask; in ln_ace_to_aent()
1432 vals->denied = acep->a_access_mask; in ln_ace_to_aent()
1689 ace_trivial_common(void *acep, int aclcnt, in ace_trivial_common() argument
1698 while (cookie = walk(acep, cookie, aclcnt, &flags, &type, &mask)) { in ace_trivial_common()
1747 ace_t *acep = datap; in ace_walk() local
1752 *flags = acep[cookie].a_flags; in ace_walk()
1753 *type = acep[cookie].a_type; in ace_walk()
1754 *mask = acep[cookie++].a_access_mask; in ace_walk()
1760 ace_trivial(ace_t *acep, int aclcnt) in ace_trivial() argument
1762 return (ace_trivial_common(acep, aclcnt, ace_walk)); in ace_trivial()