yaffs More quick tests and have also fixed a bugin yaffs_mount function.
[yaffs2.git] / direct / timothy_tests / quick_tests / current_bugs.txt
1
2 Made by Timothy Manning <timothy@yaffs.net> on 08/11/2010
3
4
5 Current BUGS 
6
7         NAME SIZE
8                 Bug with opening a file with a name of 1,000,000 char long with no errors.
9                 The open function should be returning ENAMETOOLONG.
10
11                 Bug with unlinking a file with 1,000,000 get the error ENOENT but should
12                 be geting ENAMETOOLONG. 
13
14                 Bug with mounting a too long non-existant mount point is returning 
15                 ENODEV. yaffs_mount should be returning ENAMETOOLONG.
16                 When the name is passed into the yaffs_mount function the length of the
17                 mount point decreases from around 10000000 to 200. This needs to be investigated.
18
19
20         ENOTDIR ERRORS
21                 Bug when trying to access a non-existing directory the error ENOENT is 
22                 returned. It should be ENOTDIR.
23
24                 Bug when trying to truncate a file in a non-existing directory. The error
25                 returned is ENOENT it should be ENOTDIR.
26
27         Bug with truncating to a very large size. The yaffs_truncate function truncates the file to a massive size without any errors.
28         The function should return the error EINVAL. 
29
30         Bug with lseeking to a very large size (size =100000000000000000000000000000000000000) without causing an error.
31         Should cause the error EINVAL.
32
33
34 Current WARNINGS
35         
36         <<WHAT FUNCTIONS>>
37         WARNING- If yaffs is unmounted then most of yaffs' functions return ENODIR. 
38         some function return EBADF instead.
39
40         WARNING-the function yaffs_open does not check the mode passed to it. 
41         This means that yaffs open does not return EINVAL if a bad mode is passed to it.
42         However this causes the error EEXIST to happen instead, because both O_CREAT and O_EXCL  flags are set.
43
44         WARNING- yaffs_open will work with either of the two mode set to 255.
45         However there are only 4 or 5 flags that can be set for each of the modes.
46         This means that the programmer may not be setting the flags properly.  
47
48         WARNING- When mounting a non-existing mount point the error ENODEV is returned.
49         The quick tests have been altered to accommodate this error code.    
50         With standard access function in linux the error returned is ENOENT.