| 371 | } |
| 372 | |
| 373 | static int |
| 374 | kern___acl_get_path(struct thread *td, const char *path, acl_type_t type, |
| 375 | struct acl *aclp, int follow) |
| 376 | { |
| 377 | struct nameidata nd; |
| 378 | int error; |
| 379 | |
| 380 | NDINIT(&nd, LOOKUP, follow | AUDITVNODE1, UIO_USERSPACE, path, td); |
| 381 | error = namei(&nd); |
| 382 | if (error == 0) { |
| 383 | error = vacl_get_acl(td, nd.ni_vp, type, aclp); |
| 384 | NDFREE(&nd, 0); |
| 385 | } |
| 386 | return (error); |
| 387 | } |
| 388 | |
| 389 | /* |
| 390 | * Given a file path, set an ACL for it. |
no test coverage detected