summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_init.c
diff options
context:
space:
mode:
authorvisa <visa@openbsd.org>2018-09-16 11:41:44 +0000
committervisa <visa@openbsd.org>2018-09-16 11:41:44 +0000
commit6d4b78c662d82b8af03c81f64c38fdba924e23b6 (patch)
treea6ab112e60edd5a23216efb23b8c919082ab4fe1 /sys/kern/vfs_init.c
parentWith prefixlen 128, mask_prefix() in rad(8) caused a stack overflow (diff)
downloadwireguard-openbsd-6d4b78c662d82b8af03c81f64c38fdba924e23b6.tar.xz
wireguard-openbsd-6d4b78c662d82b8af03c81f64c38fdba924e23b6.zip
Move vfsconf lookup code into dedicated functions.
OK bluhm@
Diffstat (limited to 'sys/kern/vfs_init.c')
-rw-r--r--sys/kern/vfs_init.c27
1 files changed, 26 insertions, 1 deletions
diff --git a/sys/kern/vfs_init.c b/sys/kern/vfs_init.c
index ae66c783aad..2448e1f6ad2 100644
--- a/sys/kern/vfs_init.c
+++ b/sys/kern/vfs_init.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: vfs_init.c,v 1.39 2017/12/11 05:27:40 deraadt Exp $ */
+/* $OpenBSD: vfs_init.c,v 1.40 2018/09/16 11:41:44 visa Exp $ */
/* $NetBSD: vfs_init.c,v 1.6 1996/02/09 19:00:58 christos Exp $ */
/*
@@ -38,6 +38,7 @@
*/
#include <sys/param.h>
+#include <sys/systm.h>
#include <sys/mount.h>
#include <sys/namei.h>
#include <sys/vnode.h>
@@ -179,3 +180,27 @@ vfsinit(void)
for (i = 0; i < vfsconflistlen; i++)
vfs_register(&vfsconflist[i]);
}
+
+struct vfsconf *
+vfs_byname(const char *name)
+{
+ struct vfsconf *vfsp;
+
+ for (vfsp = vfsconf; vfsp != NULL; vfsp = vfsp->vfc_next) {
+ if (strcmp(vfsp->vfc_name, name) == 0)
+ break;
+ }
+ return vfsp;
+}
+
+struct vfsconf *
+vfs_bytypenum(int typenum)
+{
+ struct vfsconf *vfsp;
+
+ for (vfsp = vfsconf; vfsp != NULL; vfsp = vfsp->vfc_next) {
+ if (vfsp->vfc_typenum == typenum)
+ break;
+ }
+ return vfsp;
+}