28 |
#define EXT2_MAX_SYMLINKCNT 8 |
#define EXT2_MAX_SYMLINKCNT 8 |
29 |
|
|
30 |
/* Filetype used in directory entry. */ |
/* Filetype used in directory entry. */ |
31 |
|
#define FILETYPE_UNKNOWN 0 |
32 |
#define FILETYPE_DIRECTORY 2 |
#define FILETYPE_DIRECTORY 2 |
33 |
#define FILETYPE_SYMLINK 7 |
#define FILETYPE_SYMLINK 7 |
34 |
|
|
689 |
|
|
690 |
filename[dirent.namelen] = '\0'; |
filename[dirent.namelen] = '\0'; |
691 |
|
|
692 |
hook (filename, dirent.filetype == FILETYPE_DIRECTORY); |
if (dirent.filetype != FILETYPE_UNKNOWN) |
693 |
|
hook (filename, dirent.filetype == FILETYPE_DIRECTORY); |
694 |
|
else |
695 |
|
{ |
696 |
|
struct grub_ext2_inode inode; |
697 |
|
grub_ext2_read_inode (data, grub_le_to_cpu32 (dirent.inode), &inode); |
698 |
|
|
699 |
|
hook (filename, (grub_le_to_cpu16 (inode.mode) |
700 |
|
& FILETYPE_INO_MASK) == FILETYPE_INO_DIRECTORY); |
701 |
|
} |
702 |
} |
} |
703 |
|
|
704 |
fpos += grub_le_to_cpu16 (dirent.direntlen); |
fpos += grub_le_to_cpu16 (dirent.direntlen); |