Annotation of truecrypt/driver vxd/tc9x.h, revision 1.1.1.1

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: typedef struct cryptvol
                      5: {
                      6:        PDCB ldcb;
                      7:        PDCB filehostdcb;       /* File host device, or main dcb if partition */
                      8:        int booted;             /* 0,1,2,256 depending on boot and error
                      9:                                   state of volume */
                     10:        int drive;              /* Dos drive number */
                     11:        ULONG cryptsectorfirst; /* 0x00000000 or starting sector (partitions) */
                     12:        ULONG cryptsectorlast;  /* 0x7ffffff0 or last sector (partitions) */
                     13:        PDCB physdevDCB;
                     14:        int mountfilehandle;    /* 0x00000000 for partitions */
                     15: 
                     16:        DDB addb;               /* Calldown ddb ptr, used only by
                     17:                                   IspInsertCalldown */
                     18:        DCB logicaldcb;
                     19: 
                     20:        PCRYPTO_INFO cryptoInfo;/* Encryption specific data */
                     21: 
                     22:        int notifytime;         /* Supports the PNP msg needed for Windows to 'see' a new drive */
                     23: 
                     24:        char mounted_file_name[512];    /* The mounted volume name, or
                     25:                                           \Device\... for partitions */
                     26: 
                     27: } cryptvol;
                     28: 
                     29: typedef struct partitionrec
                     30: {
                     31:        unsigned char boot;
                     32:        unsigned char sh;
                     33:        unsigned char ss;
                     34:        unsigned char sc;
                     35:        unsigned char system;
                     36:        unsigned char eh;
                     37:        unsigned char es;
                     38:        unsigned char ec;
                     39:        unsigned int StartSector;
                     40:        unsigned int NumSectors;
                     41: } partitionrec;
                     42: 
                     43: #define ior iop->IOP_ior
                     44: 
                     45: #ifndef arraysize
                     46: #define arraysize(p) (sizeof(p)/sizeof((p)[0]))
                     47: #endif
                     48: 
                     49: /* Everything below this line is automatically updated by the -mkproto-tool- */
                     50: 
                     51: VOID OnAsyncRequest ( PAEP aep );
                     52: USHORT OnInitialize ( PAEP_bi_init aep );
                     53: USHORT OnUninitialize ( PAEP_bi_uninit aep );
                     54: USHORT OnBootComplete ( PAEP_boot_done aep );
                     55: USHORT OnConfigDcb ( PAEP_dcb_config aep );
                     56: USHORT OnUnconfigDcb ( PAEP_dcb_unconfig aep );
                     57: VOID OnRequest ( PIOP iop );
                     58: int cmpvend ( char *a , char *b , int len );
                     59: int CheckDcbAlready ( PDCB dcb );
                     60: void DoCallDown ( PIOP iop );
                     61: BOOL OnSysDynamicDeviceInit ( void );
                     62: BOOL OnSysDynamicDeviceExit ( void );
                     63: DWORD OnDeviceIoControl ( PDIOCPARAMETERS p );
                     64: BOOL Kill_Drive ( cryptvol *cv );
                     65: int closeCrDevice ( cryptvol *cv , int mode );
                     66: int installthread ( void *t );
                     67: void sectorcopy ( char *dest , char *source , int num );
                     68: void cryptproc ( PIOP iop , cryptvol *cv );
                     69: void DoCallBack ( PIOP iop );
                     70: VOID partfilerequest ( PIOP iop );
                     71: int Add_Drive ( PDCB dcb , cryptvol *cv , int prefdrive );
                     72: int trymountfile ( PDCB dcb , cryptvol *cv , MOUNT_STRUCT *mf );
                     73: void readnullfilesize ( int hand );
                     74: void mountdiskfileR0 ( MOUNT_STRUCT *mf );
                     75: void outblock ( PIOP iop , char *outbuffer , int sectorstart , int sectorcount , cryptvol *cv , char *workbuff );
                     76: void inblock ( PIOP iop , char *outbuffer , int sectorstart , int sectorcount , cryptvol *cv );
                     77: int doR0fileio ( int sector , int numsectors , char *buffer , cryptvol *cv , int iorop );
                     78: int MapDosError ( int error );
                     79: int dophysblock2 ( PIOP iop , int sector , int numsectors , char *buffr , cryptvol *cv , USHORT iorop );
                     80: int dophysblock ( PIOP iop , int sector , int numsectors , char *buffr , cryptvol *cv , USHORT iorop );
                     81: void readlogical ( PIOP iop , int temp_block , int num_sectors , char *buffer , cryptvol *cv );
                     82: void writelogical ( PIOP iop , int temp_block , int num_sectors , char *buffer , cryptvol *cv );
                     83: BOOL OnSystemExit ( void );
                     84: void Post_message ( char *msg , char *header );
                     85: void ProcessWinMessagesBlueScreen ( void );
                     86: USHORT OnHalfSec ( PAEP_boot_done aep );
                     87: void readallpartitions ( MOUNT_STRUCT *mf , BOOL bVerifyOnly );
                     88: int DiskRead ( PDCB mydcb , PIOP myiop , unsigned int sector , unsigned int numsectors , char *buffr , USHORT iorop );
                     89: void UsePartitionInfo ( PDCB dcb , PIOP myiop , char *diskbuffer , unsigned int relative , int recursed , int *partnum , MOUNT_STRUCT *mf , BOOL bVerifyOnly );
                     90: int tryvol ( PDCB dcb , PIOP myiop , partitionrec *pr , MOUNT_STRUCT *mf , cryptvol **pcv );
                     91: struct cryptvol *checkpartition ( PIOP iop , partitionrec *pr );
                     92: int cmppart ( PDCB dcb , unsigned int secstart , cryptvol *cv );
                     93: struct cryptvol *addcryptedpartition ( PIOP iop , char *peek );
                     94: int tryaddpart ( cryptvol *cv , unsigned int secstart , unsigned int seclast , PDCB device );
                     95: int unlockdrive ( cryptvol *cv );
                     96: int lockdrive ( PDCB mydcb , PIOP myiop , int lockmode );
                     97: int AppAccessBlockDevice ( unsigned int devicenum , unsigned int sectorstart , unsigned int sectorlen , char *buffer , int mode );
                     98: void drivearrived ( void );

unix.superglobalmegacorp.com

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