bc928e99a4
This cleans up constructors so fields are initialized in the same order they are declared in. This makes it trivial to spot accidentally uninitialized fields. This fixes a minor argument parsing bug when the mount path isn't set, but fortunately argv[argc] is NULL and we wanted to set it to NULL anyway. This prevents excessively large block sizes from being used. This improves inode value range checks in the fsmarshall code. Inode 0 is not a valid inode. The new code for this is also simpler. This prevents creating links with names larger than 255 bytes. This adds a check to ensure inodes don't overflow the hardlink count. This ensures the dirent filetype is only set if supported. |
||
---|---|---|
.. | ||
.gitignore | ||
block.cpp | ||
block.h | ||
blockgroup.cpp | ||
blockgroup.h | ||
device.cpp | ||
device.h | ||
ext-constants.h | ||
ext-structs.h | ||
extfs.cpp | ||
extfs.h | ||
filesystem.cpp | ||
filesystem.h | ||
fsmarshall.cpp | ||
fsmarshall.h | ||
fuse.cpp | ||
fuse.h | ||
inode.cpp | ||
inode.h | ||
ioleast.h | ||
Makefile | ||
util.h |