mirror of
https://github.com/eledio-devices/thirdparty-littlefs.git
synced 2025-11-01 00:38:29 +01:00
WIP dropped lfs_fs_getattr for more implicit lfs_getattr("/")
This commit is contained in:
@@ -7,7 +7,7 @@ TYPES = {
|
||||
(0x1ff, 0x001): 'reg',
|
||||
(0x1ff, 0x002): 'dir',
|
||||
(0x1ff, 0x011): 'superblock',
|
||||
(0x1ff, 0x012): 'root',
|
||||
(0x1ff, 0x010): 'root',
|
||||
(0x1ff, 0x030): 'delete',
|
||||
(0x1f0, 0x080): 'globals',
|
||||
(0x1ff, 0x0c0): 'tail soft',
|
||||
@@ -50,9 +50,13 @@ def main(*blocks):
|
||||
crc = ncrc
|
||||
|
||||
versions.append((nrev, '%s (rev %d)' % (block, nrev)))
|
||||
except IOError:
|
||||
except (IOError, struct.error):
|
||||
pass
|
||||
|
||||
if not file:
|
||||
print 'Bad metadata pair {%s}' % ', '.join(blocks)
|
||||
return 1
|
||||
|
||||
print "--- %s ---" % ', '.join(v for _,v in sorted(versions, reverse=True))
|
||||
|
||||
# go through each tag, print useful information
|
||||
@@ -93,6 +97,8 @@ def main(*blocks):
|
||||
if type == 0x0f0:
|
||||
crc = 0
|
||||
|
||||
return 0
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
main(*sys.argv[1:])
|
||||
sys.exit(main(*sys.argv[1:]))
|
||||
|
||||
@@ -77,55 +77,55 @@ tests/test.py << TEST
|
||||
lfs_unmount(&lfs) => 0;
|
||||
TEST
|
||||
|
||||
echo "--- Set/get fs attribute ---"
|
||||
echo "--- Set/get root attribute ---"
|
||||
tests/test.py << TEST
|
||||
lfs_mount(&lfs, &cfg) => 0;
|
||||
lfs_fs_setattr(&lfs, 'A', "aaaa", 4) => 0;
|
||||
lfs_fs_setattr(&lfs, 'B', "bbbbbb", 6) => 0;
|
||||
lfs_fs_setattr(&lfs, 'C', "ccccc", 5) => 0;
|
||||
lfs_fs_getattr(&lfs, 'A', buffer, 4) => 4;
|
||||
lfs_fs_getattr(&lfs, 'B', buffer+4, 6) => 6;
|
||||
lfs_fs_getattr(&lfs, 'C', buffer+10, 5) => 5;
|
||||
lfs_setattr(&lfs, "/", 'A', "aaaa", 4) => 0;
|
||||
lfs_setattr(&lfs, "/", 'B', "bbbbbb", 6) => 0;
|
||||
lfs_setattr(&lfs, "/", 'C', "ccccc", 5) => 0;
|
||||
lfs_getattr(&lfs, "/", 'A', buffer, 4) => 4;
|
||||
lfs_getattr(&lfs, "/", 'B', buffer+4, 6) => 6;
|
||||
lfs_getattr(&lfs, "/", 'C', buffer+10, 5) => 5;
|
||||
memcmp(buffer, "aaaa", 4) => 0;
|
||||
memcmp(buffer+4, "bbbbbb", 6) => 0;
|
||||
memcmp(buffer+10, "ccccc", 5) => 0;
|
||||
|
||||
lfs_fs_setattr(&lfs, 'B', "", 0) => 0;
|
||||
lfs_fs_getattr(&lfs, 'A', buffer, 4) => 4;
|
||||
lfs_fs_getattr(&lfs, 'B', buffer+4, 6) => 0;
|
||||
lfs_fs_getattr(&lfs, 'C', buffer+10, 5) => 5;
|
||||
lfs_setattr(&lfs, "/", 'B', "", 0) => 0;
|
||||
lfs_getattr(&lfs, "/", 'A', buffer, 4) => 4;
|
||||
lfs_getattr(&lfs, "/", 'B', buffer+4, 6) => 0;
|
||||
lfs_getattr(&lfs, "/", 'C', buffer+10, 5) => 5;
|
||||
memcmp(buffer, "aaaa", 4) => 0;
|
||||
memcmp(buffer+4, "\0\0\0\0\0\0", 6) => 0;
|
||||
memcmp(buffer+10, "ccccc", 5) => 0;
|
||||
|
||||
lfs_fs_setattr(&lfs, 'B', "dddddd", 6) => 0;
|
||||
lfs_fs_getattr(&lfs, 'A', buffer, 4) => 4;
|
||||
lfs_fs_getattr(&lfs, 'B', buffer+4, 6) => 6;
|
||||
lfs_fs_getattr(&lfs, 'C', buffer+10, 5) => 5;
|
||||
lfs_setattr(&lfs, "/", 'B', "dddddd", 6) => 0;
|
||||
lfs_getattr(&lfs, "/", 'A', buffer, 4) => 4;
|
||||
lfs_getattr(&lfs, "/", 'B', buffer+4, 6) => 6;
|
||||
lfs_getattr(&lfs, "/", 'C', buffer+10, 5) => 5;
|
||||
memcmp(buffer, "aaaa", 4) => 0;
|
||||
memcmp(buffer+4, "dddddd", 6) => 0;
|
||||
memcmp(buffer+10, "ccccc", 5) => 0;
|
||||
|
||||
lfs_fs_setattr(&lfs, 'B', "eee", 3) => 0;
|
||||
lfs_fs_getattr(&lfs, 'A', buffer, 4) => 4;
|
||||
lfs_fs_getattr(&lfs, 'B', buffer+4, 6) => 3;
|
||||
lfs_fs_getattr(&lfs, 'C', buffer+10, 5) => 5;
|
||||
lfs_setattr(&lfs, "/", 'B', "eee", 3) => 0;
|
||||
lfs_getattr(&lfs, "/", 'A', buffer, 4) => 4;
|
||||
lfs_getattr(&lfs, "/", 'B', buffer+4, 6) => 3;
|
||||
lfs_getattr(&lfs, "/", 'C', buffer+10, 5) => 5;
|
||||
memcmp(buffer, "aaaa", 4) => 0;
|
||||
memcmp(buffer+4, "eee\0\0\0", 6) => 0;
|
||||
memcmp(buffer+10, "ccccc", 5) => 0;
|
||||
|
||||
lfs_fs_setattr(&lfs, 'A', buffer, LFS_ATTR_MAX+1) => LFS_ERR_NOSPC;
|
||||
lfs_fs_setattr(&lfs, 'B', "fffffffff", 9) => 0;
|
||||
lfs_fs_getattr(&lfs, 'A', buffer, 4) => 4;
|
||||
lfs_fs_getattr(&lfs, 'B', buffer+4, 6) => 9;
|
||||
lfs_fs_getattr(&lfs, 'C', buffer+10, 5) => 5;
|
||||
lfs_setattr(&lfs, "/", 'A', buffer, LFS_ATTR_MAX+1) => LFS_ERR_NOSPC;
|
||||
lfs_setattr(&lfs, "/", 'B', "fffffffff", 9) => 0;
|
||||
lfs_getattr(&lfs, "/", 'A', buffer, 4) => 4;
|
||||
lfs_getattr(&lfs, "/", 'B', buffer+4, 6) => 9;
|
||||
lfs_getattr(&lfs, "/", 'C', buffer+10, 5) => 5;
|
||||
lfs_unmount(&lfs) => 0;
|
||||
TEST
|
||||
tests/test.py << TEST
|
||||
lfs_mount(&lfs, &cfg) => 0;
|
||||
lfs_fs_getattr(&lfs, 'A', buffer, 4) => 4;
|
||||
lfs_fs_getattr(&lfs, 'B', buffer+4, 9) => 9;
|
||||
lfs_fs_getattr(&lfs, 'C', buffer+13, 5) => 5;
|
||||
lfs_getattr(&lfs, "/", 'A', buffer, 4) => 4;
|
||||
lfs_getattr(&lfs, "/", 'B', buffer+4, 9) => 9;
|
||||
lfs_getattr(&lfs, "/", 'C', buffer+13, 5) => 5;
|
||||
memcmp(buffer, "aaaa", 4) => 0;
|
||||
memcmp(buffer+4, "fffffffff", 9) => 0;
|
||||
memcmp(buffer+13, "ccccc", 5) => 0;
|
||||
|
||||
Reference in New Issue
Block a user