summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorngkaho1234 <ngkaho1234@gmail.com>2016-02-01 03:18:15 +0000
committerngkaho1234 <ngkaho1234@gmail.com>2016-02-01 03:18:15 +0000
commit8b4a6cedc4a20924ed01da7609e6b158a0f15576 (patch)
treea29ee763ed3f92af78752d99f594683307ce642d /include
parent252c506239ab570c0f671513a3b17d3a44f86b5c (diff)
Relocate other in-memory data structures from ext4_types.h
These include ext4_inode_ref, ext4_dir_iter, ext4_dir_search_result and ext4_dir_idx_block.
Diffstat (limited to 'include')
-rw-r--r--include/ext4_dir.h13
-rw-r--r--include/ext4_dir_idx.h7
-rw-r--r--include/ext4_fs.h8
-rw-r--r--include/ext4_types.h25
4 files changed, 28 insertions, 25 deletions
diff --git a/include/ext4_dir.h b/include/ext4_dir.h
index 7b06843..d3b1bf5 100644
--- a/include/ext4_dir.h
+++ b/include/ext4_dir.h
@@ -54,6 +54,19 @@ extern "C" {
#include <stdint.h>
+struct ext4_dir_iter {
+ struct ext4_inode_ref *inode_ref;
+ struct ext4_block curr_blk;
+ uint64_t curr_off;
+ struct ext4_dir_en *curr;
+};
+
+struct ext4_dir_search_result {
+ struct ext4_block block;
+ struct ext4_dir_en *dentry;
+};
+
+
/**@brief Get i-node number from directory entry.
* @param de Directory entry
* @return I-node number
diff --git a/include/ext4_dir_idx.h b/include/ext4_dir_idx.h
index d3275d5..e160374 100644
--- a/include/ext4_dir_idx.h
+++ b/include/ext4_dir_idx.h
@@ -55,8 +55,15 @@ extern "C" {
#include <stdint.h>
#include <stdbool.h>
+struct ext4_dir_idx_block {
+ struct ext4_block b;
+ struct ext4_dir_idx_entry *entries;
+ struct ext4_dir_idx_entry *position;
+};
+
#define EXT4_DIR_DX_INIT_BCNT 2
+
/**@brief Initialize index structure of new directory.
* @param dir Pointer to directory i-node
* @param dir Pointer to parent directory i-node
diff --git a/include/ext4_fs.h b/include/ext4_fs.h
index ba55da9..06eea0e 100644
--- a/include/ext4_fs.h
+++ b/include/ext4_fs.h
@@ -77,6 +77,14 @@ struct ext4_block_group_ref {
bool dirty;
};
+struct ext4_inode_ref {
+ struct ext4_block block;
+ struct ext4_inode *inode;
+ struct ext4_fs *fs;
+ uint32_t index;
+ bool dirty;
+};
+
/**@brief Convert block address to relative index in block group.
* @param sb Superblock pointer
diff --git a/include/ext4_types.h b/include/ext4_types.h
index 2a60942..33137ba 100644
--- a/include/ext4_types.h
+++ b/include/ext4_types.h
@@ -464,13 +464,6 @@ struct ext4_inode {
#define EXT4_INODE_ROOT_INDEX 2
-struct ext4_inode_ref {
- struct ext4_block block;
- struct ext4_inode *inode;
- struct ext4_fs *fs;
- uint32_t index;
- bool dirty;
-};
#define EXT4_DIRECTORY_FILENAME_LEN 255
@@ -506,18 +499,6 @@ struct ext4_dir_en {
uint8_t name[EXT4_DIRECTORY_FILENAME_LEN]; /* Entry name */
};
-struct ext4_dir_iter {
- struct ext4_inode_ref *inode_ref;
- struct ext4_block curr_blk;
- uint64_t curr_off;
- struct ext4_dir_en *curr;
-};
-
-struct ext4_dir_search_result {
- struct ext4_block block;
- struct ext4_dir_en *dentry;
-};
-
/* Structures for indexed directory */
struct ext4_dir_idx_climit {
@@ -564,12 +545,6 @@ struct ext4_dir_idx_node {
struct ext4_dir_idx_entry entries[];
};
-struct ext4_dir_idx_block {
- struct ext4_block b;
- struct ext4_dir_idx_entry *entries;
- struct ext4_dir_idx_entry *position;
-};
-
/*
* This goes at the end of each htree block.
*/