return (dentry_correct_length_unaligned(dentry) + 7) & ~7;
}
-/* Return %true iff @dentry has the UTF-8 file name @name that has length
- * @name_len bytes. */
-static bool dentry_has_name(const struct dentry *dentry, const char *name,
- size_t name_len)
-{
- if (dentry->file_name_utf8_len != name_len)
- return false;
- return memcmp(dentry->file_name_utf8, name, name_len) == 0;
-}
-
/* Return %true iff the alternate data stream entry @entry has the UTF-8 stream
* name @name that has length @name_len bytes. */
static inline bool ads_entry_has_name(const struct ads_entry *entry,
return __dentry_total_length(dentry, dentry->length);
}
-/* Transfers file attributes from a `stat' buffer to a WIM "inode". */
-void stbuf_to_inode(const struct stat *stbuf, struct inode *inode)
-{
- if (S_ISLNK(stbuf->st_mode)) {
- inode->attributes = FILE_ATTRIBUTE_REPARSE_POINT;
- inode->reparse_tag = WIM_IO_REPARSE_TAG_SYMLINK;
- } else if (S_ISDIR(stbuf->st_mode)) {
- inode->attributes = FILE_ATTRIBUTE_DIRECTORY;
- } else {
- inode->attributes = FILE_ATTRIBUTE_NORMAL;
- }
- if (sizeof(ino_t) >= 8)
- inode->ino = (u64)stbuf->st_ino;
- else
- inode->ino = (u64)stbuf->st_ino |
- ((u64)stbuf->st_dev << ((sizeof(ino_t) * 8) & 63));
- /* Set timestamps */
- inode->creation_time = timespec_to_wim_timestamp(&stbuf->st_mtim);
- inode->last_write_time = timespec_to_wim_timestamp(&stbuf->st_mtim);
- inode->last_access_time = timespec_to_wim_timestamp(&stbuf->st_atim);
-}
-
#ifdef WITH_FUSE
/* Transfers file attributes from a struct inode to a `stat' buffer.
*
#ifdef RECURSIVE_FOR_DENTRY_IN_TREE
static int for_dentry_tree_in_rbtree(struct rb_node *node,
- int (*visitor)(struct dentry*, void*),
- void *arg)
+ int (*visitor)(struct dentry*, void*),
+ void *arg)
{
int ret;
if (node) {
- ret = for_dentry_tree_in_rbtree(node->rb_left,
- visitor, arg);
+ ret = for_dentry_tree_in_rbtree(node->rb_left, visitor, arg);
if (ret != 0)
return ret;
ret = for_dentry_in_tree(rbnode_dentry(node), visitor, arg);
if (ret != 0)
return ret;
- ret = for_dentry_tree_in_rbtree(node->rb_right,
- visitor, arg);
+ ret = for_dentry_tree_in_rbtree(node->rb_right, visitor, arg);
if (ret != 0)
return ret;
}
struct dentry *dentry)
{
u64 cur_offset = dentry->subdir_offset;
- struct dentry *prev_child = NULL;
- struct dentry *first_child = NULL;
struct dentry *child;
struct dentry cur_child;
int ret;