+struct {
+ int m_flag;
+ const char *m_name;
+} mnt_flags[] = {
+ { MNT_RDONLY, "rdonly" },
+ { MNT_SYNCHRONOUS, "sync" },
+ { MNT_NOEXEC, "noexec" },
+ { MNT_NOSUID, "nosuid" },
+ { MNT_NODEV, "nodev" },
+ { MNT_UNION, "union" },
+ { MNT_ASYNC, "async" },
+ { MNT_EXRDONLY, "exrdonly" },
+ { MNT_EXPORTED, "exported" },
+ { MNT_DEFEXPORTED, "defexported" },
+ { MNT_EXPORTANON, "exportanon" },
+ { MNT_EXKERB, "exkerb" },
+ { MNT_LOCAL, "local" },
+ { MNT_QUOTA, "quota" },
+ { MNT_ROOTFS, "rootfs" },
+ { MNT_UPDATE, "update" },
+ { MNT_DELEXPORT },
+ { MNT_UPDATE, "update" },
+ { MNT_DELEXPORT, "delexport" },
+ { MNT_RELOAD, "reload" },
+ { MNT_FORCE, "force" },
+ { MNT_MLOCK, "mlock" },
+ { MNT_WAIT, "wait" },
+ { MNT_MPBUSY, "mpbusy" },
+ { MNT_MPWANT, "mpwant" },
+ { MNT_UNMOUNT, "unmount" },
+ { MNT_WANTRDWR, "wantrdwr" },
+ { 0 }
+};
+
+
+#define SVAR(var) __STRING(var) /* to force expansion */
+#define KGET(idx, var) \
+ KGET1(idx, &var, sizeof(var), SVAR(var))
+#define KGET1(idx, p, s, msg) \
+ KGET2(nl[idx].n_value, p, s, msg)
+#define KGET2(addr, p, s, msg) \
+ if (kvm_read(kd, (u_long)(addr), p, s) != s) \
+ warnx("cannot read %s: %s", msg, kvm_geterr(kd))
+#define KGETRET(addr, p, s, msg) \
+ if (kvm_read(kd, (u_long)(addr), p, s) != s) { \
+ warnx("cannot read %s: %s", msg, kvm_geterr(kd)); \
+ return (0); \
+ }
+
+void filemode __P((void));
+int getfiles __P((char **, int *));
+struct mount *
+ getmnt __P((struct mount *));
+struct e_vnode *
+ kinfo_vnodes __P((int *));
+struct e_vnode *
+ loadvnodes __P((int *));
+void mount_print __P((struct mount *));
+void nfs_header __P((void));
+int nfs_print __P((struct vnode *));
+void swapmode __P((void));
+void ttymode __P((void));
+void ttyprt __P((struct tty *, int));
+void ttytype __P((struct tty *, char *, int, int));
+void ufs_header __P((void));
+int ufs_print __P((struct vnode *));
+void union_header __P((void));
+int union_print __P((struct vnode *));
+void usage __P((void));
+void vnode_header __P((void));
+void vnode_print __P((struct vnode *, struct vnode *));
+void vnodemode __P((void));
+
+int