diff options
author | mjg <mjg@FreeBSD.org> | 2014-03-31 02:24:29 +0000 |
---|---|---|
committer | mjg <mjg@FreeBSD.org> | 2014-03-31 02:24:29 +0000 |
commit | 08656a370cdb89af7bdb3c347865f596f13c90ae (patch) | |
tree | 67f9597fe12d2d3df6b5930220d3034d83bbe521 /sys/security/audit | |
parent | ae2823466fe35f50ff85af2bd94e6c0084781b88 (diff) | |
download | FreeBSD-src-08656a370cdb89af7bdb3c347865f596f13c90ae.zip FreeBSD-src-08656a370cdb89af7bdb3c347865f596f13c90ae.tar.gz |
MFC r263458:
audit: plug FILEDESC_LOCK leak in audit_canon_path.
Diffstat (limited to 'sys/security/audit')
-rw-r--r-- | sys/security/audit/audit_bsm_klib.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/security/audit/audit_bsm_klib.c b/sys/security/audit/audit_bsm_klib.c index 91f7aaa..2f5a92e 100644 --- a/sys/security/audit/audit_bsm_klib.c +++ b/sys/security/audit/audit_bsm_klib.c @@ -497,6 +497,7 @@ audit_canon_path(struct thread *td, int dirfd, char *path, char *cpath) /* XXX: fgetvp() that vhold()s vnode instead of vref()ing it would be better */ error = fgetvp(td, dirfd, NULL, &cvnp); if (error) { + FILEDESC_SUNLOCK(fdp); cpath[0] = '\0'; if (rvnp != NULL) vdrop(rvnp); |