Lines Matching full:ap

212 ext2_getacl_posix1e(struct vop_getacl_args *ap)  in ext2_getacl_posix1e()  argument
220 switch (ap->a_type) { in ext2_getacl_posix1e()
233 len = sizeof(*ap->a_aclp) + sizeof(struct ext2_acl_header); in ext2_getacl_posix1e()
236 error = vn_extattr_get(ap->a_vp, IO_NODELOCKED, attrnamespace, attrname, in ext2_getacl_posix1e()
237 &len, value, ap->a_td); in ext2_getacl_posix1e()
239 switch (ap->a_type) { in ext2_getacl_posix1e()
241 ap->a_aclp->acl_cnt = 3; in ext2_getacl_posix1e()
242 ap->a_aclp->acl_entry[0].ae_tag = ACL_USER_OBJ; in ext2_getacl_posix1e()
243 ap->a_aclp->acl_entry[0].ae_id = ACL_UNDEFINED_ID; in ext2_getacl_posix1e()
244 ap->a_aclp->acl_entry[0].ae_perm = ACL_PERM_NONE; in ext2_getacl_posix1e()
245 ap->a_aclp->acl_entry[1].ae_tag = ACL_GROUP_OBJ; in ext2_getacl_posix1e()
246 ap->a_aclp->acl_entry[1].ae_id = ACL_UNDEFINED_ID; in ext2_getacl_posix1e()
247 ap->a_aclp->acl_entry[1].ae_perm = ACL_PERM_NONE; in ext2_getacl_posix1e()
248 ap->a_aclp->acl_entry[2].ae_tag = ACL_OTHER; in ext2_getacl_posix1e()
249 ap->a_aclp->acl_entry[2].ae_id = ACL_UNDEFINED_ID; in ext2_getacl_posix1e()
250 ap->a_aclp->acl_entry[2].ae_perm = ACL_PERM_NONE; in ext2_getacl_posix1e()
254 ap->a_aclp->acl_cnt = 0; in ext2_getacl_posix1e()
261 error = ext4_acl_from_disk(value, len, ap->a_aclp); in ext2_getacl_posix1e()
269 if (ap->a_type == ACL_TYPE_ACCESS) in ext2_getacl_posix1e()
270 ext2_sync_acl_from_inode(VTOI(ap->a_vp), ap->a_aclp); in ext2_getacl_posix1e()
278 ext2_getacl(struct vop_getacl_args *ap) in ext2_getacl() argument
281 if (((ap->a_vp->v_mount->mnt_flag & MNT_ACLS) == 0) || in ext2_getacl()
282 ((ap->a_vp->v_mount->mnt_flag & MNT_NFS4ACLS) != 0)) in ext2_getacl()
285 if (ap->a_type == ACL_TYPE_NFS4) in ext2_getacl()
288 return (ext2_getacl_posix1e(ap)); in ext2_getacl()
350 ext2_setacl_posix1e(struct vop_setacl_args *ap) in ext2_setacl_posix1e() argument
352 struct inode *ip = VTOI(ap->a_vp); in ext2_setacl_posix1e()
357 if ((ap->a_vp->v_mount->mnt_flag & MNT_ACLS) == 0) in ext2_setacl_posix1e()
363 * valid for the target. This will include a check on ap->a_type. in ext2_setacl_posix1e()
365 if (ap->a_aclp != NULL) { in ext2_setacl_posix1e()
369 error = VOP_ACLCHECK(ap->a_vp, ap->a_type, ap->a_aclp, in ext2_setacl_posix1e()
370 ap->a_cred, ap->a_td); in ext2_setacl_posix1e()
379 if (ap->a_type != ACL_TYPE_DEFAULT) in ext2_setacl_posix1e()
381 if (ap->a_vp->v_type != VDIR) in ext2_setacl_posix1e()
385 if (ap->a_vp->v_mount->mnt_flag & MNT_RDONLY) in ext2_setacl_posix1e()
397 if ((error = VOP_ACCESS(ap->a_vp, VADMIN, ap->a_cred, ap->a_td))) in ext2_setacl_posix1e()
400 switch (ap->a_type) { in ext2_setacl_posix1e()
402 len = sizeof(*ap->a_aclp) + sizeof(struct ext2_acl_header); in ext2_setacl_posix1e()
404 error = ext4_acl_to_disk(ap->a_aclp, &len, value); in ext2_setacl_posix1e()
406 error = vn_extattr_set(ap->a_vp, IO_NODELOCKED, in ext2_setacl_posix1e()
409 value, ap->a_td); in ext2_setacl_posix1e()
415 if (ap->a_aclp == NULL) { in ext2_setacl_posix1e()
416 error = vn_extattr_rm(ap->a_vp, IO_NODELOCKED, in ext2_setacl_posix1e()
418 POSIX1E_ACL_DEFAULT_EXTATTR_NAME, ap->a_td); in ext2_setacl_posix1e()
433 len = sizeof(*ap->a_aclp) + sizeof(struct ext2_acl_header); in ext2_setacl_posix1e()
435 error = ext4_acl_to_disk(ap->a_aclp, &len, value); in ext2_setacl_posix1e()
437 error = vn_extattr_set(ap->a_vp, IO_NODELOCKED, in ext2_setacl_posix1e()
440 value, ap->a_td); in ext2_setacl_posix1e()
460 if (ap->a_type == ACL_TYPE_ACCESS) { in ext2_setacl_posix1e()
465 ext2_sync_inode_from_acl(ap->a_aclp, ip); in ext2_setacl_posix1e()
470 VN_KNOTE_UNLOCKED(ap->a_vp, NOTE_ATTRIB); in ext2_setacl_posix1e()
476 ext2_setacl(struct vop_setacl_args *ap) in ext2_setacl() argument
478 if (((ap->a_vp->v_mount->mnt_flag & MNT_ACLS) == 0) || in ext2_setacl()
479 ((ap->a_vp->v_mount->mnt_flag & MNT_NFS4ACLS) != 0)) in ext2_setacl()
482 if (ap->a_type == ACL_TYPE_NFS4) in ext2_setacl()
485 return (ext2_setacl_posix1e(ap)); in ext2_setacl()
492 ext2_aclcheck(struct vop_aclcheck_args *ap) in ext2_aclcheck() argument
495 if (((ap->a_vp->v_mount->mnt_flag & MNT_ACLS) == 0) || in ext2_aclcheck()
496 ((ap->a_vp->v_mount->mnt_flag & MNT_NFS4ACLS) != 0)) in ext2_aclcheck()
499 if (ap->a_type == ACL_TYPE_NFS4) in ext2_aclcheck()
502 if ((ap->a_vp->v_mount->mnt_flag & MNT_ACLS) == 0) in ext2_aclcheck()
510 switch (ap->a_type) { in ext2_aclcheck()
515 if (ap->a_vp->v_type != VDIR) in ext2_aclcheck()
523 return (acl_posix1e_check(ap->a_aclp)); in ext2_aclcheck()