diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
commit | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch) | |
tree | 0bba044c4ce775e45a88a51686b5d9f90697ea9d /fs/ntfs/ntfs.h |
Linux-2.6.12-rc2v2.6.12-rc2
Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.
Let it rip!
Diffstat (limited to 'fs/ntfs/ntfs.h')
-rw-r--r-- | fs/ntfs/ntfs.h | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/fs/ntfs/ntfs.h b/fs/ntfs/ntfs.h new file mode 100644 index 000000000000..720ffb71bab8 --- /dev/null +++ b/fs/ntfs/ntfs.h | |||
@@ -0,0 +1,129 @@ | |||
1 | /* | ||
2 | * ntfs.h - Defines for NTFS Linux kernel driver. Part of the Linux-NTFS | ||
3 | * project. | ||
4 | * | ||
5 | * Copyright (c) 2001-2004 Anton Altaparmakov | ||
6 | * Copyright (C) 2002 Richard Russon | ||
7 | * | ||
8 | * This program/include file is free software; you can redistribute it and/or | ||
9 | * modify it under the terms of the GNU General Public License as published | ||
10 | * by the Free Software Foundation; either version 2 of the License, or | ||
11 | * (at your option) any later version. | ||
12 | * | ||
13 | * This program/include file is distributed in the hope that it will be | ||
14 | * useful, but WITHOUT ANY WARRANTY; without even the implied warranty | ||
15 | * of 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 _LINUX_NTFS_H | ||
25 | #define _LINUX_NTFS_H | ||
26 | |||
27 | #include <linux/stddef.h> | ||
28 | #include <linux/kernel.h> | ||
29 | #include <linux/module.h> | ||
30 | #include <linux/compiler.h> | ||
31 | #include <linux/fs.h> | ||
32 | #include <linux/nls.h> | ||
33 | #include <linux/smp.h> | ||
34 | |||
35 | #include "types.h" | ||
36 | #include "volume.h" | ||
37 | #include "layout.h" | ||
38 | |||
39 | typedef enum { | ||
40 | NTFS_BLOCK_SIZE = 512, | ||
41 | NTFS_BLOCK_SIZE_BITS = 9, | ||
42 | NTFS_SB_MAGIC = 0x5346544e, /* 'NTFS' */ | ||
43 | NTFS_MAX_NAME_LEN = 255, | ||
44 | } NTFS_CONSTANTS; | ||
45 | |||
46 | /* Global variables. */ | ||
47 | |||
48 | /* Slab caches (from super.c). */ | ||
49 | extern kmem_cache_t *ntfs_name_cache; | ||
50 | extern kmem_cache_t *ntfs_inode_cache; | ||
51 | extern kmem_cache_t *ntfs_big_inode_cache; | ||
52 | extern kmem_cache_t *ntfs_attr_ctx_cache; | ||
53 | extern kmem_cache_t *ntfs_index_ctx_cache; | ||
54 | |||
55 | /* The various operations structs defined throughout the driver files. */ | ||
56 | extern struct address_space_operations ntfs_aops; | ||
57 | extern struct address_space_operations ntfs_mst_aops; | ||
58 | |||
59 | extern struct file_operations ntfs_file_ops; | ||
60 | extern struct inode_operations ntfs_file_inode_ops; | ||
61 | |||
62 | extern struct file_operations ntfs_dir_ops; | ||
63 | extern struct inode_operations ntfs_dir_inode_ops; | ||
64 | |||
65 | extern struct file_operations ntfs_empty_file_ops; | ||
66 | extern struct inode_operations ntfs_empty_inode_ops; | ||
67 | |||
68 | /** | ||
69 | * NTFS_SB - return the ntfs volume given a vfs super block | ||
70 | * @sb: VFS super block | ||
71 | * | ||
72 | * NTFS_SB() returns the ntfs volume associated with the VFS super block @sb. | ||
73 | */ | ||
74 | static inline ntfs_volume *NTFS_SB(struct super_block *sb) | ||
75 | { | ||
76 | return sb->s_fs_info; | ||
77 | } | ||
78 | |||
79 | /* Declarations of functions and global variables. */ | ||
80 | |||
81 | /* From fs/ntfs/compress.c */ | ||
82 | extern int ntfs_read_compressed_block(struct page *page); | ||
83 | extern int allocate_compression_buffers(void); | ||
84 | extern void free_compression_buffers(void); | ||
85 | |||
86 | /* From fs/ntfs/super.c */ | ||
87 | #define default_upcase_len 0x10000 | ||
88 | extern struct semaphore ntfs_lock; | ||
89 | |||
90 | typedef struct { | ||
91 | int val; | ||
92 | char *str; | ||
93 | } option_t; | ||
94 | extern const option_t on_errors_arr[]; | ||
95 | |||
96 | /* From fs/ntfs/mst.c */ | ||
97 | extern int post_read_mst_fixup(NTFS_RECORD *b, const u32 size); | ||
98 | extern int pre_write_mst_fixup(NTFS_RECORD *b, const u32 size); | ||
99 | extern void post_write_mst_fixup(NTFS_RECORD *b); | ||
100 | |||
101 | /* From fs/ntfs/unistr.c */ | ||
102 | extern BOOL ntfs_are_names_equal(const ntfschar *s1, size_t s1_len, | ||
103 | const ntfschar *s2, size_t s2_len, | ||
104 | const IGNORE_CASE_BOOL ic, | ||
105 | const ntfschar *upcase, const u32 upcase_size); | ||
106 | extern int ntfs_collate_names(const ntfschar *name1, const u32 name1_len, | ||
107 | const ntfschar *name2, const u32 name2_len, | ||
108 | const int err_val, const IGNORE_CASE_BOOL ic, | ||
109 | const ntfschar *upcase, const u32 upcase_len); | ||
110 | extern int ntfs_ucsncmp(const ntfschar *s1, const ntfschar *s2, size_t n); | ||
111 | extern int ntfs_ucsncasecmp(const ntfschar *s1, const ntfschar *s2, size_t n, | ||
112 | const ntfschar *upcase, const u32 upcase_size); | ||
113 | extern void ntfs_upcase_name(ntfschar *name, u32 name_len, | ||
114 | const ntfschar *upcase, const u32 upcase_len); | ||
115 | extern void ntfs_file_upcase_value(FILE_NAME_ATTR *file_name_attr, | ||
116 | const ntfschar *upcase, const u32 upcase_len); | ||
117 | extern int ntfs_file_compare_values(FILE_NAME_ATTR *file_name_attr1, | ||
118 | FILE_NAME_ATTR *file_name_attr2, | ||
119 | const int err_val, const IGNORE_CASE_BOOL ic, | ||
120 | const ntfschar *upcase, const u32 upcase_len); | ||
121 | extern int ntfs_nlstoucs(const ntfs_volume *vol, const char *ins, | ||
122 | const int ins_len, ntfschar **outs); | ||
123 | extern int ntfs_ucstonls(const ntfs_volume *vol, const ntfschar *ins, | ||
124 | const int ins_len, unsigned char **outs, int outs_len); | ||
125 | |||
126 | /* From fs/ntfs/upcase.c */ | ||
127 | extern ntfschar *generate_default_upcase(void); | ||
128 | |||
129 | #endif /* _LINUX_NTFS_H */ | ||