[Yaffs] ENAMETOOLONG not handled correctly

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Rick Bronson
Date:  
To: yaffs
Subject: [Yaffs] ENAMETOOLONG not handled correctly
Hi,

I made this change and it seems to pass the Linux Test Project
tests:

chdir04
chroot03
creat06
mkdir03
nftw01
nftw6401
open08
rename10
statfs02

These tests involve making a file or directory that has too long
a name (ie. > 255).

Please tell me if you think my change is in error.

Thanks,

Rick Bronson

--- yaffs2/yaffs_fs.c.~1.50.~    2006-06-29 10:39:09.000000000 -0700
+++ yaffs2/yaffs_fs.c    2006-08-14 12:26:37.000000000 -0700
@@ -316,6 +316,9 @@


     yaffs_Device *dev = yaffs_InodeToObject(dir)->myDev;


+    if (dentry->d_name.len > YAFFS_MAX_NAME_LENGTH)  /* check for max name length */
+        return ERR_PTR(-ENAMETOOLONG);
+
     yaffs_GrossLock(dev);


     T(YAFFS_TRACE_OS,