Annotation of truecrypt/common/tcdefs.h, revision 1.1.1.2

1.1       root        1: /* Copyright (C) 2004 TrueCrypt Team, truecrypt.org
                      2:    This product uses components written by Paul Le Roux <[email protected]> */
                      3: 
                      4: // Version displayed to user 
1.1.1.2 ! root        5: #define VERSION_STRING                  "1.0a"
1.1       root        6: 
                      7: // Version number to compare against driver
1.1.1.2 ! root        8: #define VERSION_NUM                                            0x010a
1.1       root        9: 
                     10: // Version number written to volume header during format,
                     11: // specifies the minimum program version required to mount the volume
                     12: #define VOLUME_VERSION_NUM                             0x0100 
                     13: 
                     14: #define TC_MAX_PATH                                            260     /* Includes the null terminator */
                     15: #define SECTOR_SIZE                     512    /* sector size */
                     16: 
                     17: #define BYTES_PER_KB                    1024   
                     18: #define BYTES_PER_MB                    1048576
                     19: 
                     20: /* GUI/driver errors */
                     21: 
                     22: #define ERR_OS_ERROR                    1
                     23: #define ERR_OUTOFMEMORY                 2
                     24: #define ERR_PASSWORD_WRONG              3
                     25: #define ERR_VOL_FORMAT_BAD              4
                     26: #define ERR_BAD_DRIVE_LETTER            5
                     27: #define ERR_DRIVE_NOT_FOUND             6
                     28: #define ERR_FILES_OPEN                  7
                     29: #define ERR_VOL_SIZE_WRONG              8
                     30: #define ERR_COMPRESSION_NOT_SUPPORTED   9
                     31: #define ERR_PASSWORD_CHANGE_VOL_TYPE    10
                     32: #define ERR_PASSWORD_CHANGE_VOL_VERSION 11
                     33: #define ERR_VOL_SEEKING                 12
                     34: #define ERR_VOL_WRITING                 13
                     35: #define ERR_FILES_OPEN_LOCK             14
                     36: #define ERR_VOL_READING                 15
                     37: #define ERR_DRIVER_VERSION                             16
                     38: #define ERR_NEW_VERSION_REQUIRED               17
                     39: 
                     40: #define ERR_VOL_ALREADY_MOUNTED         32
                     41: #define ERR_NO_FREE_SLOTS               33
                     42: #define ERR_NO_FREE_DRIVES              34
                     43: #define ERR_FILE_OPEN_FAILED            35
                     44: #define ERR_VOL_MOUNT_FAILED            36
                     45: #define ERR_INVALID_DEVICE              37
                     46: #define ERR_ACCESS_DENIED               38
                     47: 
                     48: #define MIN_VOLUME_SIZE                 19456
                     49: #define MAX_VOLUME_SIZE                 0x7fffFFFFffffFFFFI64
                     50: 
                     51: #define burn(mem,size) \
                     52:        memset(mem,0xff,size); \
                     53:        memset(mem,0,size);
                     54: 
                     55: #define WIDE(x) (LPWSTR)L##x
                     56: 
                     57: #include <string.h>
                     58: 
                     59: #pragma intrinsic(memcmp, memcpy, memset, strcat, strcmp, strcpy, strlen)
                     60: 
                     61: #ifdef NT4_DRIVER
                     62: 
                     63: #pragma warning( disable : 4201 )
                     64: #pragma warning( disable : 4214 )
                     65: #pragma warning( disable : 4115 )
                     66: #pragma warning( disable : 4100 )
                     67: #pragma warning( disable : 4101 )
                     68: #pragma warning( disable : 4057 )
                     69: #pragma warning( disable : 4244 )
                     70: #pragma warning( disable : 4514 )
                     71: #pragma warning( disable : 4127 )
                     72: 
                     73: 
                     74: #include <ntddk.h>             /* Standard header file for nt drivers */
                     75: #undef _WIN32_WINNT
                     76: #define        _WIN32_WINNT 0x0501
                     77: #include <ntdddisk.h>          /* Standard I/O control codes  */
                     78: #include <ntiologc.h>
                     79: 
                     80: #pragma warning( default : 4201 )
                     81: #pragma warning( default : 4214 )
                     82: #pragma warning( default : 4115 )
                     83: #pragma warning( default : 4100 )
                     84: #pragma warning( default : 4101 )
                     85: #pragma warning( default : 4057 )
                     86: #pragma warning( default : 4244 )
                     87: #pragma warning( default : 4127 )
                     88: 
                     89: /* #pragma warning( default : 4514 ) this warning remains disabled */
                     90: 
                     91: #define TCalloc(size) ((void *) ExAllocatePoolWithTag( NonPagedPool, size, 'MMCT' ))
                     92: #define TCfree(memblock) ExFreePoolWithTag( memblock, 'MMCT' )
                     93: 
                     94: #define DEVICE_DRIVER
                     95: 
                     96: #endif                         /* NT4_DRIVER */
                     97: 
                     98: 
                     99: #ifdef WIN9X_DRIVER
                    100: 
                    101: #pragma warning( disable : 4047 )
                    102: 
                    103: #include "iosdcls.inc"         /* VMM and IOS headers */
                    104: 
                    105: #pragma warning( default : 4047 )
                    106: 
                    107: #include <vwin32.h>
                    108: #include <winerror.h>
                    109: #undef WANTVDXWRAPS
                    110: #pragma warning( disable : 4229 )
                    111: #include <shell.h>
                    112: #pragma warning( default : 4229 )
                    113: #pragma hdrstop
                    114: #include <malloc.h>
                    115: #include <vmm.h>
                    116: #include "ifs.h"
                    117: #include <dbt.h>
                    118: #define MBYTE16 3967
                    119: #define UWORD unsigned short
                    120: #define UBYTE unsigned char
                    121: 
                    122: #define MBYTE16 3967
                    123: 
                    124: #define TCalloc(size) _PageAllocate(size % 4096 ? (size/4096)+1 : size/4096,\
                    125:        PG_SYS,0,0,0,MBYTE16,NULL,PAGEZEROINIT|PAGEFIXED|PAGECONTIG|PAGEUSEALIGN);
                    126: 
                    127: #define TCfree(memblock) _PageFree(memblock,0)
                    128: 
                    129: #define DEVICE_DRIVER
                    130: 
                    131: #endif                         /* WIN9X_DRIVER */
                    132: 
                    133: #ifdef DEVICE_DRIVER
                    134: 
                    135: #ifndef BOOL
                    136: typedef int BOOL;
                    137: #endif
                    138: 
                    139: #ifndef TRUE
                    140: #define TRUE 1
                    141: #endif
                    142: 
                    143: #ifndef FALSE
                    144: #define FALSE !TRUE
                    145: #endif
                    146: 
                    147: /* Define dummies for the drivers */
                    148: typedef int HFILE;
                    149: typedef unsigned int WPARAM;
                    150: typedef unsigned long LPARAM;
                    151: #define CALLBACK
                    152: 
                    153: #ifndef UINT
                    154: typedef unsigned int UINT;
                    155: #endif
                    156: 
                    157: #ifndef LRESULT
                    158: typedef unsigned long LRESULT;
                    159: #endif
                    160: 
                    161: #else
                    162: 
                    163: #define TCalloc malloc
                    164: #define TCfree free
                    165: 
                    166: #pragma warning( disable : 4201 )
                    167: #pragma warning( disable : 4214 )
                    168: #pragma warning( disable : 4115 )
                    169: #pragma warning( disable : 4514 )
                    170: 
                    171: #undef _WIN32_WINNT
                    172: #define        _WIN32_WINNT 0x0501
                    173: #include <windows.h>           /* Windows header */
                    174: #include <commctrl.h>          /* The common controls */
                    175: #include <process.h>           /* Process control */
                    176: #include <winioctl.h>
                    177: #include <stdio.h>             /* For sprintf */
                    178: 
                    179: #pragma warning( default : 4201 )
                    180: #pragma warning( default : 4214 )
                    181: #pragma warning( default : 4115 )
                    182: 
                    183: /* #pragma warning( default : 4514 ) this warning remains disabled */
                    184: 
                    185: /* This is needed to fix a bug with VC 5, the TCHAR macro _ttoi64 maps
                    186:    incorrectly to atoi64 when it should be _atoi64 */
                    187: #define atoi64 _atoi64
                    188: 
                    189: #endif                         /* DEVICE_DRIVER */
                    190: 
                    191: typedef UINT (_stdcall * diskio_f) (int, void *, UINT);
                    192: 
                    193: #pragma hdrstop

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.