Changes by: szaka
Update of /cvsroot/linux-ntfs/ntfsprogs/ntfsprogs
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18414/ntfsprogs
Modified Files:
ntfsinfo.c
Log Message:
libntfs: add ntfs_index_root_get() which reads the index root of an attribute
Index: ntfsinfo.c
===================================================================
RCS file: /cvsroot/linux-ntfs/ntfsprogs/ntfsprogs/ntfsinfo.c,v
retrieving revision 1.113
retrieving revision 1.114
diff -u -p -r1.113 -r1.114
--- ntfsinfo.c 27 Mar 2006 20:50:51 -0000 1.113
+++ ntfsinfo.c 27 Mar 2006 21:14:56 -0000 1.114
@@ -72,6 +72,7 @@
#include "attrib.h"
#include "layout.h"
#include "inode.h"
+#include "index.h"
#include "utils.h"
#include "security.h"
#include "mst.h"
@@ -1552,44 +1553,6 @@ static void ntfs_dump_attr_index_root(AT
}
/**
- * get_index_root()
- *
- * determine size, type and the collation rule of INDX record
- */
-static INDEX_ROOT *get_index_root(ntfs_inode *ni, ATTR_RECORD *attr)
-{
- ntfs_attr_search_ctx *ctx;
- ntfschar *name;
- INDEX_ROOT *root = NULL;
-
- name = (ntfschar *)((u8 *)attr + le16_to_cpu(attr->name_offset));
-
- ctx = ntfs_attr_get_search_ctx(ni, NULL);
- if (!ctx) {
- ntfs_log_perror("ntfs_get_search_ctx failed");
- return NULL;
- }
-
- if (ntfs_attr_lookup(AT_INDEX_ROOT, name, attr->name_length, 0, 0, NULL,
- 0, ctx)) {
- ntfs_log_perror("ntfs_attr_lookup failed");
- goto out;
- }
-
- root = malloc(sizeof(INDEX_ROOT));
- if (!root) {
- ntfs_log_perror("malloc failed");
- goto out;
- }
-
- *root = *((INDEX_ROOT *)((u8 *)ctx->attr +
- le16_to_cpu(ctx->attr->value_offset)));
-out:
- ntfs_attr_put_search_ctx(ctx);
- return root;
-}
-
-/**
* ntfs_dump_attr_index_allocation()
*
* dump context of the index_allocation attribute
@@ -1608,7 +1571,7 @@ static void ntfs_dump_index_allocation(A
u32 name_len;
s64 data_size;
- index_root = get_index_root(ni, attr);
+ index_root = ntfs_index_root_get(ni, attr);
if (!index_root) {
ntfs_log_perror("Failed to read $INDEX_ROOT attribute");
return;
|