version 1.137, 2009/06/23 19:36:40 |
version 1.138, 2009/07/03 21:17:41 |
Line 763 kernfs_close(void *v) |
|
Line 763 kernfs_close(void *v) |
|
return (0); |
return (0); |
} |
} |
|
|
|
static int |
|
kernfs_check_possible(struct vnode *vp, mode_t mode) |
|
{ |
|
|
|
return 0; |
|
} |
|
|
|
static int |
|
kernfs_check_permitted(struct vattr *va, mode_t mode, kauth_cred_t cred) |
|
{ |
|
|
|
return genfs_can_access(va->va_type, va->va_mode, va->va_uid, va->va_gid, |
|
mode, cred); |
|
} |
|
|
int |
int |
kernfs_access(void *v) |
kernfs_access(void *v) |
{ |
{ |
Line 777 kernfs_access(void *v) |
|
Line 792 kernfs_access(void *v) |
|
if ((error = VOP_GETATTR(ap->a_vp, &va, ap->a_cred)) != 0) |
if ((error = VOP_GETATTR(ap->a_vp, &va, ap->a_cred)) != 0) |
return (error); |
return (error); |
|
|
return (genfs_can_access(va.va_type, va.va_mode, va.va_uid, va.va_gid, |
error = kernfs_check_possible(ap->a_vp, ap->a_mode); |
ap->a_mode, ap->a_cred)); |
if (error) |
|
return error; |
|
|
|
error = kernfs_check_permitted(&va, ap->a_mode, ap->a_cred); |
|
|
|
return error; |
} |
} |
|
|
static int |
static int |