diff options
| author | Konstantin Belousov <kib@FreeBSD.org> | 2014-12-21 13:32:07 +0000 |
|---|---|---|
| committer | Konstantin Belousov <kib@FreeBSD.org> | 2014-12-21 13:32:07 +0000 |
| commit | 8ee9765a9d9471d4c0eca6af889e824ee918f5f1 (patch) | |
| tree | c60c5b03b317985de9570db2dadc4037a11fd4f5 /sys/kern | |
| parent | 789bdfdbc6343343efa7ad1e4c643c8ff405dd3b (diff) | |
Notes
Diffstat (limited to 'sys/kern')
| -rw-r--r-- | sys/kern/kern_sig.c | 3 | ||||
| -rw-r--r-- | sys/kern/vfs_vnops.c | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index b34eb6281c80..a4f0f889005c 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -3167,7 +3167,8 @@ corefile_open(const char *comm, uid_t uid, pid_t pid, struct thread *td, sbuf_delete(&sb); cmode = S_IRUSR | S_IWUSR; - oflags = VN_OPEN_NOAUDIT | (capmode_coredump ? VN_OPEN_NOCAPCHECK : 0); + oflags = VN_OPEN_NOAUDIT | VN_OPEN_NAMECACHE | + (capmode_coredump ? VN_OPEN_NOCAPCHECK : 0); /* * If the core format has a %I in it, then we need to check diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index 40a69bbf27e0..ed4ad4d18f13 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -217,6 +217,8 @@ restart: return (error); goto restart; } + if ((vn_open_flags & VN_OPEN_NAMECACHE) != 0) + ndp->ni_cnd.cn_flags |= MAKEENTRY; #ifdef MAC error = mac_vnode_check_create(cred, ndp->ni_dvp, &ndp->ni_cnd, vap); |
