aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/kern_acct.c
diff options
context:
space:
mode:
authorRobert Watson <rwatson@FreeBSD.org>2005-03-01 08:56:13 +0000
committerRobert Watson <rwatson@FreeBSD.org>2005-03-01 08:56:13 +0000
commit081322613b3ddb8f27dd3d16ade6cc4befc40e7c (patch)
tree566fba8372b75ed3839595497402bf156e30da18 /sys/kern/kern_acct.c
parent21a69c81c0725d2373955be5c18e48cfa515ffd3 (diff)
downloadsrc-081322613b3ddb8f27dd3d16ade6cc4befc40e7c.tar.gz
src-081322613b3ddb8f27dd3d16ade6cc4befc40e7c.zip
When mac_check_system_acct() fails, make sure to unlock as well as close
the vnode. Pointed out by: jeff
Notes
Notes: svn path=/head/; revision=142889
Diffstat (limited to 'sys/kern/kern_acct.c')
-rw-r--r--sys/kern/kern_acct.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/kern/kern_acct.c b/sys/kern/kern_acct.c
index 8574d21ae735..d0f2845fe666 100644
--- a/sys/kern/kern_acct.c
+++ b/sys/kern/kern_acct.c
@@ -152,6 +152,7 @@ acct(td, uap)
#ifdef MAC
error = mac_check_system_acct(td->td_ucred, nd.ni_vp);
if (error) {
+ VOP_UNLOCK(nd.ni_vp, 0, td);
vn_close(nd.ni_vp, flags, td->td_ucred, td);
goto done2;
}