Module Name: src Committed By: pooka Date: Fri Aug 6 15:04:13 UTC 2010
Modified Files: src/usr.sbin/puffs/mount_sysctlfs: Makefile sysctlfs.c Log Message: If compiled with RUMP_ACTION, access rump kernel instead of host kernel. This is an easy way to browse & modify the sysctl tree offered by a rump kernel instance. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/usr.sbin/puffs/mount_sysctlfs/Makefile cvs rdiff -u -r1.14 -r1.15 src/usr.sbin/puffs/mount_sysctlfs/sysctlfs.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/usr.sbin/puffs/mount_sysctlfs/Makefile diff -u src/usr.sbin/puffs/mount_sysctlfs/Makefile:1.3 src/usr.sbin/puffs/mount_sysctlfs/Makefile:1.4 --- src/usr.sbin/puffs/mount_sysctlfs/Makefile:1.3 Wed Apr 22 15:23:07 2009 +++ src/usr.sbin/puffs/mount_sysctlfs/Makefile Fri Aug 6 15:04:13 2010 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.3 2009/04/22 15:23:07 lukem Exp $ +# $NetBSD: Makefile,v 1.4 2010/08/06 15:04:13 pooka Exp $ PROG= mount_sysctlfs SRCS= sysctlfs.c @@ -8,4 +8,9 @@ MAN= mount_sysctlfs.8 +.ifdef RUMP_ACTION +CPPFLAGS+= -DRUMP_ACTION +LDADD+= -lrump -lrumpuser -lpthread +.endif + .include <bsd.prog.mk> Index: src/usr.sbin/puffs/mount_sysctlfs/sysctlfs.c diff -u src/usr.sbin/puffs/mount_sysctlfs/sysctlfs.c:1.14 src/usr.sbin/puffs/mount_sysctlfs/sysctlfs.c:1.15 --- src/usr.sbin/puffs/mount_sysctlfs/sysctlfs.c:1.14 Sun Apr 11 15:08:17 2010 +++ src/usr.sbin/puffs/mount_sysctlfs/sysctlfs.c Fri Aug 6 15:04:13 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: sysctlfs.c,v 1.14 2010/04/11 15:08:17 pooka Exp $ */ +/* $NetBSD: sysctlfs.c,v 1.15 2010/08/06 15:04:13 pooka Exp $ */ /*- * Copyright (c) 2006, 2007 Antti Kantee. All Rights Reserved. @@ -33,7 +33,7 @@ #include <sys/cdefs.h> #ifndef lint -__RCSID("$NetBSD: sysctlfs.c,v 1.14 2010/04/11 15:08:17 pooka Exp $"); +__RCSID("$NetBSD: sysctlfs.c,v 1.15 2010/08/06 15:04:13 pooka Exp $"); #endif /* !lint */ #include <sys/types.h> @@ -50,6 +50,13 @@ #include <unistd.h> #include <util.h> +#ifdef RUMP_ACTION +#include <rump/rump.h> +#include <rump/rump_syscalls.h> + +#define sysctl(a,b,c,d,e,f) rump_sys___sysctl(a,b,c,d,e,f) +#endif + PUFFSOP_PROTOS(sysctlfs) struct sfsnode { @@ -292,6 +299,14 @@ if (puffs_daemon(pu, 1, 1) == -1) err(1, "puffs_daemon"); +#ifdef RUMP_ACTION + { + extern int puffs_fakecc; + puffs_fakecc = 1; + rump_init(); + } +#endif + if (puffs_mount(pu, argv[1], mntflags, puffs_getroot(pu)) == -1) err(1, "puffs_mount"); if (puffs_mainloop(pu) == -1)