Messages in this thread Patch in this message | | | Subject | [PATCH] prohibit slash in proc directory entry names | From | Nathan Lynch <> | Date | Wed, 05 Jan 2005 13:22:41 -0600 |
| |
On Wed, 2005-01-05 at 02:01, Andrew Morton wrote: > Olaf Hering <olh@suse.de> wrote: > > > > A few users of request_irq pass a string with '/'. > > As a result, ls -l /proc/irq/*/* will fail to list these entries. > > hrm, interesting. So how do these entries appear in /proc? Do they > actually have slashes in them? > > I get the feeling that something somewhere should be detecting this and > should be propagating an error back.
proc_create() needs to check that the name of an entry to be created does not contain a '/' character.
To test, I hacked the ibmveth driver to try to call request_irq with a bogus "foo/bar" devname. The creation of the /proc/irq/1234/xxx entry silently fails, as intended. Perhaps the irq code should be made to check for the failure.
Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com>
Index: 2.6.10/fs/proc/generic.c =================================================================== --- 2.6.10.orig/fs/proc/generic.c 2004-12-24 21:35:40.000000000 +0000 +++ 2.6.10/fs/proc/generic.c 2005-01-05 18:44:56.000000000 +0000 @@ -551,6 +551,11 @@ if (!(*parent) && xlate_proc_name(name, parent, &fn) != 0) goto out; + + /* At this point there must not be any '/' characters beyond *fn */ + if (strchr(fn, '/')) + goto out; + len = strlen(fn); ent = kmalloc(sizeof(struct proc_dir_entry) + len + 1, GFP_KERNEL);
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |