debugfs.h revision 65f0aab98b20b5994a726ab90d355248bcddfffd
1/*
2 * debugfs.h --- header file for the debugfs program
3 */
4
5#include "ext2fs/ext2_fs.h"
6#include "ext2fs/ext2fs.h"
7
8#ifdef __STDC__
9#define NOARGS void
10#else
11#define NOARGS
12#define const
13#endif
14
15/*
16 * Flags used by the common argument processing functions
17 */
18#define CHECK_FS_RW		0x0001
19#define CHECK_FS_BITMAPS	0x0002
20#define CHECK_FS_NOTOPEN	0x0004
21
22extern ext2_filsys current_fs;
23extern ext2_ino_t	root, cwd;
24
25extern void reset_getopt(void);
26extern FILE *open_pager(void);
27extern void close_pager(FILE *stream);
28extern int check_fs_open(char *name);
29extern int check_fs_not_open(char *name);
30extern int check_fs_read_write(char *name);
31extern int check_fs_bitmaps(char *name);
32extern ext2_ino_t string_to_inode(char *str);
33extern char *time_to_string(__u32);
34extern time_t string_to_time(const char *);
35extern unsigned long parse_ulong(const char *str, const char *cmd,
36				 const char *descr, int *err);
37extern int strtoblk(const char *cmd, const char *str, blk_t *ret);
38extern int common_args_process(int argc, char *argv[], int min_argc,
39			       int max_argc, const char *cmd,
40			       const char *usage, int flags);
41extern int common_inode_args_process(int argc, char *argv[],
42				     ext2_ino_t *inode, int flags);
43extern int common_block_args_process(int argc, char *argv[],
44				     blk_t *block, blk_t *count);
45extern int debugfs_read_inode(ext2_ino_t ino, struct ext2_inode * inode,
46			      const char *cmd);
47extern int debugfs_read_inode_full(ext2_ino_t ino, struct ext2_inode * inode,
48				   const char *cmd, int bufsize);
49extern int debugfs_write_inode(ext2_ino_t ino, struct ext2_inode * inode,
50			       const char *cmd);
51extern int debugfs_write_new_inode(ext2_ino_t ino, struct ext2_inode * inode,
52				   const char *cmd);
53
54/* ss command functions */
55
56/* dump.c */
57extern void do_dump(int argc, char **argv);
58extern void do_cat(int argc, char **argv);
59extern void do_rdump(int argc, char **argv);
60
61/* htree.c */
62extern void do_htree_dump(int argc, char **argv);
63extern void do_dx_hash(int argc, char **argv);
64extern void do_dirsearch(int argc, char **argv);
65
66/* logdump.c */
67extern void do_logdump(int argc, char **argv);
68
69/* lsdel.c */
70extern void do_lsdel(int argc, char **argv);
71
72/* icheck.c */
73extern void do_icheck(int argc, char **argv);
74
75/* ncheck.c */
76extern void do_ncheck(int argc, char **argv);
77
78/* set_fields.c */
79extern void do_set_super(int argc, char **);
80extern void do_set_inode(int argc, char **);
81extern void do_set_block_group_descriptor(int argc, char **);
82
83/* unused.c */
84extern void do_dump_unused(int argc, char **argv);
85
86/* debugfs.c */
87extern void internal_dump_inode(FILE *, const char *, ext2_ino_t,
88				struct ext2_inode *, int);
89
90extern void do_dirty_filesys(int argc, char **argv);
91extern void do_open_filesys(int argc, char **argv);
92extern void do_close_filesys(int argc, char **argv);
93extern void do_lcd(int argc, char **argv);
94extern void do_init_filesys(int argc, char **argv);
95extern void do_show_super_stats(int argc, char **argv);
96extern void do_kill_file(int argc, char **argv);
97extern void do_rm(int argc, char **argv);
98extern void do_link(int argc, char **argv);
99extern void do_undel(int argc, char **argv);
100extern void do_unlink(int argc, char **argv);
101extern void do_find_free_block(int argc, char **argv);
102extern void do_find_free_inode(int argc, char **argv);
103extern void do_stat(int argc, char **argv);
104
105extern void do_chroot(int argc, char **argv);
106extern void do_clri(int argc, char **argv);
107extern void do_freei(int argc, char **argv);
108extern void do_seti(int argc, char **argv);
109extern void do_testi(int argc, char **argv);
110extern void do_freeb(int argc, char **argv);
111extern void do_setb(int argc, char **argv);
112extern void do_testb(int argc, char **argv);
113extern void do_modify_inode(int argc, char **argv);
114extern void do_list_dir(int argc, char **argv);
115extern void do_change_working_dir(int argc, char **argv);
116extern void do_print_working_directory(int argc, char **argv);
117extern void do_write(int argc, char **argv);
118extern void do_mknod(int argc, char **argv);
119extern void do_mkdir(int argc, char **argv);
120extern void do_rmdir(int argc, char **argv);
121extern void do_show_debugfs_params(int argc, char **argv);
122extern void do_expand_dir(int argc, char **argv);
123extern void do_features(int argc, char **argv);
124extern void do_bmap(int argc, char **argv);
125extern void do_imap(int argc, char **argv);
126extern void do_set_current_time(int argc, char **argv);
127extern void do_supported_features(int argc, char **argv);
128
129