yaffs Yet more tests for quick tests.
[yaffs2.git] / direct / timothy_tests / quick_tests / current_bugs.txt
index 9243fd28eef15b1720d07491d8b5a8e0f2f18a97..f2a81c9a4dd23258a2a9098d9add7b68eaafb143 100644 (file)
@@ -2,13 +2,64 @@
 Made by Timothy Manning <timothy@yaffs.net> on 08/11/2010
 
 
-Current BUGS AND WARNINGS
-       bug with opening a file with a name of 1,000,000 char long with no errors.
-       bug with unlinking a file with 1,000,000 get the error ENOENT but should be geting ENAMETOOLONG. 
-       bug with mounting a too long non-existant mount point is returning ENODEV. there are two errors here, ENOENT and ENAMETOOLONG.
-       bug with mounting a non-existing mount point get the error ENODEV. should be getting ENOENT.
+Current BUGS 
 
-       bug when trying to use yaffs_access on an existing file with mode 255 the error returned is EACCES it should be EINVAL(note there is no quick test file yet).
+       NAME SIZE
+               Bug with opening a file with a name of 1,000,000 char long with no errors.
+               The open function should be returning ENAMETOOLONG.
 
-       WARNING- If yaffs is unmounted then most functions return ENODIR.
+               Bug with unlinking a file with 1,000,000 get the error ENOENT but should
+               be geting ENAMETOOLONG. 
 
+               Bug with mounting a too long non-existant mount point is returning 
+               ENODEV. yaffs_mount should be returning ENAMETOOLONG.
+               When the name is passed into the yaffs_mount function the length of the
+               mount point decreases from around 10000000 to 200. This needs to be investigated.
+               
+               Bug with unmounting a too long non-existing mountpoint. 
+               The error returned is ENODEV. It should be ENAMETOOLONG.
+
+
+       ENOTDIR ERRORS
+               Bug when trying to access a non-existing directory the error ENOENT is 
+               returned. It should be ENOTDIR.
+
+               Bug when trying to truncate a file in a non-existing directory. The error
+               returned is ENOENT it should be ENOTDIR.
+
+       Bug with truncating to a very large size. The yaffs_truncate function truncates the file to a massive size without any errors.
+       The function should return the error EINVAL. 
+
+       Bug with lseeking to a very large size (size =100000000000000000000000000000000000000) without causing an error.
+       Should cause the error EINVAL.
+
+       Bug with unmounting a non-existing mountpoint. The function returns ENODEV 
+       but should be returning EINVAL.
+       
+       Bug with reading -1 bytes of a file without an error (test is in test_yaffs_read_EINVAL).
+       It should return EINVAL.
+
+       Unmount2 forcing the unmount needs to break the handles so they return EBADF.
+
+
+Current WARNINGS
+       
+       WARNING- If yaffs is unmounted then most of yaffs' functions return ENODIR. 
+       But some function return EBADF instead.
+       Functions which return ENOTDIR: open, close, access, unlink, lseek, write, read
+
+       Functions which return ENOENT: access, stat
+       
+
+
+       WARNING-the function yaffs_open does not check the mode passed to it. 
+       This means that yaffs open does not return EINVAL if a bad mode is passed to it.
+       However this causes the error EEXIST to happen instead, because both O_CREAT and O_EXCL  flags are set.
+
+       WARNING- yaffs_open will work with either of the two mode set to 255.
+       However there are only 4 or 5 flags that can be set for each of the modes.
+       This means that the programmer may not be setting the flags properly.  
+
+       WARNING- When mounting a non-existing mount point the error ENODEV is returned.
+       The quick tests have been altered to accommodate this error code.    
+       With standard access function in linux the error returned is ENOENT.