1/*
2 * linux/include/linux/hfs_fs_i.h
3 *
4 * Copyright (C) 1995, 1996  Paul H. Hargrove
5 * This file may be distributed under the terms of the GNU General Public License.
6 *
7 * This file defines the type (struct hfs_inode_info) and the two
8 * subordinate types hfs_extent and hfs_file.
9 */
10
11#ifndef _LINUX_HFS_FS_I_H
12#define _LINUX_HFS_FS_I_H
13
14/*
15 * struct hfs_inode_info
16 *
17 * The HFS-specific part of a Linux (struct inode)
18 */
19struct hfs_inode_info {
20	int				magic;     /* A magic number */
21
22	unsigned long			mmu_private;
23	struct hfs_cat_entry		*entry;
24
25	/* For a regular or header file */
26	struct hfs_fork 		*fork;
27	int				convert;
28
29	/* For a directory */
30	ino_t				file_type;
31	char				dir_size;
32
33	/* For header files */
34	const struct hfs_hdr_layout	*default_layout;
35	struct hfs_hdr_layout		*layout;
36
37	/* to deal with localtime ugliness */
38	int                             tz_secondswest;
39
40        /* for dentry cleanup */
41        void (*d_drop_op)(struct dentry *, const ino_t);
42};
43
44#endif
45