• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * ntfscluster - Part of the Linux-NTFS project.
3  *
4  * Copyright (c) 2002-2003 Richard Russon
5  *
6  * This utility will locate the owner of any given sector or cluster.
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation; either version 2 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program (in the main directory of the Linux-NTFS
20  * distribution in the file COPYING); if not, write to the Free Software
21  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
22  */
23 
24 #ifndef _NTFSCLUSTER_H_
25 #define _NTFSCLUSTER_H_
26 
27 #include "types.h"
28 #include "layout.h"
29 
30 enum action {
31 	act_none,
32 	act_info,
33 	act_cluster,
34 	act_sector,
35 	act_inode,
36 	act_file,
37 	act_last,
38 	act_error,
39 };
40 
41 struct options {
42 	char		*device;	/* Device/File to work with */
43 	enum action	 action;	/* What to do */
44 	int		 quiet;		/* Less output */
45 	int		 verbose;	/* Extra output */
46 	int		 force;		/* Override common sense */
47 	char		*filename;	/* File to examine */
48 	u64		 inode;		/* Inode to examine */
49 	s64		 range_begin;	/* Look for objects in this range */
50 	s64		 range_end;
51 };
52 
53 struct match {
54 	u64		 inum;		/* Inode number */
55 	LCN		 lcn;		/* Last cluster in use */
56 	ATTR_TYPES	 type;		/* Attribute type */
57 	ntfschar	*name;		/* Attribute name */
58 	int		 name_len;	/* Length of attribute name */
59 };
60 
61 #endif /* _NTFSCLUSTER_H_ */
62 
63 
64