Lines Matching refs:dirs
211 struct ext4_dir_stream *dirs; in ext4fs_opendir() local
217 dirs = calloc(1, sizeof(struct ext4_dir_stream)); in ext4fs_opendir()
218 if (!dirs) in ext4fs_opendir()
220 dirs->dirname = strdup(dirname); in ext4fs_opendir()
221 if (!dirs->dirname) { in ext4fs_opendir()
222 free(dirs); in ext4fs_opendir()
230 *dirsp = (struct fs_dir_stream *)dirs; in ext4fs_opendir()
232 free(dirs->dirname); in ext4fs_opendir()
233 free(dirs); in ext4fs_opendir()
245 struct ext4_dir_stream *dirs = (struct ext4_dir_stream *)fs_dirs; in ext4fs_readdir() local
246 struct fs_dirent *dent = &dirs->dirent; in ext4fs_readdir()
256 ret = ext4fs_find_file(dirs->dirname, &ext4fs_root->diropen, &dir, in ext4fs_readdir()
270 if (dirs->fpos >= le32_to_cpu(dir->inode.size)) in ext4fs_readdir()
275 while (dirs->fpos < le32_to_cpu(dir->inode.size)) { in ext4fs_readdir()
276 ret = ext4fs_read_file(dir, dirs->fpos, in ext4fs_readdir()
288 dirs->fpos += le16_to_cpu(dirent.direntlen); in ext4fs_readdir()
293 ret = ext4fs_read_file(dir, dirs->fpos + sizeof(struct ext2_dirent), in ext4fs_readdir()
326 dirs->fpos += le16_to_cpu(dirent.direntlen); in ext4fs_readdir()
340 struct ext4_dir_stream *dirs = (struct ext4_dir_stream *)fs_dirs; in ext4fs_closedir() local
342 if (!dirs) in ext4fs_closedir()
345 free(dirs->dirname); in ext4fs_closedir()
346 free(dirs); in ext4fs_closedir()