From 481eac5ebf41d03a50761dbec00388330cd8330a Mon Sep 17 00:00:00 2001 From: !flatcap Date: Thu, 22 Aug 2002 18:09:47 +0000 Subject: [PATCH] whitespace and include guards 2002/07/11 13:18:11-00:00 !flatcap start to break up the dependency loops in the header files 2002/07/02 23:47:10-00:00 !antona Global replacement of __[su]{8,16,32,64} with [su]{8,16,32,64} and layout.h define it. 2002/06/01 00:41:45-00:00 !antona huge update! 2002/04/20 23:09:42-00:00 !antona Port attribute lookup functions with attribute list support from ntfs tng driver. Port/reimplement extent mft record handling code as well. Rename out all dollar signs from type names and constants. Adapt all callers to new API. Note mkntfs is currently broken due to some needed work. 2002/04/14 13:56:45-00:00 !antona cleanup header files. 2001/12/15 05:13:08-00:00 !antona Remove atomic ops and add compiler version check. 2001/08/02 01:44:56-00:00 !antona Add ntfsfix man page and spell fixes. Update to 1.2.1 version and update all text files to go with it and the rpm spec file. 2001/06/01 02:07:24-00:00 !antona It has been a long time since last commit. At moment have done a lot of work on mkntfs but also at the moment ntfsfix and ntfsdump_logfile and libntfs are broken. Basically only mkntfs works and that is not complete either. 2001/04/12 22:37:20-00:00 !antona Add a description and structure for holding attributes in memory. No code to use it yet but it's a start. The design is geared with the ideas of making searching for attributes and using/implementing the search context as easy as possible, integrating the attributes into their mft_entries and maintining a fast sync volume path. Comments welcome. 2001/04/11 14:29:11-00:00 !antona Almost fixed compilaton. Remember to declare a struct type with struct NAME { declaration }; rather than the bogus struct { declaration NAME }; then can use typedef NAME othername; on a forward declaration of NAME (struct NAME;) and all is fine... 2001/04/11 11:50:24-00:00 !antona Forgot to cvs add ... (Logical change 1.5) --- include/types.h | 70 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/include/types.h b/include/types.h index e69de29b..81352e3b 100644 --- a/include/types.h +++ b/include/types.h @@ -0,0 +1,70 @@ +/* + * $Id$ + * + * types.h - Misc type definitions not related to on-disk structure. Part of + * the Linux-NTFS project. + * + * Copyright (c) 2000-2002 Anton Altaparmakov. + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program (in the main directory of the Linux-NTFS + * distribution in the file COPYING); if not, write to the Free Software + * Foundation,Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef _NTFS_TYPES_H +#define _NTFS_TYPES_H + +#include +#include +#include + +typedef uint8_t u8; /* Unsigned types of an exact size */ +typedef uint16_t u16; +typedef uint32_t u32; +typedef uint64_t u64; + +typedef int8_t s8; /* Signed types of an exact size */ +typedef int16_t s16; +typedef int32_t s32; +typedef int64_t s64; + +typedef u16 uchar_t; /* 2-byte Unicode character type. */ +#define UCHAR_T_SIZE_BITS 1 + +/* + * Clusters are signed 64-bit values on NTFS volumes. We define two types, LCN + * and VCN, to allow for type checking and better code readability. + */ +typedef s64 VCN; +typedef s64 LCN; + +/* + * These are just to make the code more readable... + */ +typedef enum { + FALSE = 0, + NO = 0, + ZERO = 0, + TRUE = 1, + YES = 1, + ONE = 1, +} BOOL; + +typedef enum { + CASE_SENSITIVE = 0, + IGNORE_CASE = 1, +} IGNORE_CASE_BOOL; + +#endif /* defined _NTFS_TYPES_H */ +