Merge tag 'selinux-pr-20190726' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / fs / ntfs / types.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * types.h - Defines for NTFS Linux kernel driver specific types.
4  *           Part of the Linux-NTFS project.
5  *
6  * Copyright (c) 2001-2005 Anton Altaparmakov
7  */
8
9 #ifndef _LINUX_NTFS_TYPES_H
10 #define _LINUX_NTFS_TYPES_H
11
12 #include <linux/types.h>
13
14 typedef __le16 le16;
15 typedef __le32 le32;
16 typedef __le64 le64;
17 typedef __u16 __bitwise sle16;
18 typedef __u32 __bitwise sle32;
19 typedef __u64 __bitwise sle64;
20
21 /* 2-byte Unicode character type. */
22 typedef le16 ntfschar;
23 #define UCHAR_T_SIZE_BITS 1
24
25 /*
26  * Clusters are signed 64-bit values on NTFS volumes. We define two types, LCN
27  * and VCN, to allow for type checking and better code readability.
28  */
29 typedef s64 VCN;
30 typedef sle64 leVCN;
31 typedef s64 LCN;
32 typedef sle64 leLCN;
33
34 /*
35  * The NTFS journal $LogFile uses log sequence numbers which are signed 64-bit
36  * values.  We define our own type LSN, to allow for type checking and better
37  * code readability.
38  */
39 typedef s64 LSN;
40 typedef sle64 leLSN;
41
42 /*
43  * The NTFS transaction log $UsnJrnl uses usn which are signed 64-bit values.
44  * We define our own type USN, to allow for type checking and better code
45  * readability.
46  */
47 typedef s64 USN;
48 typedef sle64 leUSN;
49
50 typedef enum {
51         CASE_SENSITIVE = 0,
52         IGNORE_CASE = 1,
53 } IGNORE_CASE_BOOL;
54
55 #endif /* _LINUX_NTFS_TYPES_H */