summaryrefslogtreecommitdiff
path: root/sys/miscfs
diff options
context:
space:
mode:
authormartin <martin@NetBSD.org>2021-07-06 03:45:11 +0000
committermartin <martin@NetBSD.org>2021-07-06 03:45:11 +0000
commit0c8f43bb165ef8f6e55b6fea26be3e64b5f0776c (patch)
tree0e5c9bd7290694642005bce1511c85c07ba1726a /sys/miscfs
parent7cd35dfef7c92139b039b00953b93f15079de026 (diff)
Pull up following revision(s) (requested by dholland in ticket #1318):
sys/miscfs/kernfs/kernfs_vnops.c: revision 1.169 sys/miscfs/kernfs/kernfs_vnops.c: revision 1.170 Add missing VOP_KQFILTER to kernfs. Not sure if lack of it can be used for local DoS or not, but best to fix. - Fix perms on /kern/{r,}rootdev.
Diffstat (limited to 'sys/miscfs')
-rw-r--r--sys/miscfs/kernfs/kernfs_vnops.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/miscfs/kernfs/kernfs_vnops.c b/sys/miscfs/kernfs/kernfs_vnops.c
index d48d9220b48..dcdc3424aee 100644
--- a/sys/miscfs/kernfs/kernfs_vnops.c
+++ b/sys/miscfs/kernfs/kernfs_vnops.c
@@ -1,4 +1,4 @@
-/* $NetBSD: kernfs_vnops.c,v 1.160.4.2 2020/02/12 19:59:22 martin Exp $ */
+/* $NetBSD: kernfs_vnops.c,v 1.160.4.3 2021/07/06 03:45:11 martin Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: kernfs_vnops.c,v 1.160.4.2 2020/02/12 19:59:22 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: kernfs_vnops.c,v 1.160.4.3 2021/07/06 03:45:11 martin Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -91,8 +91,8 @@ const struct kern_target kern_targets[] = {
#if 0
{ DT_DIR, N("root"), 0, KFSnull, VDIR, DIR_MODE },
#endif
- { DT_BLK, N("rootdev"), &rootdev, KFSdevice, VBLK, READ_MODE },
- { DT_CHR, N("rrootdev"), &rrootdev, KFSdevice, VCHR, READ_MODE },
+ { DT_BLK, N("rootdev"), &rootdev, KFSdevice, VBLK, UREAD_MODE },
+ { DT_CHR, N("rrootdev"), &rrootdev, KFSdevice, VCHR, UREAD_MODE },
{ DT_REG, N("time"), 0, KFStime, VREG, READ_MODE },
/* XXXUNCONST */
{ DT_REG, N("version"), __UNCONST(version),
@@ -197,6 +197,7 @@ const struct vnodeopv_entry_desc kernfs_vnodeop_entries[] = {
{ &vop_fcntl_desc, kernfs_fcntl }, /* fcntl */
{ &vop_ioctl_desc, kernfs_ioctl }, /* ioctl */
{ &vop_poll_desc, kernfs_poll }, /* poll */
+ { &vop_kqfilter_desc, genfs_kqfilter }, /* kqfilter */
{ &vop_revoke_desc, kernfs_revoke }, /* revoke */
{ &vop_fsync_desc, kernfs_fsync }, /* fsync */
{ &vop_seek_desc, kernfs_seek }, /* seek */
@@ -245,6 +246,7 @@ const struct vnodeopv_entry_desc kernfs_specop_entries[] = {
{ &vop_fcntl_desc, spec_fcntl }, /* fcntl */
{ &vop_ioctl_desc, spec_ioctl }, /* ioctl */
{ &vop_poll_desc, spec_poll }, /* poll */
+ { &vop_kqfilter_desc, genfs_kqfilter }, /* kqfilter */
{ &vop_revoke_desc, spec_revoke }, /* revoke */
{ &vop_fsync_desc, spec_fsync }, /* fsync */
{ &vop_seek_desc, spec_seek }, /* seek */