[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <11887860583576-git-send-email-jsipek@cs.sunysb.edu>
Date: Sun, 2 Sep 2007 22:20:46 -0400
From: "Josef 'Jeff' Sipek" <jsipek@...sunysb.edu>
To: akpm@...ux-foundation.org
Cc: linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
hch@...radead.org, viro@....linux.org.uk,
bharata@...ux.vnet.ibm.com, j.blunck@...harburg.de,
Erez Zadok <ezk@...sunysb.edu>,
"Josef 'Jeff' Sipek" <jsipek@...sunysb.edu>
Subject: [PATCH 23/32] Unionfs: mount-time option parsing fix
From: Erez Zadok <ezk@...sunysb.edu>
Signed-off-by: Erez Zadok <ezk@...sunysb.edu>
Signed-off-by: Josef 'Jeff' Sipek <jsipek@...sunysb.edu>
---
fs/unionfs/main.c | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/fs/unionfs/main.c b/fs/unionfs/main.c
index bc5c105..ce08d96 100644
--- a/fs/unionfs/main.c
+++ b/fs/unionfs/main.c
@@ -337,8 +337,12 @@ static int parse_dirs_option(struct super_block *sb, struct unionfs_dentry_info
int perms;
char *mode = strchr(name, '=');
- if (!name || !*name)
+ if (!name)
continue;
+ if (!*name) { /* bad use of ':' (extra colons) */
+ err = -EINVAL;
+ goto out;
+ }
branches++;
@@ -404,10 +408,9 @@ static int parse_dirs_option(struct super_block *sb, struct unionfs_dentry_info
* branch-overlapping test.
*/
for (i = 0; i < branches; i++) {
+ dent1 = lower_root_info->lower_paths[i].dentry;
for (j = i + 1; j < branches; j++) {
- dent1 = lower_root_info->lower_paths[i].dentry;
dent2 = lower_root_info->lower_paths[j].dentry;
-
if (is_branch_overlap(dent1, dent2)) {
printk(KERN_WARNING "unionfs: branches %d and "
"%d overlap\n", i, j);
--
1.5.2.2.238.g7cbf2f2
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists