Annotation of truecrypt/driver vxd/tc9x.h, revision 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.