mirror of
https://github.com/kdave/btrfs-progs
synced 2024-12-24 07:02:45 +00:00
btrfs-progs: image: pass sanitize mode and name tree separately to sanitize_name
Now sanitize_name and all callees do not depend on metadump_struct. Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
e05551b080
commit
6519b4a5b4
17
image/main.c
17
image/main.c
@ -615,9 +615,9 @@ static void sanitize_xattr(struct extent_buffer *eb, int slot)
|
|||||||
memset_extent_buffer(eb, 0, data_ptr, data_len);
|
memset_extent_buffer(eb, 0, data_ptr, data_len);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sanitize_name(struct metadump_struct *md, u8 *dst,
|
static void sanitize_name(enum sanitize_mode sanitize, struct rb_root *name_tree,
|
||||||
struct extent_buffer *src, struct btrfs_key *key,
|
u8 *dst, struct extent_buffer *src, struct btrfs_key *key,
|
||||||
int slot)
|
int slot)
|
||||||
{
|
{
|
||||||
struct extent_buffer *eb;
|
struct extent_buffer *eb;
|
||||||
|
|
||||||
@ -632,15 +632,13 @@ static void sanitize_name(struct metadump_struct *md, u8 *dst,
|
|||||||
switch (key->type) {
|
switch (key->type) {
|
||||||
case BTRFS_DIR_ITEM_KEY:
|
case BTRFS_DIR_ITEM_KEY:
|
||||||
case BTRFS_DIR_INDEX_KEY:
|
case BTRFS_DIR_INDEX_KEY:
|
||||||
sanitize_dir_item(md->sanitize_names, &md->name_tree, eb, slot);
|
sanitize_dir_item(sanitize, name_tree, eb, slot);
|
||||||
break;
|
break;
|
||||||
case BTRFS_INODE_REF_KEY:
|
case BTRFS_INODE_REF_KEY:
|
||||||
sanitize_inode_ref(md->sanitize_names, &md->name_tree, eb, slot,
|
sanitize_inode_ref(sanitize, name_tree, eb, slot, 0);
|
||||||
0);
|
|
||||||
break;
|
break;
|
||||||
case BTRFS_INODE_EXTREF_KEY:
|
case BTRFS_INODE_EXTREF_KEY:
|
||||||
sanitize_inode_ref(md->sanitize_names, &md->name_tree, eb, slot,
|
sanitize_inode_ref(sanitize, name_tree, eb, slot, 1);
|
||||||
1);
|
|
||||||
break;
|
break;
|
||||||
case BTRFS_XATTR_ITEM_KEY:
|
case BTRFS_XATTR_ITEM_KEY:
|
||||||
sanitize_xattr(eb, slot);
|
sanitize_xattr(eb, slot);
|
||||||
@ -678,7 +676,8 @@ static void zero_items(struct metadump_struct *md, u8 *dst,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (md->sanitize_names && has_name(&key)) {
|
if (md->sanitize_names && has_name(&key)) {
|
||||||
sanitize_name(md, dst, src, &key, i);
|
sanitize_name(md->sanitize_names, &md->name_tree, dst,
|
||||||
|
src, &key, i);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user