Changeset View
Changeset View
Standalone View
Standalone View
head/sys/fs/procfs/procfs.c
Show First 20 Lines • Show All 98 Lines • ▼ Show 20 Lines | |||||
/* | /* | ||||
* Adjust mode for some nodes that need it | * Adjust mode for some nodes that need it | ||||
*/ | */ | ||||
int | int | ||||
procfs_attr(PFS_ATTR_ARGS) | procfs_attr(PFS_ATTR_ARGS) | ||||
{ | { | ||||
/* XXX inefficient, split into separate functions */ | /* XXX inefficient, split into separate functions */ | ||||
if (strcmp(pn->pn_name, "ctl") == 0 || | if (strcmp(pn->pn_name, "note") == 0 || | ||||
strcmp(pn->pn_name, "note") == 0 || | |||||
strcmp(pn->pn_name, "notepg") == 0) | strcmp(pn->pn_name, "notepg") == 0) | ||||
vap->va_mode = 0200; | vap->va_mode = 0200; | ||||
else if (strcmp(pn->pn_name, "mem") == 0 || | else if (strcmp(pn->pn_name, "mem") == 0 || | ||||
strcmp(pn->pn_name, "regs") == 0 || | strcmp(pn->pn_name, "regs") == 0 || | ||||
strcmp(pn->pn_name, "dbregs") == 0 || | strcmp(pn->pn_name, "dbregs") == 0 || | ||||
strcmp(pn->pn_name, "fpregs") == 0 || | strcmp(pn->pn_name, "fpregs") == 0 || | ||||
strcmp(pn->pn_name, "osrel") == 0) | strcmp(pn->pn_name, "osrel") == 0) | ||||
vap->va_mode = 0600; | vap->va_mode = 0600; | ||||
▲ Show 20 Lines • Show All 44 Lines • ▼ Show 20 Lines | procfs_init(PFS_INIT_ARGS) | ||||
pfs_create_link(root, "curproc", procfs_docurproc, | pfs_create_link(root, "curproc", procfs_docurproc, | ||||
NULL, NULL, NULL, 0); | NULL, NULL, NULL, 0); | ||||
dir = pfs_create_dir(root, "pid", | dir = pfs_create_dir(root, "pid", | ||||
procfs_attr, NULL, NULL, PFS_PROCDEP); | procfs_attr, NULL, NULL, PFS_PROCDEP); | ||||
pfs_create_file(dir, "cmdline", procfs_doproccmdline, | pfs_create_file(dir, "cmdline", procfs_doproccmdline, | ||||
NULL, NULL, NULL, PFS_RD); | NULL, NULL, NULL, PFS_RD); | ||||
pfs_create_file(dir, "ctl", procfs_doprocctl, | |||||
procfs_attr, NULL, NULL, PFS_WR); | |||||
pfs_create_file(dir, "dbregs", procfs_doprocdbregs, | pfs_create_file(dir, "dbregs", procfs_doprocdbregs, | ||||
procfs_attr, procfs_candebug, NULL, PFS_RDWR|PFS_RAW); | procfs_attr, procfs_candebug, NULL, PFS_RDWR|PFS_RAW); | ||||
pfs_create_file(dir, "etype", procfs_doproctype, | pfs_create_file(dir, "etype", procfs_doproctype, | ||||
NULL, NULL, NULL, PFS_RD); | NULL, NULL, NULL, PFS_RD); | ||||
pfs_create_file(dir, "fpregs", procfs_doprocfpregs, | pfs_create_file(dir, "fpregs", procfs_doprocfpregs, | ||||
procfs_attr, procfs_candebug, NULL, PFS_RDWR|PFS_RAW); | procfs_attr, procfs_candebug, NULL, PFS_RDWR|PFS_RAW); | ||||
pfs_create_file(dir, "map", procfs_doprocmap, | pfs_create_file(dir, "map", procfs_doprocmap, | ||||
NULL, procfs_notsystem, NULL, PFS_RD); | NULL, procfs_notsystem, NULL, PFS_RD); | ||||
Show All 34 Lines |