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

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

unix.superglobalmegacorp.com

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