www.pudn.com > truecrypt.zip > TCDEFS.H
/* Copyright (C) 2004 TrueCrypt Team, truecrypt.org This product uses components written by Paul Le Roux*/ // Version displayed to user #define VERSION_STRING "1.0" // Version number to compare against driver #define VERSION_NUM 0x0100 // Version number written to volume header during format, // specifies the minimum program version required to mount the volume #define VOLUME_VERSION_NUM 0x0100 #define TC_MAX_PATH 260 /* Includes the null terminator */ #define SECTOR_SIZE 512 /* sector size */ #define BYTES_PER_KB 1024 #define BYTES_PER_MB 1048576 /* GUI/driver errors */ #define ERR_OS_ERROR 1 #define ERR_OUTOFMEMORY 2 #define ERR_PASSWORD_WRONG 3 #define ERR_VOL_FORMAT_BAD 4 #define ERR_BAD_DRIVE_LETTER 5 #define ERR_DRIVE_NOT_FOUND 6 #define ERR_FILES_OPEN 7 #define ERR_VOL_SIZE_WRONG 8 #define ERR_COMPRESSION_NOT_SUPPORTED 9 #define ERR_PASSWORD_CHANGE_VOL_TYPE 10 #define ERR_PASSWORD_CHANGE_VOL_VERSION 11 #define ERR_VOL_SEEKING 12 #define ERR_VOL_WRITING 13 #define ERR_FILES_OPEN_LOCK 14 #define ERR_VOL_READING 15 #define ERR_DRIVER_VERSION 16 #define ERR_NEW_VERSION_REQUIRED 17 #define ERR_VOL_ALREADY_MOUNTED 32 #define ERR_NO_FREE_SLOTS 33 #define ERR_NO_FREE_DRIVES 34 #define ERR_FILE_OPEN_FAILED 35 #define ERR_VOL_MOUNT_FAILED 36 #define ERR_INVALID_DEVICE 37 #define ERR_ACCESS_DENIED 38 #define MIN_VOLUME_SIZE 19456 #define MAX_VOLUME_SIZE 0x7fffFFFFffffFFFFI64 #define burn(mem,size) \ memset(mem,0xff,size); \ memset(mem,0,size); #define WIDE(x) (LPWSTR)L##x #include #pragma intrinsic(memcmp, memcpy, memset, strcat, strcmp, strcpy, strlen) #ifdef NT4_DRIVER #pragma warning( disable : 4201 ) #pragma warning( disable : 4214 ) #pragma warning( disable : 4115 ) #pragma warning( disable : 4100 ) #pragma warning( disable : 4101 ) #pragma warning( disable : 4057 ) #pragma warning( disable : 4244 ) #pragma warning( disable : 4514 ) #pragma warning( disable : 4127 ) #include /* Standard header file for nt drivers */ #undef _WIN32_WINNT #define _WIN32_WINNT 0x0501 #include /* Standard I/O control codes */ #include #pragma warning( default : 4201 ) #pragma warning( default : 4214 ) #pragma warning( default : 4115 ) #pragma warning( default : 4100 ) #pragma warning( default : 4101 ) #pragma warning( default : 4057 ) #pragma warning( default : 4244 ) #pragma warning( default : 4127 ) /* #pragma warning( default : 4514 ) this warning remains disabled */ #define TCalloc(size) ((void *) ExAllocatePoolWithTag( NonPagedPool, size, 'MMCT' )) #define TCfree(memblock) ExFreePoolWithTag( memblock, 'MMCT' ) #define DEVICE_DRIVER #endif /* NT4_DRIVER */ #ifdef WIN9X_DRIVER #pragma warning( disable : 4047 ) #include "iosdcls.inc" /* VMM and IOS headers */ #pragma warning( default : 4047 ) #include #include #undef WANTVDXWRAPS #pragma warning( disable : 4229 ) #include #pragma warning( default : 4229 ) #pragma hdrstop #include #include #include "ifs.h" #include #define MBYTE16 3967 #define UWORD unsigned short #define UBYTE unsigned char #define MBYTE16 3967 #define TCalloc(size) _PageAllocate(size % 4096 ? (size/4096)+1 : size/4096,\ PG_SYS,0,0,0,MBYTE16,NULL,PAGEZEROINIT|PAGEFIXED|PAGECONTIG|PAGEUSEALIGN); #define TCfree(memblock) _PageFree(memblock,0) #define DEVICE_DRIVER #endif /* WIN9X_DRIVER */ #ifdef DEVICE_DRIVER #ifndef BOOL typedef int BOOL; #endif #ifndef TRUE #define TRUE 1 #endif #ifndef FALSE #define FALSE !TRUE #endif /* Define dummies for the drivers */ typedef int HFILE; typedef unsigned int WPARAM; typedef unsigned long LPARAM; #define CALLBACK #ifndef UINT typedef unsigned int UINT; #endif #ifndef LRESULT typedef unsigned long LRESULT; #endif #else #define TCalloc malloc #define TCfree free #pragma warning( disable : 4201 ) #pragma warning( disable : 4214 ) #pragma warning( disable : 4115 ) #pragma warning( disable : 4514 ) #undef _WIN32_WINNT #define _WIN32_WINNT 0x0501 #include /* Windows header */ #include /* The common controls */ #include /* Process control */ #include #include /* For sprintf */ #pragma warning( default : 4201 ) #pragma warning( default : 4214 ) #pragma warning( default : 4115 ) /* #pragma warning( default : 4514 ) this warning remains disabled */ /* This is needed to fix a bug with VC 5, the TCHAR macro _ttoi64 maps incorrectly to atoi64 when it should be _atoi64 */ #define atoi64 _atoi64 #endif /* DEVICE_DRIVER */ typedef UINT (_stdcall * diskio_f) (int, void *, UINT); #pragma hdrstop