From 62f0b196889b10cd75a62acdf1d773ed29fced1c Mon Sep 17 00:00:00 2001 From: Olaf Kirch Date: Mon, 15 May 2006 09:43:57 -0700 Subject: [PATCH] --- yaml --- r: 26700 b: refs/heads/master c: 3b7c8108273bed41a2fc04533cc9f2026ff38c8e h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/smbfs/dir.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index aa6ae46a4652..70e8aea3173b 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a7b862f663d81858531dfccc0537bc9d8a2a4121 +refs/heads/master: 3b7c8108273bed41a2fc04533cc9f2026ff38c8e diff --git a/trunk/fs/smbfs/dir.c b/trunk/fs/smbfs/dir.c index 34c7a11d91f0..70d9c5a37f5a 100644 --- a/trunk/fs/smbfs/dir.c +++ b/trunk/fs/smbfs/dir.c @@ -434,6 +434,11 @@ smb_lookup(struct inode *dir, struct dentry *dentry, struct nameidata *nd) if (dentry->d_name.len > SMB_MAXNAMELEN) goto out; + /* Do not allow lookup of names with backslashes in */ + error = -EINVAL; + if (memchr(dentry->d_name.name, '\\', dentry->d_name.len)) + goto out; + lock_kernel(); error = smb_proc_getattr(dentry, &finfo); #ifdef SMBFS_PARANOIA