| 3504 | } |
| 3505 | |
| 3506 | static int |
| 3507 | biba_vnode_create_extattr(struct ucred *cred, struct mount *mp, |
| 3508 | struct label *mplabel, struct vnode *dvp, struct label *dvplabel, |
| 3509 | struct vnode *vp, struct label *vplabel, struct componentname *cnp) |
| 3510 | { |
| 3511 | struct mac_biba *source, *dest, mb_temp; |
| 3512 | size_t buflen; |
| 3513 | int error; |
| 3514 | |
| 3515 | buflen = sizeof(mb_temp); |
| 3516 | bzero(&mb_temp, buflen); |
| 3517 | |
| 3518 | source = SLOT(cred->cr_label); |
| 3519 | dest = SLOT(vplabel); |
| 3520 | biba_copy_effective(source, &mb_temp); |
| 3521 | |
| 3522 | error = vn_extattr_set(vp, IO_NODELOCKED, MAC_BIBA_EXTATTR_NAMESPACE, |
| 3523 | MAC_BIBA_EXTATTR_NAME, buflen, (char *) &mb_temp, curthread); |
| 3524 | if (error == 0) |
| 3525 | biba_copy_effective(source, dest); |
| 3526 | return (error); |
| 3527 | } |
| 3528 | |
| 3529 | static void |
| 3530 | biba_vnode_relabel(struct ucred *cred, struct vnode *vp, |
nothing calls this directly
no test coverage detected