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

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.6 ! root        9: #define VERSION_STRING                  "3.0a"
1.1       root       10: 
                     11: // Version number to compare against driver
1.1.1.6 ! root       12: #define VERSION_NUM                                            0x030a
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: 
                     58: #define MIN_VOLUME_SIZE                 19456
1.1.1.6 ! root       59: #define MIN_HIDDEN_VOLUME_HOST_SIZE     ( MIN_VOLUME_SIZE * 2 + HIDDEN_VOL_HEADER_OFFSET + HEADER_SIZE )
1.1       root       60: #define MAX_VOLUME_SIZE                 0x7fffFFFFffffFFFFI64
1.1.1.6 ! root       61: #define MAX_FAT_VOLUME_SIZE                            0xFFFFFFFE00I64         // Should be possible to increase up to 0x1FFFFFFFC00I64 (untested)
        !            62: #define MAX_HIDDEN_VOLUME_HOST_SIZE     MAX_FAT_VOLUME_SIZE
        !            63: #define MAX_HIDDEN_VOLUME_SIZE          ( MAX_HIDDEN_VOLUME_HOST_SIZE - HIDDEN_VOL_HEADER_OFFSET - HEADER_SIZE )
1.1       root       64: 
                     65: #define burn(mem,size) \
                     66:        memset(mem,0xff,size); \
                     67:        memset(mem,0,size);
                     68: 
                     69: #define WIDE(x) (LPWSTR)L##x
                     70: 
                     71: #include <string.h>
                     72: 
                     73: #pragma intrinsic(memcmp, memcpy, memset, strcat, strcmp, strcpy, strlen)
                     74: 
                     75: #ifdef NT4_DRIVER
                     76: 
                     77: #pragma warning( disable : 4201 )
                     78: #pragma warning( disable : 4214 )
                     79: #pragma warning( disable : 4115 )
                     80: #pragma warning( disable : 4100 )
                     81: #pragma warning( disable : 4101 )
                     82: #pragma warning( disable : 4057 )
                     83: #pragma warning( disable : 4244 )
                     84: #pragma warning( disable : 4514 )
                     85: #pragma warning( disable : 4127 )
                     86: 
                     87: 
                     88: #include <ntddk.h>             /* Standard header file for nt drivers */
                     89: #undef _WIN32_WINNT
                     90: #define        _WIN32_WINNT 0x0501
                     91: #include <ntdddisk.h>          /* Standard I/O control codes  */
                     92: #include <ntiologc.h>
                     93: 
                     94: #pragma warning( default : 4201 )
                     95: #pragma warning( default : 4214 )
                     96: #pragma warning( default : 4115 )
                     97: #pragma warning( default : 4100 )
                     98: #pragma warning( default : 4101 )
                     99: #pragma warning( default : 4057 )
                    100: #pragma warning( default : 4244 )
                    101: #pragma warning( default : 4127 )
                    102: 
                    103: /* #pragma warning( default : 4514 ) this warning remains disabled */
                    104: 
                    105: #define TCalloc(size) ((void *) ExAllocatePoolWithTag( NonPagedPool, size, 'MMCT' ))
                    106: #define TCfree(memblock) ExFreePoolWithTag( memblock, 'MMCT' )
                    107: 
                    108: #define DEVICE_DRIVER
                    109: 
                    110: #endif                         /* NT4_DRIVER */
                    111: 
                    112: 
                    113: #ifdef WIN9X_DRIVER
                    114: 
                    115: #pragma warning( disable : 4047 )
                    116: 
                    117: #include "iosdcls.inc"         /* VMM and IOS headers */
                    118: 
                    119: #pragma warning( default : 4047 )
                    120: 
                    121: #include <vwin32.h>
                    122: #include <winerror.h>
                    123: #undef WANTVDXWRAPS
                    124: #pragma warning( disable : 4229 )
                    125: #include <shell.h>
                    126: #pragma warning( default : 4229 )
                    127: #pragma hdrstop
                    128: #include <malloc.h>
                    129: #include <vmm.h>
                    130: #include "ifs.h"
                    131: #include <dbt.h>
                    132: #define MBYTE16 3967
                    133: #define UWORD unsigned short
                    134: #define UBYTE unsigned char
                    135: 
                    136: #define MBYTE16 3967
                    137: 
                    138: #define TCalloc(size) _PageAllocate(size % 4096 ? (size/4096)+1 : size/4096,\
                    139:        PG_SYS,0,0,0,MBYTE16,NULL,PAGEZEROINIT|PAGEFIXED|PAGECONTIG|PAGEUSEALIGN);
                    140: 
                    141: #define TCfree(memblock) _PageFree(memblock,0)
                    142: 
                    143: #define DEVICE_DRIVER
                    144: 
                    145: #endif                         /* WIN9X_DRIVER */
                    146: 
                    147: #ifdef DEVICE_DRIVER
                    148: 
                    149: #ifndef BOOL
                    150: typedef int BOOL;
                    151: #endif
                    152: 
                    153: #ifndef TRUE
                    154: #define TRUE 1
                    155: #endif
                    156: 
                    157: #ifndef FALSE
                    158: #define FALSE !TRUE
                    159: #endif
                    160: 
                    161: /* Define dummies for the drivers */
                    162: typedef int HFILE;
                    163: typedef unsigned int WPARAM;
                    164: typedef unsigned long LPARAM;
                    165: #define CALLBACK
                    166: 
                    167: #ifndef UINT
                    168: typedef unsigned int UINT;
                    169: #endif
                    170: 
                    171: #ifndef LRESULT
                    172: typedef unsigned long LRESULT;
                    173: #endif
                    174: 
1.1.1.6 ! root      175: #else  // #ifdef DEVICE_DRIVER
1.1       root      176: 
                    177: #define TCalloc malloc
                    178: #define TCfree free
                    179: 
                    180: #pragma warning( disable : 4201 )
                    181: #pragma warning( disable : 4214 )
                    182: #pragma warning( disable : 4115 )
                    183: #pragma warning( disable : 4514 )
                    184: 
                    185: #undef _WIN32_WINNT
                    186: #define        _WIN32_WINNT 0x0501
                    187: #include <windows.h>           /* Windows header */
                    188: #include <commctrl.h>          /* The common controls */
                    189: #include <process.h>           /* Process control */
                    190: #include <winioctl.h>
                    191: #include <stdio.h>             /* For sprintf */
                    192: 
                    193: #pragma warning( default : 4201 )
                    194: #pragma warning( default : 4214 )
                    195: #pragma warning( default : 4115 )
                    196: 
                    197: /* #pragma warning( default : 4514 ) this warning remains disabled */
                    198: 
                    199: /* This is needed to fix a bug with VC 5, the TCHAR macro _ttoi64 maps
                    200:    incorrectly to atoi64 when it should be _atoi64 */
                    201: #define atoi64 _atoi64
                    202: 
                    203: #endif                         /* DEVICE_DRIVER */
                    204: 
                    205: typedef UINT (_stdcall * diskio_f) (int, void *, UINT);
                    206: 
                    207: #pragma hdrstop

unix.superglobalmegacorp.com

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