Sophie

Sophie

distrib > Mandriva > 2009.0 > x86_64 > by-pkgid > 4e942938630a3e9b5b38bc5d0030fe32 > files > 5

e2fsprogs-1.41.2-1mnb2.src.rpm

diff -Nurp e2fsprogs-1.39-tyt3.orig/debugfs/debug_cmds.ct e2fsprogs-1.39-tyt3/debugfs/debug_cmds.ct
--- e2fsprogs-1.39-tyt3.orig/debugfs/debug_cmds.ct	2007-04-30 14:10:05.000000000 +0900
+++ e2fsprogs-1.39-tyt3/debugfs/debug_cmds.ct	2007-06-08 00:39:12.000000000 +0900
@@ -133,6 +133,9 @@ request do_set_block_group_descriptor, "
 request do_logdump, "Dump the contents of the journal",
 	logdump;
 
+request do_istat, "Show inode information of inode num",
+	show_inode_info, istat;
+
 request do_htree_dump, "Dump a hash-indexed directory",
 	htree_dump, htree;
 
diff -Nurp e2fsprogs-1.39-tyt3.orig/debugfs/debugfs.c e2fsprogs-1.39-tyt3/debugfs/debugfs.c
--- e2fsprogs-1.39-tyt3.orig/debugfs/debugfs.c	2007-04-30 14:10:05.000000000 +0900
+++ e2fsprogs-1.39-tyt3/debugfs/debugfs.c	2007-06-08 00:36:21.000000000 +0900
@@ -728,6 +728,34 @@ void do_stat(int argc, char *argv[])
 	return;
 }
 
+void do_istat(int argc, char *argv[])
+{
+       ext2_ino_t      inode;
+       struct ext2_inode inode_buf;
+       int             retval;
+       char *tmp;
+
+       if (argc != 2) {
+               com_err(argv[0], 0, "Usage: stat <file>");
+               return;
+       }
+       if (check_fs_open(argv[0]))
+               return;
+       inode = strtoul(argv[1], &tmp, 0);
+       if (!inode) 
+               return;
+
+       retval = ext2fs_read_inode(current_fs, inode, &inode_buf);
+       if (retval) 
+         {
+           com_err(argv[0], retval, "while trying to read inode %d", inode);
+           return;
+         }
+
+       dump_inode(inode,&inode_buf);
+       return;
+}
+
 void do_chroot(int argc, char *argv[])
 {
 	ext2_ino_t inode;
diff -Nurp e2fsprogs-1.39-tyt3.orig/debugfs/debugfs.h e2fsprogs-1.39-tyt3/debugfs/debugfs.h
--- e2fsprogs-1.39-tyt3.orig/debugfs/debugfs.h	2007-04-30 14:10:05.000000000 +0900
+++ e2fsprogs-1.39-tyt3/debugfs/debugfs.h	2007-06-08 00:40:20.000000000 +0900
@@ -100,6 +100,7 @@ extern void do_unlink(int argc, char **a
 extern void do_find_free_block(int argc, char **argv);
 extern void do_find_free_inode(int argc, char **argv);
 extern void do_stat(int argc, char **argv);
+extern void do_istat(int argc, char **argv);
 
 extern void do_chroot(int argc, char **argv);
 extern void do_clri(int argc, char **argv);