npf_component.c revision 1.1.10.3 1 1.1.10.2 tls /* $NetBSD: npf_component.c,v 1.1.10.3 2017/12/03 11:39:19 jdolecek Exp $ */
2 1.1.10.2 tls
3 1.1.10.2 tls /*
4 1.1.10.2 tls * Public Domain.
5 1.1.10.2 tls */
6 1.1.10.2 tls
7 1.1.10.2 tls #include <sys/cdefs.h>
8 1.1.10.2 tls __KERNEL_RCSID(0, "$NetBSD: npf_component.c,v 1.1.10.3 2017/12/03 11:39:19 jdolecek Exp $");
9 1.1.10.2 tls
10 1.1.10.2 tls #include <sys/param.h>
11 1.1.10.2 tls #include <sys/conf.h>
12 1.1.10.2 tls #include <sys/device.h>
13 1.1.10.2 tls #include <sys/stat.h>
14 1.1.10.2 tls
15 1.1.10.3 jdolecek #include <rump-sys/kern.h>
16 1.1.10.3 jdolecek #include <rump-sys/vfs.h>
17 1.1.10.2 tls
18 1.1.10.2 tls extern const struct cdevsw npf_cdevsw;
19 1.1.10.2 tls
20 1.1.10.2 tls RUMP_COMPONENT(RUMP_COMPONENT_NET)
21 1.1.10.2 tls {
22 1.1.10.2 tls devmajor_t bmajor = NODEVMAJOR, cmajor = NODEVMAJOR;
23 1.1.10.2 tls int error;
24 1.1.10.2 tls
25 1.1.10.2 tls error = devsw_attach("npf", NULL, &bmajor, &npf_cdevsw, &cmajor);
26 1.1.10.2 tls if (error) {
27 1.1.10.2 tls panic("npf attach failed: %d", error);
28 1.1.10.2 tls }
29 1.1.10.2 tls
30 1.1.10.2 tls error = rump_vfs_makeonedevnode(S_IFCHR, "/dev/npf", cmajor, 0);
31 1.1.10.2 tls if (error) {
32 1.1.10.2 tls panic("npf device node creation failed: %d", error);
33 1.1.10.2 tls }
34 1.1.10.2 tls devsw_detach(NULL, &npf_cdevsw);
35 1.1.10.2 tls }
36