X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fext4_dir.c;h=b11d6c292df610082f5429852ea40e4bb1e2b6b9;hb=ab4ed9a604bc6bc797dfa7e01e3612f1bc915bdd;hp=438d386e3c7b37ac67c8b4cfe6028765b3002810;hpb=252c506239ab570c0f671513a3b17d3a44f86b5c;p=lwext4.git diff --git a/src/ext4_dir.c b/src/ext4_dir.c index 438d386..b11d6c2 100644 --- a/src/ext4_dir.c +++ b/src/ext4_dir.c @@ -39,18 +39,18 @@ * @brief Directory handle procedures. */ -#include "ext4_config.h" -#include "ext4_types.h" -#include "ext4_misc.h" -#include "ext4_errno.h" -#include "ext4_debug.h" - -#include "ext4_trans.h" -#include "ext4_dir.h" -#include "ext4_dir_idx.h" -#include "ext4_crc32.h" -#include "ext4_inode.h" -#include "ext4_fs.h" +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include #include @@ -314,9 +314,21 @@ void ext4_dir_write_entry(struct ext4_sblock *sb, struct ext4_dir_en *en, case EXT4_INODE_MODE_SOFTLINK: ext4_dir_en_set_inode_type(sb, en, EXT4_DE_SYMLINK); break; + case EXT4_INODE_MODE_CHARDEV: + ext4_dir_en_set_inode_type(sb, en, EXT4_DE_CHRDEV); + break; + case EXT4_INODE_MODE_BLOCKDEV: + ext4_dir_en_set_inode_type(sb, en, EXT4_DE_BLKDEV); + break; + case EXT4_INODE_MODE_FIFO: + ext4_dir_en_set_inode_type(sb, en, EXT4_DE_FIFO); + break; + case EXT4_INODE_MODE_SOCKET: + ext4_dir_en_set_inode_type(sb, en, EXT4_DE_SOCK); + break; default: - /* FIXME: right now we only support 3 inode type. */ - ext4_assert(0); + /* FIXME: unsupported filetype */ + ext4_dir_en_set_inode_type(sb, en, EXT4_DE_UNKNOWN); } /* Set basic attributes */