Barebox Enviroment FileSystem
andreas.willig at rafi.de
andreas.willig at rafi.de
Wed May 8 04:27:39 EDT 2013
Hi there
I'm just about to implement direct access to BareBox Env FileSystem from
Windows Embedded Compact 7 launched through BB and it seems to me I met a
bug in the environment code.
File: common/environment.c
Line: 89 (latest revision by 8th of May)
Function: file_save_action
The creation of the File's INODE is done strange:
87 inode = (struct envfs_inode*)data->writep;
88 inode->magic = ENVFS_32(ENVFS_INODE_MAGIC);
89 inode->headerlen = ENVFS_32(PAD4(namelen + sizeof(struct
envfs_inode_end)));
Now the bug / my question is:
Why is the HeaderLen of the Inode created by padded filename + sizeof
inode_end instead of padded filename + sizeof(inode) did i get something
wrong or is this a bug?
envfs_load will not meet this problem since headerlen is not used during
expansion of FS to ram.
An additional question i got btw: Is it intentionally desired that empty
directories are dropped during creation of bin file? The inode_end seems to
support an empty directory entry, but code does not create such entries.
Thanks in advance
Andreas
More information about the barebox
mailing list