3 * This file defines four things:
4 * - generic platform independent fixed-size types (e.g. ntfs_u32)
5 * - specific fixed-size types (e.g. ntfs_offset_t)
6 * - macros that read and write those types from and to byte arrays
7 * - types derived from OS specific ones
9 * Copyright (C) 1996,1998 Martin von Löwis
12 #ifdef NTFS_IN_LINUX_KERNEL
13 /* get installed types if we compile the kernel*/
17 /* We don't need to define __LITTLE_ENDIAN, as we use
20 #include "ntfsendian.h"
21 #include <asm/types.h>
24 #ifndef NTFS_INTEGRAL_TYPES
25 #define NTFS_INTEGRAL_TYPES
36 /* unicode character type */
39 typedef u16 ntfs_wchar_t
;
44 typedef u64 ntfs_offset_t
;
49 typedef u64 ntfs_time64_t
;
51 /* This is really unsigned long long. So we support only volumes up to 2 TB */
52 #ifndef NTFS_CLUSTER_T
53 #define NTFS_CLUSTER_T
54 typedef u32 ntfs_cluster_t
;
57 /* architecture independent macros */
59 /* PUTU32 would not clear all bytes */
60 #define NTFS_PUTINUM(p,i) NTFS_PUTU64(p,i->i_number);\
61 NTFS_PUTU16(((char*)p)+6,i->sequence_number)
63 /* system dependent types */
64 #include <asm/posix_types.h>
67 typedef __kernel_mode_t ntmode_t
;
71 typedef __kernel_uid_t ntfs_uid_t
;
75 typedef __kernel_gid_t ntfs_gid_t
;
79 typedef __kernel_size_t ntfs_size_t
;
83 typedef __kernel_time_t ntfs_time_t
;
88 * c-file-style: "linux"