Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/sys/miscfs/procfs/procfs_subr.c,v rcsdiff: /ftp/cvs/cvsroot/src/sys/miscfs/procfs/procfs_subr.c,v: warning: Unknown phrases like `commitid ...;' are present. retrieving revision 1.70 retrieving revision 1.71 diff -u -p -r1.70 -r1.71 --- src/sys/miscfs/procfs/procfs_subr.c 2006/10/25 18:59:52 1.70 +++ src/sys/miscfs/procfs/procfs_subr.c 2006/10/29 22:35:35 1.71 @@ -1,4 +1,4 @@ -/* $NetBSD: procfs_subr.c,v 1.70 2006/10/25 18:59:52 christos Exp $ */ +/* $NetBSD: procfs_subr.c,v 1.71 2006/10/29 22:35:35 christos Exp $ */ /* * Copyright (c) 1993 @@ -73,7 +73,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: procfs_subr.c,v 1.70 2006/10/25 18:59:52 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: procfs_subr.c,v 1.71 2006/10/29 22:35:35 christos Exp $"); #include #include @@ -246,6 +246,7 @@ procfs_allocvp(mp, vpp, pid, pfs_type, f case PFSstatus: /* /proc/N/status = -r--r--r-- */ case PFSstat: /* /proc/N/stat = -r--r--r-- */ case PFScmdline: /* /proc/N/cmdline = -r--r--r-- */ + case PFSemul: /* /proc/N/emul = -r--r--r-- */ case PFSmeminfo: /* /proc/meminfo = -r--r--r-- */ case PFSdevices: /* /proc/devices = -r--r--r-- */ case PFScpuinfo: /* /proc/cpuinfo = -r--r--r-- */ @@ -375,6 +376,9 @@ procfs_rw(v) case PFSmounts: return (procfs_domounts(curl, p, pfs, uio)); + case PFSemul: + return procfs_doemul(curl, p, pfs, uio); + #ifdef __HAVE_PROCFS_MACHDEP PROCFS_MACHDEP_NODETYPE_CASES return (procfs_machdep_rw(curl, l, pfs, uio)); @@ -595,3 +599,11 @@ procfs_getfp(pfs, pown, fp) *pown = p; return 0; } + +int +procfs_doemul(struct lwp *curl __unused, struct proc *p, + struct pfsnode *pfs __unused, struct uio *uio) +{ + const char *ename = p->p_emul->e_name; + return uiomove_frombuf(__UNCONST(ename), strlen(ename), uio); +}