![]() |
Ultibo API
C/C++ API for Ultibo Core
|
#include "ultibo/globaltypes.h"#include "ultibo/globalconst.h"#include "ultibo/storage.h"#include "ultibo/ultibo.h"Go to the source code of this file.
Data Structures | |
| struct | _STORAGE_DEVICE_EVENT |
| struct | _CACHE_STATISTICS |
| struct | _FILE_SEARCH_REC |
| struct | _DISK_SEARCH_REC |
| struct | _PARTITION_SEARCH_REC |
| struct | _VOLUME_SEARCH_REC |
| struct | _DRIVE_SEARCH_REC |
| struct | _IMAGE_SEARCH_REC |
| struct | _CATALOG_SEARCH_REC |
| struct | _MOUNT_SEARCH_REC |
| struct | _JUNCTION_SEARCH_REC |
| struct | _STREAM_SEARCH_REC |
| struct | _LINK_SEARCH_REC |
| struct | _BIOS_PB |
| struct | _EXT_BIOS_PB |
| struct | _NTFS_BIOS_PB |
| struct | _PARTITION_ENTRY |
| struct | _PARTITION_TABLE |
| struct | _MASTER_BOOT_RECORD |
| struct | _EXT_MASTER_BOOT_RECORD |
| struct | _PARTITION_RECORD |
| struct | _BOOT_SECTOR |
| struct | _EXT_BOOT_SECTOR |
| struct | _NTFS_BOOT_SECTOR |
| struct | _EXTFS_BOOT_SECTOR |
Macros | |
| #define | FILESYS_LOGGING_DESCRIPTION "Filesystem Logging" |
| #define | FILESYS_STORAGE_TIMER_INTERVAL 100 |
| Timer interval for device additions or insertions. | |
| #define | FILESYS_LOCK_NONE 0 |
| #define | FILESYS_LOCK_READ 1 |
| #define | FILESYS_LOCK_WRITE 2 |
| #define | FILESYS_LOCK_AUTO 3 |
| Not intended for use in all situations, use with extreme caution. | |
| #define | FILESYS_CACHE_THREAD_NAME "Filesystem Cache" |
| Thread name for Filesystem cache threads. | |
| #define | FILESYS_CACHE_THREAD_PRIORITY THREAD_PRIORITY_HIGHER |
| Thread priority for Filesystem cache threads. | |
| #define | FILESYS_CACHE_TIMER_INTERVAL 50 |
| 50ms timer interval for Filesystem cache | |
| #define | FILESYS_CACHE_FLUSH_TIMEOUT 3000 |
| Filesystem cache flush timeout 3 seconds. | |
| #define | FILESYS_CACHE_DISCARD_TIMEOUT 180000 |
| Filesystem cache discard timeout 3 minutes. | |
| #define | FILESYS_ENTRY_TIMER_INTERVAL 1000 |
| 1000ms timer interval for Filesystem entries | |
| #define | FILESYS_ENTRY_DELETE_TIMEOUT 30000 |
| Filesystem entry delete timeout 30 seconds. | |
| #define | CACHE_TIMER_KEY_NONE TIMER_KEY_NONE |
| #define | CACHE_TIMER_KEY_MAX TIMER_KEY_MAX |
| #define | CACHE_TIMER_KEY_MIN TIMER_KEY_MIN |
| #define | ENTRY_TIMER_KEY_NONE TIMER_KEY_NONE |
| #define | ENTRY_TIMER_KEY_MAX TIMER_KEY_MAX |
| #define | ENTRY_TIMER_KEY_MIN TIMER_KEY_MIN |
| #define | MIN_FLOPPY_DEVICE 0x00 |
| #define | MAX_FLOPPY_DEVICE 0x7F |
| #define | MIN_FIXED_DEVICE 0x80 |
| #define | MAX_FIXED_DEVICE 0xFF |
| Extends over CDROM/Other. | |
| #define | MIN_CDROM_DEVICE 0xE0 |
| #define | MAX_CDROM_DEVICE 0xEF |
| #define | MIN_OTHER_DEVICE 0xF0 |
| #define | MAX_OTHER_DEVICE 0xFF |
| #define | INVALID_PARTITION -1 |
| #define | INVALID_DEVICE -1 |
| #define | INVALID_VOLUME 0 |
| #define | MIN_PARTITION 0 |
| #define | MAX_PARTITION 3 |
| #define | MAX_EXTENDED 1 |
| Only 2 partitions in second level. | |
| #define | MAX_PARTITION_COUNT 4 |
| #define | MIN_FLOPPY_DRIVE MIN_DRIVE |
| #define | MAX_FLOPPY_DRIVE MIN_DRIVE + 1 |
| #define | MIN_FIXED_DRIVE MIN_DRIVE + 2 |
| #define | MAX_FIXED_DRIVE MAX_DRIVE |
| #define | MIN_SECTOR_SIZE 512 |
| #define | MAX_SECTOR_SIZE 4096 |
| #define | ISO_SECTOR_SIZE 2048 |
| #define | VOLUME_PREFIX "\\Volume" |
| eg \Volume1 | |
| #define | EXTENDED_PREFIX "\\Extended" |
| eg \Extended1 | |
| #define | PARTITION_PREFIX "\\Partition" |
| eg \Partition1 | |
| #define | CONTROLLER_PREFIX "\\Controller" |
| eg \Controller0 | |
| #define | CDROM_DEVICE_PREFIX "\\Cdrom" |
| eg \Cdrom0 | |
| #define | OTHER_DEVICE_PREFIX "\\Other" |
| eg \Other0 | |
| #define | FIXED_DEVICE_PREFIX "\\Harddisk" |
| eg \Harddisk0 | |
| #define | FLOPPY_DEVICE_PREFIX "\\Floppy" |
| eg \Floppy0 | |
| #define | UNKNOWN_DEVICE_PREFIX "\\Unknown" |
| eg \Unknown0 | |
| #define | VOLUME_PATH_PREFIX "\\\\?" |
| eg \?\Volume1\Home | |
| #define | DEVICE_PATH_PREFIX "\\\." |
| eg \.\Harddisk0\Partition1\Home | |
| #define | REPARSE_PATH_PREFIX "\\??\\" |
| #define | BOOT_RECORD_SIGNATURE 0xAA55 |
| #define | PARTITION_RECORD_SIGNATURE 0xAA55 |
| #define | BOOT_SECTOR_SIGNATURE 0xAA55 |
| #define | FIND_FLAG_NONE 0x00000000 |
| #define | FIND_FLAG_FILE_NAMES 0x00000001 |
| #define | FIND_WILDCARD_NAME "*.*" |
| #define | FIND_WILDCARD_STREAM "*" |
| #define | fsFromBeginning 0 |
| #define | fsFromCurrent 1 |
| #define | fsFromEnd 2 |
| #define | fmOpenRead 0x0000 |
| #define | fmOpenWrite 0x0001 |
| #define | fmOpenReadWrite 0x0002 |
| #define | fmShareCompat 0x0000 |
| #define | fmShareExclusive 0x0010 |
| #define | fmShareDenyWrite 0x0020 |
| #define | fmShareDenyRead 0x0030 |
| #define | fmShareDenyNone 0x0040 |
| #define | fmOpenMask 0x000F |
| #define | fmShareMask 0x00F0 |
| #define | faReadOnly 0x00000001 |
| #define | faHidden 0x00000002 |
| #define | faSysFile 0x00000004 |
| #define | faVolumeID 0x00000008 |
| #define | faDirectory 0x00000010 |
| #define | faArchive 0x00000020 |
| #define | faSymLink 0x00000400 |
| #define | faVirtual 0x00010000 |
| #define | faAnyFile 0x000001FF |
| #define | faDot 0x01000000 |
| #define | faDotDot 0x02000000 |
| #define | faFile 0x04000000 |
| #define | faStream 0x08000000 |
| #define | faFlagName 0x00100000 |
| Used for FAT case flags. | |
| #define | faFlagExt 0x00200000 |
| Used for FAT case flags. | |
| #define | faFlagBoth (faFlagName | faFlagExt) |
| #define | faFlagLong 0x00400000 |
| Not currently used. | |
| #define | faFlagMetafile 0x00800000 |
| Used for NTFS Metafiles. | |
| #define | faFlagMask 0x0FFF0000 |
| Used to preserve internal attributes. | |
| #define | faFindMask 0x0000FFFF |
| Used to mask internal attributes. | |
| #define | faMatchMask (faFile | faStream | faVolumeID | faDirectory) |
| #define | faDevice 0x00000040 |
| #define | faNormal 0x00000080 |
| #define | faTemporary 0x00000100 |
| #define | faSparse 0x00000200 |
| #define | faReparse 0x00000400 |
| See also faSymLink. | |
| #define | faCompressed 0x00000800 |
| #define | faOffline 0x00001000 |
| #define | faNotIndexed 0x00002000 |
| #define | faEncrypted 0x00004000 |
| #define | faMftDirectory 0x10000000 |
| Used only by FileName Attribute. | |
| #define | faMftIndexView 0x20000000 |
| Used by both the StandardInformation and FileName attributes. | |
| #define | faNone 0x00000000 |
| #define | faStandard (faReadOnly | faHidden | faSysFile | faArchive) |
| #define | faLongName (faReadOnly | faHidden | faSysFile | faVolumeID) |
| #define | faLongMask (faReadOnly | faHidden | faSysFile | faVolumeID | faDirectory | faArchive) |
| #define | vaNone 0x00000000 |
| #define | vaCaseSensitive 0x00000001 |
| #define | vaCasePreserved 0x00000002 |
| #define | vaUnicode 0x00000004 |
| #define | vaPersistentAcls 0x00000008 |
| #define | vaFileCompression 0x00000010 |
| #define | vaVolumeQuotas 0x00000020 |
| #define | vaSparseFiles 0x00000040 |
| #define | vaReparsePoints 0x00000080 |
| #define | vaRemoteStorage 0x00000100 |
| #define | vaLongNamesApi 0x00004000 |
| #define | vaVolumeCompressed 0x00008000 |
| #define | vaObjectIds 0x00010000 |
| #define | vaEncryption 0x00020000 |
| #define | vaNamedStreams 0x00040000 |
| #define | vaReadOnly 0x00080000 |
| #define | vaBootCatalog 0x01000000 |
| Used to indicate support for ISO Boot Catalogs. | |
| #define | vaVirtualVolume 0x02000000 |
| Used to indicate Volume is Virtual or on a Virtual Device. | |
| #define | vaFolderEncryption 0x04000000 |
| Used to indicate support for Folder Encryption (New files in folder are automatically encrypted). | |
| #define | vaFolderCompression 0x08000000 |
| Used to indicate support for Folder Compression (New files in folder are automatically compressed). | |
| #define | daNone 0x00000000 |
| #define | daWriteable 0x00000001 |
| #define | daVirtual 0x00000002 |
| #define | iaNone 0x00000000 |
| #define | iaDisk 0x00000001 |
| Memory/File/Device. | |
| #define | iaPartition 0x00000002 |
| Memory/File/Device. | |
| #define | iaVolume 0x00000004 |
| Memory/File/Device. | |
| #define | iaDrive 0x00000008 |
| Memory/File/Device. | |
| #define | iaCDROM 0x00000010 |
| Memory/File/Device/Iso. | |
| #define | iaDVD 0x00000020 |
| Memory/File/Device/Iso. | |
| #define | iaFlat 0x00000040 |
| Bochs. | |
| #define | iaSparse 0x00000080 |
| Bochs. | |
| #define | iaGrowing 0x00000100 |
| Bochs. | |
| #define | iaFixed 0x00000200 |
| Vpc/Vbox/Vmware. | |
| #define | iaDynamic 0x00000400 |
| Vpc/Vbox/Vmware. | |
| #define | iaSplit 0x00000800 |
| Vpc/Vmware/WIM/Ghost/Portlock/Powerquest. | |
| #define | iaUndoable 0x00001000 |
| Vpc/Vbox/Vmware. | |
| #define | iaReadable 0x00010000 |
| All. | |
| #define | iaWriteable 0x00020000 |
| All. | |
| #define | iaEraseable 0x00040000 |
| All. | |
| #define | caNone 0x00000000 |
| #define | caDefault 0x00000001 |
| Initial/Default Entry. | |
| #define | caBootable 0x00000002 |
| Boot Indicator. | |
| #define | caNoEmulation 0x00000004 |
| No Emulation. | |
| #define | caFloppy12M 0x00000008 |
| 1.2M | |
| #define | caFloppy144M 0x00000010 |
| 1.44M | |
| #define | caFloppy288M 0x00000020 |
| 2.88M | |
| #define | caHardDisk 0x00000040 |
| Hard Disk. | |
| #define | NAME_HASH_SIZE 8 |
| Used for Internal Name Hash Generation only. | |
| #define | MAX_PARTITION_ID 255 |
| #define | pidUnused 0 |
| Empty. | |
| #define | pidFAT12 1 |
| #define | pidXENIXROOT 2 |
| #define | pidXENIXUSR 3 |
| #define | pidFAT16 4 |
| under 32M | |
| #define | pidExtended 5 |
| #define | pidFAT16HUGE 6 |
| over 32M | |
| #define | pidHPFSNTFS 7 |
| #define | pidAIXOS2 8 |
| #define | pidAIX 9 |
| #define | pidOS2BOOT 10 |
| #define | pidFAT32 11 |
| #define | pidFAT32LBA 12 |
| #define | pidUnknown013 13 |
| #define | pidFAT16LBA 14 |
| #define | pidExtLBA 15 |
| #define | pidOPUS 16 |
| #define | pidHIDDEN12 17 |
| #define | pidCompaqDiag 18 |
| #define | pidUnknown019 19 |
| #define | pidHIDDEN16 20 |
| #define | pidUnknown021 21 |
| #define | pidHIDDEN16HUGE 22 |
| ?????? | |
| #define | pidHIDDENHPFS 23 |
| #define | pidASTSWAP 24 |
| #define | pidWillowtech 25 |
| #define | pidUnknown026 26 |
| #define | pidHIDDEN32 27 |
| #define | pidHIDDEN32LBA 28 |
| #define | pidUnknown029 29 |
| #define | pidHIDDEN16LBA 30 |
| #define | pidUnknown031 31 |
| #define | pidWillowsoft 32 |
| #define | pidOxygen 33 |
| #define | pidOxygenExtended 34 |
| #define | pidReserved035 35 |
| #define | pidNECMSDOS 36 |
| #define | pidUnknown037 37 |
| #define | pidUnknown038 38 |
| #define | pidUnknown039 39 |
| #define | pidUnknown040 40 |
| #define | pidUnknown041 41 |
| #define | pidUnknown042 42 |
| #define | pidUnknown043 43 |
| #define | pidUnknown044 44 |
| #define | pidUnknown045 45 |
| #define | pidUnknown046 46 |
| #define | pidUnknown047 47 |
| #define | pidUnknown048 48 |
| #define | pidReserved049 49 |
| #define | pidAlienNOS 50 |
| #define | pidReserved051 51 |
| #define | pidReserved052 52 |
| #define | pidOS2JFS 53 |
| #define | pidReserved054 54 |
| #define | pidUnknown055 55 |
| #define | pidTheos057 56 |
| #define | pidPlan9 57 |
| #define | pidTheos058 58 |
| #define | pidTheos059 59 |
| #define | pidPowerQuest 60 |
| #define | pidHiddenNetware 61 |
| #define | pidUnknown062 62 |
| #define | pidUnknown063 63 |
| #define | pidVENIX286 64 |
| #define | pidPersonalRISC 65 |
| #define | pidSFS 66 |
| #define | pidPTSDOS 67 |
| #define | pidGoBack 68 |
| #define | pidEUMEL069 69 |
| #define | pidEUMEL070 70 |
| #define | pidEUMEL071 71 |
| #define | pidEUMEL072 72 |
| #define | pidUnknown073 73 |
| #define | pidAdaOS 74 |
| #define | pidUnknown075 75 |
| #define | pidOberon 76 |
| #define | pidQNX4077 77 |
| #define | pidQNX4078 78 |
| #define | pidQNX4079 79 |
| #define | pidOnTrack080 80 |
| #define | pidNOVELL081 81 |
| #define | pidCPM 82 |
| #define | pidOnTrack083 83 |
| #define | pidOnTrack084 84 |
| #define | pidEZDrive 85 |
| #define | pidGoldenBow 86 |
| #define | pidUnknown087 87 |
| #define | pidUnknown088 88 |
| #define | pidUnknown089 89 |
| #define | pidUnknown090 90 |
| #define | pidUnknown091 91 |
| #define | pidPriamEdisk 92 |
| #define | pidUnknown093 93 |
| #define | pidUnknown094 94 |
| #define | pidUnknown095 95 |
| #define | pidUnknown096 96 |
| #define | pidSpeedStor097 97 |
| #define | pidUnknown098 98 |
| #define | pidSysV 99 |
| #define | pidNetware286 100 |
| #define | pidNWFS 101 |
| Traditional / Netware 6 Master. | |
| #define | pidUnknown102 102 |
| #define | pidNovell103 103 |
| #define | pidNovell104 104 |
| #define | pidNSS 105 |
| NSS / Netware 6. | |
| #define | pidUnknown106 106 |
| #define | pidUnknown107 107 |
| #define | pidUnknown108 108 |
| #define | pidUnknown109 109 |
| #define | pidUnknown110 110 |
| #define | pidUnknown111 111 |
| #define | pidDiskSecure 112 |
| #define | pidUnknown113 113 |
| #define | pidUnknown114 114 |
| #define | pidReserved115 115 |
| #define | pidReserved116 116 |
| #define | pidPCIX 117 |
| #define | pidReserved118 118 |
| #define | pidUnknown119 119 |
| #define | pidUnknown120 120 |
| #define | pidUnknown121 121 |
| #define | pidUnknown122 122 |
| #define | pidUnknown123 123 |
| #define | pidUnknown124 124 |
| #define | pidUnknown125 125 |
| #define | pidUnknown126 126 |
| #define | pidUnknown127 127 |
| #define | pidMinix 128 |
| #define | pidLinuxMinix 129 |
| #define | pidLinuxSwap 130 |
| #define | pidLinuxNative 131 |
| #define | pidHIDDENC 132 |
| #define | pidLinuxExtended 133 |
| #define | pidFAT16Stripe 134 |
| #define | pidNTFSStripe 135 |
| #define | pidUnknown136 136 |
| #define | pidUnknown137 137 |
| #define | pidUnknown138 138 |
| #define | pidUnknown139 139 |
| #define | pidUnknown140 140 |
| #define | pidUnknown141 141 |
| #define | pidUnknown142 142 |
| #define | pidUnknown143 143 |
| #define | pidUnknown144 144 |
| #define | pidUnknown145 145 |
| #define | pidUnknown146 146 |
| #define | pidAmoeba 147 |
| #define | pidAmoebaBBT 148 |
| #define | pidUnknown149 149 |
| #define | pidUnknown150 150 |
| #define | pidUnknown151 151 |
| #define | pidUnknown152 152 |
| #define | pidUnknown153 153 |
| #define | pidUnknown154 154 |
| #define | pidUnknown155 155 |
| #define | pidUnknown156 156 |
| #define | pidUnknown157 157 |
| #define | pidUnknown158 158 |
| #define | pidUnknown159 159 |
| #define | pidPhoenixPM 160 |
| #define | pidReserved161 161 |
| #define | pidUnknown162 162 |
| #define | pidReserved163 163 |
| #define | pidReserved164 164 |
| #define | pidFreeBSD 165 |
| #define | pidOpenBSD 166 |
| #define | pidNeXTStep 167 |
| #define | pidUnknown168 168 |
| #define | pidUnknown169 169 |
| #define | pidUnknown170 170 |
| #define | pidDarwinBoot 171 |
| #define | pidUnknown172 172 |
| #define | pidUnknown173 173 |
| #define | pidUnknown174 174 |
| #define | pidUnknown175 175 |
| #define | pidUnknown176 176 |
| #define | pidUnknown177 177 |
| #define | pidUnknown178 178 |
| #define | pidUnknown179 179 |
| #define | pidReserved180 180 |
| #define | pidUnknown181 181 |
| #define | pidFAT16MirrorA 182 |
| #define | pidNTFSMirrorA 183 |
| #define | pidBSDIswap 184 |
| #define | pidUnknown185 185 |
| #define | pidUnknown186 186 |
| #define | pidUnknown187 187 |
| #define | pidUnknown188 188 |
| #define | pidUnknown189 189 |
| #define | pidUnknown190 190 |
| #define | pidUnknown191 191 |
| #define | pidUnknown192 192 |
| #define | pidDRDOSFAT12 193 |
| #define | pidUnknown194 194 |
| #define | pidUnknown195 195 |
| #define | pidDRDOSFAT16 196 |
| #define | pidUnknown197 197 |
| #define | pidFAT16MirrorB 198 |
| #define | pidNTFSMirrorB 199 |
| #define | pidUnknown200 200 |
| #define | pidUnknown201 201 |
| #define | pidUnknown202 202 |
| #define | pidUnknown203 203 |
| #define | pidUnknown204 204 |
| #define | pidUnknown205 205 |
| #define | pidUnknown206 206 |
| #define | pidUnknown207 207 |
| #define | pidUnknown208 208 |
| #define | pidUnknown209 209 |
| #define | pidTinyEFAT 210 |
| #define | pidEFAT 211 |
| #define | pidSecuredEFAT 212 |
| #define | pidOpticalEFAT 213 |
| #define | pidUnknown214 214 |
| #define | pidUnknown215 215 |
| #define | pidCPM86 216 |
| #define | pidUnknown217 217 |
| #define | pidUnknown218 218 |
| #define | pidConcurrentCPM 219 |
| #define | pidUnknown220 220 |
| #define | pidUnknown221 221 |
| #define | pidUnknown222 222 |
| #define | pidUnknown223 223 |
| #define | pidUnknown224 224 |
| #define | pidSpeedStorFAT12 225 |
| #define | pidUnknown226 226 |
| #define | pidUnknown227 227 |
| #define | pidSpeedStorFAT16 228 |
| #define | pidReserved229 229 |
| #define | pidReserved230 230 |
| #define | pidUnknown231 231 |
| #define | pidUnknown232 232 |
| #define | pidUnknown233 233 |
| #define | pidUnknown234 234 |
| #define | pidBeOSBFS1 235 |
| #define | pidUnknown236 236 |
| #define | pidUnknown237 237 |
| #define | pidUnknown238 238 |
| #define | pidUnknown239 239 |
| #define | pidLinuxRISC 240 |
| #define | pidStorageDimension 241 |
| #define | pidDOS33Secondary 242 |
| #define | pidSpeedStor243 243 |
| #define | pidSpeedStor244 244 |
| #define | pidPrologue 245 |
| #define | pidSpeedStor246 246 |
| #define | pidOSGEFAT 247 |
| #define | pidUnknown248 248 |
| #define | pidUnknown249 249 |
| #define | pidBochsX86 250 |
| #define | pidVMware 251 |
| #define | pidVMwareSwap 252 |
| #define | pidLinuxRAID 253 |
| #define | pidLANstep 254 |
| #define | pidXenixBBT 255 |
| #define | FILESYS_ATA_DEVICE_DESCRIPTION "ATA Storage Device" |
| #define | FILESYS_ATAPI_DEVICE_DESCRIPTION "ATAPI Storage Device" |
| #define | FILESYS_SCSI_DEVICE_DESCRIPTION "SCSI Storage Device" |
| #define | FILESYS_USB_DEVICE_DESCRIPTION "USB Storage Device" |
| #define | FILESYS_MMC_DEVICE_DESCRIPTION "MMC/SD Storage Device" |
| #define | FILESYS_ATA_CONTROLLER_DESCRIPTION "ATA Storage Controller" |
| #define | FILESYS_ATAPI_CONTROLLER_DESCRIPTION "ATAPI Storage Controller" |
| #define | FILESYS_SCSI_CONTROLLER_DESCRIPTION "SCSI Storage Controller" |
| #define | FILESYS_USB_CONTROLLER_DESCRIPTION "USB Storage Controller" |
| #define | FILESYS_MMC_CONTROLLER_DESCRIPTION "MMC/SD Storage Controller" |
Enumerations | |
| enum | _MEDIA_TYPE { mtUNKNOWN , mtINVALID , mtFLOPPY , mtFIXED , mtREMOVABLE , mtCDROM , mtDVD , mtOTHER } |
| enum | _FLOPPY_TYPE { ftUNKNOWN , ftINVALID , ft360K , ft12M , ft720K , ft144M , ft288M , ftATAPI } |
| enum | _IMAGE_TYPE { itUNKNOWN , itINVALID , itMEMORY , itFILE , itDEVICE , itISO , itBOCHS , itVMWARE , itVPC , itVBOX } |
| enum | _CACHE_STATE { csCLEAN , csDIRTY } |
| enum | _CACHE_MODE { cmNONE , cmREADONLY , cmREADWRITE } |
| enum | _CACHE_PAGE_TYPE { ptNONE , ptDEVICE } |
| enum | _CACHE_PAGE_STATE { psUNKNOWN , psEMPTY , psCLEAN , psDIRTY } |
| enum | _CACHE_PAGE_CONTENT { pcUNKNOWN , pcDATA , pcDIRECTORY , pcENTRY , pcSYSTEM } |
Functions | |
| uint32_t STDCALL | file_sys_start (void) |
| uint32_t STDCALL | file_sys_stop (void) |
| BOOL STDCALL | file_sys_start_completed (void) |
| Returns True if the filesystem has been started. | |
| void STDCALL | file_sys_async_start (void *data) |
| uint8_t STDCALL | GetPathDrive (const char *path) |
| DRIVE_TYPE STDCALL | GetDriveType (uint8_t drive) |
| void STDCALL | GetDriveData (uint8_t drive, DRIVE_DATA *data) |
| uint32_t STDCALL | GetDriveAttr (uint8_t drive) |
| uint32_t STDCALL | GetDriveLabel (uint8_t drive, char *label, uint32_t len) |
| BOOL STDCALL | SetDriveLabel (uint8_t drive, const char *label) |
| uint32_t STDCALL | GetDriveSerial (uint8_t drive) |
| BOOL STDCALL | SetDriveSerial (uint8_t drive, uint32_t serial) |
| BOOL STDCALL | IsDriveValid (uint8_t drive) |
| uint32_t STDCALL | GetValidDrives (void) |
| uint32_t STDCALL | GetValidDriveNames (char *names, uint32_t len) |
| uint32_t STDCALL | GetDriveFreeSpace (uint8_t drive) |
| int64_t STDCALL | GetDriveFreeSpaceEx (uint8_t drive) |
| uint32_t STDCALL | GetDriveTotalSpace (uint8_t drive) |
| int64_t STDCALL | GetDriveTotalSpaceEx (uint8_t drive) |
| BOOL STDCALL | GetDriveInformation (const char *path, uint32_t *clustersize, int64_t *totalclustercount, int64_t *freeclustercount) |
| uint8_t STDCALL | GetCurrentDrive (void) |
| BOOL STDCALL | SetCurrentDrive (const char *drive) |
| HANDLE STDCALL | FileOpen (const char *filename, int mode) |
| HANDLE STDCALL | FileCreate (const char *filename) |
| BOOL STDCALL | DeleteFile (const char *filename) |
| void STDCALL | FileClose (HANDLE handle) |
| BOOL STDCALL | RenameFile (const char *oldname, const char *newname) |
| int32_t STDCALL | FileSeek (HANDLE handle, int32_t offset, int32_t origin) |
| BOOL STDCALL | FileFlush (HANDLE handle) |
| BOOL STDCALL | FileTruncate (HANDLE handle) |
| BOOL STDCALL | SetEndOfFile (HANDLE handle) |
| BOOL STDCALL | EndOfFile (HANDLE handle) |
| int32_t STDCALL | FilePos (HANDLE handle) |
| int32_t STDCALL | FileSize (HANDLE handle) |
| int STDCALL | FileAge (const char *filename) |
| BOOL STDCALL | FileExists (const char *filename) |
| int STDCALL | FileGetAttr (const char *filename) |
| int STDCALL | FileGetDate (HANDLE handle) |
| int STDCALL | FileSetAttr (const char *filename, int attr) |
| int STDCALL | FileSetDate (HANDLE handle, int age) |
| int32_t STDCALL | FileRead (HANDLE handle, void *buffer, int32_t count) |
| int32_t STDCALL | FileWrite (HANDLE handle, void *buffer, int32_t count) |
| BOOL STDCALL | CreateDir (const char *dirname) |
| BOOL STDCALL | RemoveDir (const char *dirname) |
| BOOL STDCALL | RenameDir (const char *oldname, const char *newname) |
| uint32_t STDCALL | GetCurrentDir (char *dirname, uint32_t len) |
| BOOL STDCALL | SetCurrentDir (const char *dirname) |
| BOOL STDCALL | DirectoryExists (const char *dirname) |
| void STDCALL | ForceDirectories (char *dirname) |
| void STDCALL | DeleteTree (const char *dirname) |
| BOOL STDCALL | FileCopy (const char *sourcefile, const char *destfile, BOOL failifexists) |
| BOOL STDCALL | FileCopyEx (const char *sourcefile, const char *destfile, BOOL failifexists, BOOL usesourcedate, int destdate, BOOL usesourceattr, int destattr) |
| uint32_t STDCALL | GetShortName (const char *filename, char *shortname, uint32_t len) |
| uint32_t STDCALL | GetLongName (const char *filename, char *longname, uint32_t len) |
| uint32_t STDCALL | GetTrueName (const char *filename, char *truename, uint32_t len) |
| int64_t STDCALL | FileSeekEx (HANDLE handle, int64_t offset, int32_t origin) |
| BOOL STDCALL | EndOfFileEx (HANDLE handle) |
| int64_t STDCALL | FilePosEx (HANDLE handle) |
| int64_t STDCALL | FileSizeEx (HANDLE handle) |
| FILETIME STDCALL | FileAgeEx (const char *filename) |
| int STDCALL | FileGetAttrEx (HANDLE handle) |
| FILETIME STDCALL | FileGetDateEx (HANDLE handle) |
| int STDCALL | FileSetDateEx (HANDLE handle, FILETIME age) |
| BOOL STDCALL | GetFileTime (HANDLE handle, FILETIME *createtime, FILETIME *accesstime, FILETIME *writetime) |
| BOOL STDCALL | SetFileTime (HANDLE handle, FILETIME *createtime, FILETIME *accesstime, FILETIME *writetime) |
| int STDCALL | FindFirstEx (const char *path, FILE_SEARCH_REC *searchrec) |
| int STDCALL | FindNextEx (FILE_SEARCH_REC *searchrec) |
| void STDCALL | FindCloseEx (FILE_SEARCH_REC *searchrec) |
| BOOL STDCALL | DefineDosDevice (uint32_t dwflags, const char *lpdevicename, const char *lptargetpath) |
| UINT STDCALL | GetDiskType (const char *lprootpathname) |
| GetDriveType - Already defined above. | |
| BOOL STDCALL | GetDiskFreeSpace (const char *lprootpathname, uint32_t *lpsectorspercluster, uint32_t *lpbytespersector, uint32_t *lpnumberoffreeclusters, uint32_t *lptotalnumberofclusters) |
| BOOL STDCALL | GetDiskFreeSpaceEx (const char *lpdirectoryname, ULARGE_INTEGER *lpfreebytesavailabletocaller, ULARGE_INTEGER *lptotalnumberofbytes, ULARGE_INTEGER *lptotalnumberoffreebytes) |
| uint32_t STDCALL | GetLogicalDrives (void) |
| uint32_t STDCALL | GetLogicalDriveStrings (uint32_t nbufferlength, char *lpbuffer) |
| BOOL STDCALL | GetVolumeInformation (const char *lprootpathname, char *lpvolumenamebuffer, uint32_t nvolumenamesize, DWORD *lpvolumeserialnumber, uint32_t *lpmaximumcomponentlength, uint32_t *lpfilesystemflags, char *lpfilesystemnamebuffer, uint32_t nfilesystemnamesize) |
| uint32_t STDCALL | QueryDosDevice (const char *lpdevicename, char *lptargetpath, uint32_t ucchmax) |
| BOOL STDCALL | SetVolumeLabel (const char *lprootpathname, const char *lpvolumename) |
| BOOL STDCALL | AreFileApisANSI (void) |
| BOOL STDCALL | CloseHandle (HANDLE hobject) |
| BOOL STDCALL | CopyFile (const char *lpexistingfilename, const char *lpnewfilename, BOOL bfailifexists) |
| HANDLE STDCALL | CreateFile (const char *lpfilename, uint32_t dwdesiredaccess, uint32_t dwsharemode, SECURITY_ATTRIBUTES *lpsecurityattributes, uint32_t dwcreationdisposition, uint32_t dwflagsandattributes, HANDLE htemplatefile) |
| BOOL STDCALL | FindCloseFile (HANDLE hfindfile) |
| HANDLE STDCALL | FindFirstFile (const char *lpfilename, WIN32_FIND_DATAA *lpfindfiledata) |
| BOOL STDCALL | FindNextFile (HANDLE hfindfile, WIN32_FIND_DATAA *lpfindfiledata) |
| BOOL STDCALL | FlushFileBuffers (HANDLE hfile) |
| uint32_t STDCALL | GetFileAttributes (const char *lpfilename) |
| BOOL STDCALL | GetFileInformationByHandle (HANDLE hfile, BY_HANDLE_FILE_INFORMATION *lpfileinformation) |
| uint32_t STDCALL | GetFileSize (HANDLE hfile, DWORD *lpfilesizehigh) |
| uint32_t STDCALL | GetFullPathName (const char *lpfilename, uint32_t nbufferlength, char *lpbuffer, char *lpfilepart) |
| uint32_t STDCALL | GetShortPathName (const char *lpszlongpath, char *lpszshortpath, uint32_t cchbuffer) |
| BOOL STDCALL | MoveFile (const char *lpexistingfilename, const char *lpnewfilename) |
| BOOL STDCALL | ReadFile (HANDLE hfile, void *lpbuffer, uint32_t nnumberofbytestoread, DWORD *lpnumberofbytesread, OVERLAPPED *lpoverlapped) |
| void STDCALL | SetFileApisToANSI (void) |
| void STDCALL | SetFileApisToOEM (void) |
| BOOL STDCALL | SetFileAttributes (const char *lpfilename, uint32_t dwfileattributes) |
| uint32_t STDCALL | SetFilePointer (HANDLE hfile, long ldistancetomove, long *lpdistancetomovehigh, uint32_t dwmovemethod) |
| BOOL STDCALL | SetFilePointerEx (HANDLE hfile, LARGE_INTEGER lidistancetomove, LARGE_INTEGER *lpnewfilepointer, uint32_t dwmovemethod) |
| BOOL STDCALL | WriteFile (HANDLE hfile, void *lpbuffer, uint32_t nnumberofbytestowrite, DWORD *lpnumberofbyteswritten, OVERLAPPED *lpoverlapped) |
| uint32_t STDCALL | GetLongPathName (const char *lpszshortpath, char *lpszlongpath, uint32_t cchbuffer) |
| uint32_t STDCALL | GetFinalPathNameByHandle (HANDLE hfile, char *lpszFilePath, uint32_t cchFilePath, uint32_t dwFlags) |
| BOOL STDCALL | SetFileShortName (HANDLE hfile, const char *lpshortname) |
| BOOL STDCALL | CreateHardLink (const char *lpfilename, const char *lpexistingfilename, SECURITY_ATTRIBUTES *lpsecurityattributes) |
| BOOL STDCALL | CreateSymbolicLink (const char *lpsymlinkfilename, const char *lptargetfilename, uint32_t dwflags) |
| BOOL STDCALL | CreateDirectory (const char *lppathname, SECURITY_ATTRIBUTES *lpsecurityattributes) |
| uint32_t STDCALL | GetCurrentDirectory (uint32_t nbufferlength, char *lpbuffer) |
| BOOL STDCALL | RemoveDirectory (const char *lppathname) |
| BOOL STDCALL | SetCurrentDirectory (const char *lppathname) |
| BOOL STDCALL | file_sys_redirect_input (HANDLE handle) |
| Redirect standard input to the file specified by Handle. | |
| BOOL STDCALL | file_sys_redirect_output (HANDLE handle) |
| Redirect standard output to the file specified by Handle. | |
| int STDCALL | compare_partitions (void *partition1, void *partition2) |
| Sort partitions in order of start sector. | |
| uint32_t STDCALL | disk_media_type_to_string (MEDIA_TYPE _type, char *string, uint32_t len) |
| uint32_t STDCALL | floppy_type_to_string (FLOPPY_TYPE _type, char *string, uint32_t len) |
| uint32_t STDCALL | image_type_to_string (IMAGE_TYPE _type, char *string, uint32_t len) |
| uint32_t STDCALL | drive_type_to_string (DRIVE_TYPE _type, char *string, uint32_t len) |
| uint32_t STDCALL | file_sys_type_to_string (FILE_SYS_TYPE _type, char *string, uint32_t len) |
| FILE_SYS_TYPE STDCALL | string_to_file_sys_type (char *filesystype) |
| uint32_t STDCALL | partition_id_to_string (uint8_t id, char *string, uint32_t len) |
| uint8_t STDCALL | string_to_partition_id (char *partitionid) |
| uint32_t STDCALL | cache_mode_to_string (CACHE_MODE cachemode, char *string, uint32_t len) |
| CACHE_MODE STDCALL | const_to_cache_mode (uint32_t cachemode) |
| Convert a cache mode constant to a cache mode enum. | |
| CACHE_MODE STDCALL | string_to_cache_mode (char *cachemode) |
| Convert a string value to a cache mode enum. | |
| uint32_t STDCALL | cache_state_to_string (CACHE_STATE cachestate, char *string, uint32_t len) |
| #define FILESYS_LOGGING_DESCRIPTION "Filesystem Logging" |
FileSystem specific constants
| #define FILESYS_STORAGE_TIMER_INTERVAL 100 |
Timer interval for device additions or insertions.
| #define FILESYS_LOCK_NONE 0 |
FileSystem Lock States
| #define FILESYS_LOCK_READ 1 |
| #define FILESYS_LOCK_WRITE 2 |
| #define FILESYS_LOCK_AUTO 3 |
Not intended for use in all situations, use with extreme caution.
| #define FILESYS_CACHE_THREAD_NAME "Filesystem Cache" |
Thread name for Filesystem cache threads.
FileSystem Cache
| #define FILESYS_CACHE_THREAD_PRIORITY THREAD_PRIORITY_HIGHER |
Thread priority for Filesystem cache threads.
| #define FILESYS_CACHE_TIMER_INTERVAL 50 |
50ms timer interval for Filesystem cache
| #define FILESYS_CACHE_FLUSH_TIMEOUT 3000 |
Filesystem cache flush timeout 3 seconds.
| #define FILESYS_CACHE_DISCARD_TIMEOUT 180000 |
Filesystem cache discard timeout 3 minutes.
| #define FILESYS_ENTRY_TIMER_INTERVAL 1000 |
1000ms timer interval for Filesystem entries
Entry Timer
| #define FILESYS_ENTRY_DELETE_TIMEOUT 30000 |
Filesystem entry delete timeout 30 seconds.
| #define CACHE_TIMER_KEY_NONE TIMER_KEY_NONE |
Cache Timer
| #define CACHE_TIMER_KEY_MAX TIMER_KEY_MAX |
| #define CACHE_TIMER_KEY_MIN TIMER_KEY_MIN |
| #define ENTRY_TIMER_KEY_NONE TIMER_KEY_NONE |
Entry Timer
| #define ENTRY_TIMER_KEY_MAX TIMER_KEY_MAX |
| #define ENTRY_TIMER_KEY_MIN TIMER_KEY_MIN |
| #define MIN_FLOPPY_DEVICE 0x00 |
Partition, Device, Volume constants
| #define MAX_FLOPPY_DEVICE 0x7F |
| #define MIN_FIXED_DEVICE 0x80 |
| #define MAX_FIXED_DEVICE 0xFF |
Extends over CDROM/Other.
| #define MIN_CDROM_DEVICE 0xE0 |
| #define MAX_CDROM_DEVICE 0xEF |
| #define MIN_OTHER_DEVICE 0xF0 |
| #define MAX_OTHER_DEVICE 0xFF |
| #define INVALID_PARTITION -1 |
| #define INVALID_DEVICE -1 |
| #define INVALID_VOLUME 0 |
| #define MIN_PARTITION 0 |
| #define MAX_PARTITION 3 |
| #define MAX_EXTENDED 1 |
Only 2 partitions in second level.
| #define MAX_PARTITION_COUNT 4 |
| #define MIN_FLOPPY_DRIVE MIN_DRIVE |
| #define MAX_FLOPPY_DRIVE MIN_DRIVE + 1 |
| #define MIN_FIXED_DRIVE MIN_DRIVE + 2 |
| #define MAX_FIXED_DRIVE MAX_DRIVE |
| #define MIN_SECTOR_SIZE 512 |
| #define MAX_SECTOR_SIZE 4096 |
| #define ISO_SECTOR_SIZE 2048 |
| #define VOLUME_PREFIX "\\Volume" |
eg \Volume1
| #define EXTENDED_PREFIX "\\Extended" |
eg \Extended1
| #define PARTITION_PREFIX "\\Partition" |
eg \Partition1
| #define CONTROLLER_PREFIX "\\Controller" |
eg \Controller0
| #define CDROM_DEVICE_PREFIX "\\Cdrom" |
eg \Cdrom0
| #define OTHER_DEVICE_PREFIX "\\Other" |
eg \Other0
| #define FIXED_DEVICE_PREFIX "\\Harddisk" |
eg \Harddisk0
| #define FLOPPY_DEVICE_PREFIX "\\Floppy" |
eg \Floppy0
| #define UNKNOWN_DEVICE_PREFIX "\\Unknown" |
eg \Unknown0
| #define VOLUME_PATH_PREFIX "\\\\?" |
eg \?\Volume1\Home
| #define DEVICE_PATH_PREFIX "\\\." |
eg \.\Harddisk0\Partition1\Home
| #define REPARSE_PATH_PREFIX "\\??\\" |
| #define BOOT_RECORD_SIGNATURE 0xAA55 |
| #define PARTITION_RECORD_SIGNATURE 0xAA55 |
| #define BOOT_SECTOR_SIGNATURE 0xAA55 |
| #define FIND_FLAG_NONE 0x00000000 |
Find Flags
| #define FIND_FLAG_FILE_NAMES 0x00000001 |
| #define FIND_WILDCARD_NAME "*.*" |
Find Wildcards
| #define FIND_WILDCARD_STREAM "*" |
| #define fsFromBeginning 0 |
File Seek origins
| #define fsFromCurrent 1 |
| #define fsFromEnd 2 |
| #define fmOpenRead 0x0000 |
File Mode constants
| #define fmOpenWrite 0x0001 |
| #define fmOpenReadWrite 0x0002 |
| #define fmShareCompat 0x0000 |
| #define fmShareExclusive 0x0010 |
| #define fmShareDenyWrite 0x0020 |
| #define fmShareDenyRead 0x0030 |
| #define fmShareDenyNone 0x0040 |
| #define fmOpenMask 0x000F |
| #define fmShareMask 0x00F0 |
| #define faReadOnly 0x00000001 |
File Attribute constants
| #define faHidden 0x00000002 |
| #define faSysFile 0x00000004 |
| #define faVolumeID 0x00000008 |
| #define faDirectory 0x00000010 |
| #define faArchive 0x00000020 |
| #define faSymLink 0x00000400 |
| #define faVirtual 0x00010000 |
| #define faAnyFile 0x000001FF |
| #define faDot 0x01000000 |
| #define faDotDot 0x02000000 |
| #define faFile 0x04000000 |
| #define faStream 0x08000000 |
| #define faFlagName 0x00100000 |
Used for FAT case flags.
| #define faFlagExt 0x00200000 |
Used for FAT case flags.
| #define faFlagBoth (faFlagName | faFlagExt) |
| #define faFlagLong 0x00400000 |
Not currently used.
| #define faFlagMetafile 0x00800000 |
Used for NTFS Metafiles.
| #define faFlagMask 0x0FFF0000 |
Used to preserve internal attributes.
| #define faFindMask 0x0000FFFF |
Used to mask internal attributes.
| #define faMatchMask (faFile | faStream | faVolumeID | faDirectory) |
| #define faDevice 0x00000040 |
Additional File Attribute Flags for NTFS/EXTFS/NSS
| #define faNormal 0x00000080 |
| #define faTemporary 0x00000100 |
| #define faSparse 0x00000200 |
| #define faReparse 0x00000400 |
See also faSymLink.
| #define faCompressed 0x00000800 |
| #define faOffline 0x00001000 |
| #define faNotIndexed 0x00002000 |
| #define faEncrypted 0x00004000 |
| #define faMftDirectory 0x10000000 |
Used only by FileName Attribute.
| #define faMftIndexView 0x20000000 |
Used by both the StandardInformation and FileName attributes.
| #define faNone 0x00000000 |
Note: NTFS does not store the faVolumeID or faDirectory attributes Additional File Attribute constants
| #define faStandard (faReadOnly | faHidden | faSysFile | faArchive) |
| #define faLongName (faReadOnly | faHidden | faSysFile | faVolumeID) |
| #define faLongMask (faReadOnly | faHidden | faSysFile | faVolumeID | faDirectory | faArchive) |
| #define vaNone 0x00000000 |
Volume Attribute constants
| #define vaCaseSensitive 0x00000001 |
| #define vaCasePreserved 0x00000002 |
| #define vaUnicode 0x00000004 |
| #define vaPersistentAcls 0x00000008 |
| #define vaFileCompression 0x00000010 |
| #define vaVolumeQuotas 0x00000020 |
| #define vaSparseFiles 0x00000040 |
| #define vaReparsePoints 0x00000080 |
| #define vaRemoteStorage 0x00000100 |
| #define vaLongNamesApi 0x00004000 |
| #define vaVolumeCompressed 0x00008000 |
| #define vaObjectIds 0x00010000 |
| #define vaEncryption 0x00020000 |
| #define vaNamedStreams 0x00040000 |
| #define vaReadOnly 0x00080000 |
| #define vaBootCatalog 0x01000000 |
Used to indicate support for ISO Boot Catalogs.
Additional Volume Attribute constants
| #define vaVirtualVolume 0x02000000 |
Used to indicate Volume is Virtual or on a Virtual Device.
| #define vaFolderEncryption 0x04000000 |
Used to indicate support for Folder Encryption (New files in folder are automatically encrypted).
| #define vaFolderCompression 0x08000000 |
Used to indicate support for Folder Compression (New files in folder are automatically compressed).
| #define daNone 0x00000000 |
Device Attribute constants
| #define daWriteable 0x00000001 |
| #define daVirtual 0x00000002 |
| #define iaNone 0x00000000 |
Image Attribute constants
| #define iaDisk 0x00000001 |
Memory/File/Device.
| #define iaPartition 0x00000002 |
Memory/File/Device.
| #define iaVolume 0x00000004 |
Memory/File/Device.
| #define iaDrive 0x00000008 |
Memory/File/Device.
| #define iaCDROM 0x00000010 |
Memory/File/Device/Iso.
| #define iaDVD 0x00000020 |
Memory/File/Device/Iso.
| #define iaFlat 0x00000040 |
Bochs.
| #define iaSparse 0x00000080 |
Bochs.
| #define iaGrowing 0x00000100 |
Bochs.
| #define iaFixed 0x00000200 |
Vpc/Vbox/Vmware.
| #define iaDynamic 0x00000400 |
Vpc/Vbox/Vmware.
| #define iaSplit 0x00000800 |
Vpc/Vmware/WIM/Ghost/Portlock/Powerquest.
| #define iaUndoable 0x00001000 |
Vpc/Vbox/Vmware.
| #define iaReadable 0x00010000 |
All.
| #define iaWriteable 0x00020000 |
All.
| #define iaEraseable 0x00040000 |
All.
| #define caNone 0x00000000 |
Catalog Attribute constants
| #define caDefault 0x00000001 |
Initial/Default Entry.
| #define caBootable 0x00000002 |
Boot Indicator.
| #define caNoEmulation 0x00000004 |
No Emulation.
| #define caFloppy12M 0x00000008 |
1.2M
| #define caFloppy144M 0x00000010 |
1.44M
| #define caFloppy288M 0x00000020 |
2.88M
| #define caHardDisk 0x00000040 |
Hard Disk.
| #define NAME_HASH_SIZE 8 |
Used for Internal Name Hash Generation only.
Misc constants
| #define MAX_PARTITION_ID 255 |
Partition Ids
| #define pidUnused 0 |
Empty.
| #define pidFAT12 1 |
| #define pidXENIXROOT 2 |
| #define pidXENIXUSR 3 |
| #define pidFAT16 4 |
under 32M
| #define pidExtended 5 |
| #define pidFAT16HUGE 6 |
over 32M
| #define pidHPFSNTFS 7 |
| #define pidAIXOS2 8 |
| #define pidAIX 9 |
| #define pidOS2BOOT 10 |
| #define pidFAT32 11 |
| #define pidFAT32LBA 12 |
| #define pidUnknown013 13 |
| #define pidFAT16LBA 14 |
| #define pidExtLBA 15 |
| #define pidOPUS 16 |
| #define pidHIDDEN12 17 |
| #define pidCompaqDiag 18 |
| #define pidUnknown019 19 |
| #define pidHIDDEN16 20 |
| #define pidUnknown021 21 |
| #define pidHIDDEN16HUGE 22 |
??????
| #define pidHIDDENHPFS 23 |
| #define pidASTSWAP 24 |
| #define pidWillowtech 25 |
| #define pidUnknown026 26 |
| #define pidHIDDEN32 27 |
| #define pidHIDDEN32LBA 28 |
| #define pidUnknown029 29 |
| #define pidHIDDEN16LBA 30 |
| #define pidUnknown031 31 |
| #define pidWillowsoft 32 |
| #define pidOxygen 33 |
| #define pidOxygenExtended 34 |
| #define pidReserved035 35 |
| #define pidNECMSDOS 36 |
| #define pidUnknown037 37 |
| #define pidUnknown038 38 |
| #define pidUnknown039 39 |
| #define pidUnknown040 40 |
| #define pidUnknown041 41 |
| #define pidUnknown042 42 |
| #define pidUnknown043 43 |
| #define pidUnknown044 44 |
| #define pidUnknown045 45 |
| #define pidUnknown046 46 |
| #define pidUnknown047 47 |
| #define pidUnknown048 48 |
| #define pidReserved049 49 |
| #define pidAlienNOS 50 |
| #define pidReserved051 51 |
| #define pidReserved052 52 |
| #define pidOS2JFS 53 |
| #define pidReserved054 54 |
| #define pidUnknown055 55 |
| #define pidTheos057 56 |
| #define pidPlan9 57 |
| #define pidTheos058 58 |
| #define pidTheos059 59 |
| #define pidPowerQuest 60 |
| #define pidHiddenNetware 61 |
| #define pidUnknown062 62 |
| #define pidUnknown063 63 |
| #define pidVENIX286 64 |
| #define pidPersonalRISC 65 |
| #define pidSFS 66 |
| #define pidPTSDOS 67 |
| #define pidGoBack 68 |
| #define pidEUMEL069 69 |
| #define pidEUMEL070 70 |
| #define pidEUMEL071 71 |
| #define pidEUMEL072 72 |
| #define pidUnknown073 73 |
| #define pidAdaOS 74 |
| #define pidUnknown075 75 |
| #define pidOberon 76 |
| #define pidQNX4077 77 |
| #define pidQNX4078 78 |
| #define pidQNX4079 79 |
| #define pidOnTrack080 80 |
| #define pidNOVELL081 81 |
| #define pidCPM 82 |
| #define pidOnTrack083 83 |
| #define pidOnTrack084 84 |
| #define pidEZDrive 85 |
| #define pidGoldenBow 86 |
| #define pidUnknown087 87 |
| #define pidUnknown088 88 |
| #define pidUnknown089 89 |
| #define pidUnknown090 90 |
| #define pidUnknown091 91 |
| #define pidPriamEdisk 92 |
| #define pidUnknown093 93 |
| #define pidUnknown094 94 |
| #define pidUnknown095 95 |
| #define pidUnknown096 96 |
| #define pidSpeedStor097 97 |
| #define pidUnknown098 98 |
| #define pidSysV 99 |
| #define pidNetware286 100 |
| #define pidNWFS 101 |
Traditional / Netware 6 Master.
| #define pidUnknown102 102 |
| #define pidNovell103 103 |
| #define pidNovell104 104 |
| #define pidNSS 105 |
NSS / Netware 6.
| #define pidUnknown106 106 |
| #define pidUnknown107 107 |
| #define pidUnknown108 108 |
| #define pidUnknown109 109 |
| #define pidUnknown110 110 |
| #define pidUnknown111 111 |
| #define pidDiskSecure 112 |
| #define pidUnknown113 113 |
| #define pidUnknown114 114 |
| #define pidReserved115 115 |
| #define pidReserved116 116 |
| #define pidPCIX 117 |
| #define pidReserved118 118 |
| #define pidUnknown119 119 |
| #define pidUnknown120 120 |
| #define pidUnknown121 121 |
| #define pidUnknown122 122 |
| #define pidUnknown123 123 |
| #define pidUnknown124 124 |
| #define pidUnknown125 125 |
| #define pidUnknown126 126 |
| #define pidUnknown127 127 |
| #define pidMinix 128 |
| #define pidLinuxMinix 129 |
| #define pidLinuxSwap 130 |
| #define pidLinuxNative 131 |
| #define pidHIDDENC 132 |
| #define pidLinuxExtended 133 |
| #define pidFAT16Stripe 134 |
| #define pidNTFSStripe 135 |
| #define pidUnknown136 136 |
| #define pidUnknown137 137 |
| #define pidUnknown138 138 |
| #define pidUnknown139 139 |
| #define pidUnknown140 140 |
| #define pidUnknown141 141 |
| #define pidUnknown142 142 |
| #define pidUnknown143 143 |
| #define pidUnknown144 144 |
| #define pidUnknown145 145 |
| #define pidUnknown146 146 |
| #define pidAmoeba 147 |
| #define pidAmoebaBBT 148 |
| #define pidUnknown149 149 |
| #define pidUnknown150 150 |
| #define pidUnknown151 151 |
| #define pidUnknown152 152 |
| #define pidUnknown153 153 |
| #define pidUnknown154 154 |
| #define pidUnknown155 155 |
| #define pidUnknown156 156 |
| #define pidUnknown157 157 |
| #define pidUnknown158 158 |
| #define pidUnknown159 159 |
| #define pidPhoenixPM 160 |
| #define pidReserved161 161 |
| #define pidUnknown162 162 |
| #define pidReserved163 163 |
| #define pidReserved164 164 |
| #define pidFreeBSD 165 |
| #define pidOpenBSD 166 |
| #define pidNeXTStep 167 |
| #define pidUnknown168 168 |
| #define pidUnknown169 169 |
| #define pidUnknown170 170 |
| #define pidDarwinBoot 171 |
| #define pidUnknown172 172 |
| #define pidUnknown173 173 |
| #define pidUnknown174 174 |
| #define pidUnknown175 175 |
| #define pidUnknown176 176 |
| #define pidUnknown177 177 |
| #define pidUnknown178 178 |
| #define pidUnknown179 179 |
| #define pidReserved180 180 |
| #define pidUnknown181 181 |
| #define pidFAT16MirrorA 182 |
| #define pidNTFSMirrorA 183 |
| #define pidBSDIswap 184 |
| #define pidUnknown185 185 |
| #define pidUnknown186 186 |
| #define pidUnknown187 187 |
| #define pidUnknown188 188 |
| #define pidUnknown189 189 |
| #define pidUnknown190 190 |
| #define pidUnknown191 191 |
| #define pidUnknown192 192 |
| #define pidDRDOSFAT12 193 |
| #define pidUnknown194 194 |
| #define pidUnknown195 195 |
| #define pidDRDOSFAT16 196 |
| #define pidUnknown197 197 |
| #define pidFAT16MirrorB 198 |
| #define pidNTFSMirrorB 199 |
| #define pidUnknown200 200 |
| #define pidUnknown201 201 |
| #define pidUnknown202 202 |
| #define pidUnknown203 203 |
| #define pidUnknown204 204 |
| #define pidUnknown205 205 |
| #define pidUnknown206 206 |
| #define pidUnknown207 207 |
| #define pidUnknown208 208 |
| #define pidUnknown209 209 |
| #define pidTinyEFAT 210 |
| #define pidEFAT 211 |
| #define pidSecuredEFAT 212 |
| #define pidOpticalEFAT 213 |
| #define pidUnknown214 214 |
| #define pidUnknown215 215 |
| #define pidCPM86 216 |
| #define pidUnknown217 217 |
| #define pidUnknown218 218 |
| #define pidConcurrentCPM 219 |
| #define pidUnknown220 220 |
| #define pidUnknown221 221 |
| #define pidUnknown222 222 |
| #define pidUnknown223 223 |
| #define pidUnknown224 224 |
| #define pidSpeedStorFAT12 225 |
| #define pidUnknown226 226 |
| #define pidUnknown227 227 |
| #define pidSpeedStorFAT16 228 |
| #define pidReserved229 229 |
| #define pidReserved230 230 |
| #define pidUnknown231 231 |
| #define pidUnknown232 232 |
| #define pidUnknown233 233 |
| #define pidUnknown234 234 |
| #define pidBeOSBFS1 235 |
| #define pidUnknown236 236 |
| #define pidUnknown237 237 |
| #define pidUnknown238 238 |
| #define pidUnknown239 239 |
| #define pidLinuxRISC 240 |
| #define pidStorageDimension 241 |
| #define pidDOS33Secondary 242 |
| #define pidSpeedStor243 243 |
| #define pidSpeedStor244 244 |
| #define pidPrologue 245 |
| #define pidSpeedStor246 246 |
| #define pidOSGEFAT 247 |
| #define pidUnknown248 248 |
| #define pidUnknown249 249 |
| #define pidBochsX86 250 |
| #define pidVMware 251 |
| #define pidVMwareSwap 252 |
| #define pidLinuxRAID 253 |
| #define pidLANstep 254 |
| #define pidXenixBBT 255 |
| #define FILESYS_ATA_DEVICE_DESCRIPTION "ATA Storage Device" |
Device descriptions
| #define FILESYS_ATAPI_DEVICE_DESCRIPTION "ATAPI Storage Device" |
| #define FILESYS_SCSI_DEVICE_DESCRIPTION "SCSI Storage Device" |
| #define FILESYS_USB_DEVICE_DESCRIPTION "USB Storage Device" |
| #define FILESYS_MMC_DEVICE_DESCRIPTION "MMC/SD Storage Device" |
| #define FILESYS_ATA_CONTROLLER_DESCRIPTION "ATA Storage Controller" |
Controller descriptions
| #define FILESYS_ATAPI_CONTROLLER_DESCRIPTION "ATAPI Storage Controller" |
| #define FILESYS_SCSI_CONTROLLER_DESCRIPTION "SCSI Storage Controller" |
| #define FILESYS_USB_CONTROLLER_DESCRIPTION "USB Storage Controller" |
| #define FILESYS_MMC_CONTROLLER_DESCRIPTION "MMC/SD Storage Controller" |
| typedef struct _STORAGE_DEVICE_EVENT STORAGE_DEVICE_EVENT |
FileSystem specific types
| typedef enum _MEDIA_TYPE MEDIA_TYPE |
| typedef enum _FLOPPY_TYPE FLOPPY_TYPE |
| typedef enum _IMAGE_TYPE IMAGE_TYPE |
| typedef enum _CACHE_STATE CACHE_STATE |
Cache types
| typedef enum _CACHE_MODE CACHE_MODE |
| typedef enum _CACHE_PAGE_TYPE CACHE_PAGE_TYPE |
| typedef enum _CACHE_PAGE_STATE CACHE_PAGE_STATE |
| typedef enum _CACHE_PAGE_CONTENT CACHE_PAGE_CONTENT |
| typedef struct _CACHE_STATISTICS CACHE_STATISTICS |
Cache Statistics
| typedef struct _FILE_SEARCH_REC FILE_SEARCH_REC |
Search types
| typedef struct _DISK_SEARCH_REC DISK_SEARCH_REC |
| typedef struct _PARTITION_SEARCH_REC PARTITION_SEARCH_REC |
| typedef struct _VOLUME_SEARCH_REC VOLUME_SEARCH_REC |
| typedef struct _DRIVE_SEARCH_REC DRIVE_SEARCH_REC |
| typedef struct _IMAGE_SEARCH_REC IMAGE_SEARCH_REC |
| typedef struct _CATALOG_SEARCH_REC CATALOG_SEARCH_REC |
| typedef struct _MOUNT_SEARCH_REC MOUNT_SEARCH_REC |
| typedef struct _JUNCTION_SEARCH_REC JUNCTION_SEARCH_REC |
| typedef struct _STREAM_SEARCH_REC STREAM_SEARCH_REC |
| typedef struct _LINK_SEARCH_REC LINK_SEARCH_REC |
| typedef struct _EXT_BIOS_PB EXT_BIOS_PB |
FAT32 BIOS Parameter Block
| typedef struct _NTFS_BIOS_PB NTFS_BIOS_PB |
NTFS BIOS Parameter Block
| typedef struct _PARTITION_ENTRY PARTITION_ENTRY |
Partition types
| typedef struct _PARTITION_TABLE PARTITION_TABLE |
| typedef uint8_t MASTER_BOOT_CODE[446] |
| typedef struct _MASTER_BOOT_RECORD MASTER_BOOT_RECORD |
| typedef uint8_t EXT_MASTER_BOOT_CODE[440] |
| typedef struct _EXT_MASTER_BOOT_RECORD EXT_MASTER_BOOT_RECORD |
| typedef struct _PARTITION_RECORD PARTITION_RECORD |
| typedef uint8_t DISK_SECTOR[512] |
Sector types
| typedef uint8_t BOOT_SECTOR_JUMP[3] |
| typedef uint8_t BOOT_SECTOR_CODE[448] |
| typedef struct _BOOT_SECTOR BOOT_SECTOR |
| typedef uint8_t EXT_BOOT_SECTOR_JUMP[3] |
| typedef uint8_t EXT_BOOT_SECTOR_CODE[420] |
| typedef struct _EXT_BOOT_SECTOR EXT_BOOT_SECTOR |
| typedef uint8_t NTFS_BOOT_SECTOR_JUMP[3] |
| typedef uint8_t NTFS_BOOT_SECTOR_CODE[426] |
| typedef struct _NTFS_BOOT_SECTOR NTFS_BOOT_SECTOR |
| typedef struct _EXTFS_BOOT_SECTOR EXTFS_BOOT_SECTOR |
| enum _MEDIA_TYPE |
| enum _FLOPPY_TYPE |
| enum _IMAGE_TYPE |
| enum _CACHE_STATE |
| enum _CACHE_MODE |
| enum _CACHE_PAGE_TYPE |
| enum _CACHE_PAGE_STATE |
| enum _CACHE_PAGE_CONTENT |
| uint32_t STDCALL file_sys_start | ( | void | ) |
Initialization Functions
| uint32_t STDCALL file_sys_stop | ( | void | ) |
| void STDCALL file_sys_async_start | ( | void * | data | ) |
| uint8_t STDCALL GetPathDrive | ( | const char * | path | ) |
FileSystem Functions (Ultibo) Drive Functions
| DRIVE_TYPE STDCALL GetDriveType | ( | uint8_t | drive | ) |
| void STDCALL GetDriveData | ( | uint8_t | drive, |
| DRIVE_DATA * | data ) |
| uint32_t STDCALL GetDriveAttr | ( | uint8_t | drive | ) |
| uint32_t STDCALL GetDriveLabel | ( | uint8_t | drive, |
| char * | label, | ||
| uint32_t | len ) |
| uint32_t STDCALL GetDriveSerial | ( | uint8_t | drive | ) |
| uint32_t STDCALL GetValidDrives | ( | void | ) |
| uint32_t STDCALL GetValidDriveNames | ( | char * | names, |
| uint32_t | len ) |
| uint32_t STDCALL GetDriveFreeSpace | ( | uint8_t | drive | ) |
| int64_t STDCALL GetDriveFreeSpaceEx | ( | uint8_t | drive | ) |
| uint32_t STDCALL GetDriveTotalSpace | ( | uint8_t | drive | ) |
| int64_t STDCALL GetDriveTotalSpaceEx | ( | uint8_t | drive | ) |
| BOOL STDCALL GetDriveInformation | ( | const char * | path, |
| uint32_t * | clustersize, | ||
| int64_t * | totalclustercount, | ||
| int64_t * | freeclustercount ) |
| uint8_t STDCALL GetCurrentDrive | ( | void | ) |
| int STDCALL FileAge | ( | const char * | filename | ) |
| int STDCALL FileGetAttr | ( | const char * | filename | ) |
| int STDCALL FileSetAttr | ( | const char * | filename, |
| int | attr ) |
| uint32_t STDCALL GetCurrentDir | ( | char * | dirname, |
| uint32_t | len ) |
| void STDCALL ForceDirectories | ( | char * | dirname | ) |
| void STDCALL DeleteTree | ( | const char * | dirname | ) |
Search Functions Additional Functions
| BOOL STDCALL FileCopyEx | ( | const char * | sourcefile, |
| const char * | destfile, | ||
| BOOL | failifexists, | ||
| BOOL | usesourcedate, | ||
| int | destdate, | ||
| BOOL | usesourceattr, | ||
| int | destattr ) |
| uint32_t STDCALL GetShortName | ( | const char * | filename, |
| char * | shortname, | ||
| uint32_t | len ) |
| uint32_t STDCALL GetLongName | ( | const char * | filename, |
| char * | longname, | ||
| uint32_t | len ) |
| uint32_t STDCALL GetTrueName | ( | const char * | filename, |
| char * | truename, | ||
| uint32_t | len ) |
| BOOL STDCALL GetFileTime | ( | HANDLE | handle, |
| FILETIME * | createtime, | ||
| FILETIME * | accesstime, | ||
| FILETIME * | writetime ) |
| BOOL STDCALL SetFileTime | ( | HANDLE | handle, |
| FILETIME * | createtime, | ||
| FILETIME * | accesstime, | ||
| FILETIME * | writetime ) |
| int STDCALL FindFirstEx | ( | const char * | path, |
| FILE_SEARCH_REC * | searchrec ) |
| int STDCALL FindNextEx | ( | FILE_SEARCH_REC * | searchrec | ) |
| void STDCALL FindCloseEx | ( | FILE_SEARCH_REC * | searchrec | ) |
| BOOL STDCALL DefineDosDevice | ( | uint32_t | dwflags, |
| const char * | lpdevicename, | ||
| const char * | lptargetpath ) |
FileSystem Functions (Win32 Compatibility) Drive Functions
| BOOL STDCALL GetDiskFreeSpace | ( | const char * | lprootpathname, |
| uint32_t * | lpsectorspercluster, | ||
| uint32_t * | lpbytespersector, | ||
| uint32_t * | lpnumberoffreeclusters, | ||
| uint32_t * | lptotalnumberofclusters ) |
| BOOL STDCALL GetDiskFreeSpaceEx | ( | const char * | lpdirectoryname, |
| ULARGE_INTEGER * | lpfreebytesavailabletocaller, | ||
| ULARGE_INTEGER * | lptotalnumberofbytes, | ||
| ULARGE_INTEGER * | lptotalnumberoffreebytes ) |
| uint32_t STDCALL GetLogicalDrives | ( | void | ) |
| uint32_t STDCALL GetLogicalDriveStrings | ( | uint32_t | nbufferlength, |
| char * | lpbuffer ) |
| BOOL STDCALL GetVolumeInformation | ( | const char * | lprootpathname, |
| char * | lpvolumenamebuffer, | ||
| uint32_t | nvolumenamesize, | ||
| DWORD * | lpvolumeserialnumber, | ||
| uint32_t * | lpmaximumcomponentlength, | ||
| uint32_t * | lpfilesystemflags, | ||
| char * | lpfilesystemnamebuffer, | ||
| uint32_t | nfilesystemnamesize ) |
| uint32_t STDCALL QueryDosDevice | ( | const char * | lpdevicename, |
| char * | lptargetpath, | ||
| uint32_t | ucchmax ) |
| BOOL STDCALL CopyFile | ( | const char * | lpexistingfilename, |
| const char * | lpnewfilename, | ||
| BOOL | bfailifexists ) |
| HANDLE STDCALL CreateFile | ( | const char * | lpfilename, |
| uint32_t | dwdesiredaccess, | ||
| uint32_t | dwsharemode, | ||
| SECURITY_ATTRIBUTES * | lpsecurityattributes, | ||
| uint32_t | dwcreationdisposition, | ||
| uint32_t | dwflagsandattributes, | ||
| HANDLE | htemplatefile ) |
| HANDLE STDCALL FindFirstFile | ( | const char * | lpfilename, |
| WIN32_FIND_DATAA * | lpfindfiledata ) |
| BOOL STDCALL FindNextFile | ( | HANDLE | hfindfile, |
| WIN32_FIND_DATAA * | lpfindfiledata ) |
| uint32_t STDCALL GetFileAttributes | ( | const char * | lpfilename | ) |
| BOOL STDCALL GetFileInformationByHandle | ( | HANDLE | hfile, |
| BY_HANDLE_FILE_INFORMATION * | lpfileinformation ) |
| uint32_t STDCALL GetFullPathName | ( | const char * | lpfilename, |
| uint32_t | nbufferlength, | ||
| char * | lpbuffer, | ||
| char * | lpfilepart ) |
| uint32_t STDCALL GetShortPathName | ( | const char * | lpszlongpath, |
| char * | lpszshortpath, | ||
| uint32_t | cchbuffer ) |
| BOOL STDCALL ReadFile | ( | HANDLE | hfile, |
| void * | lpbuffer, | ||
| uint32_t | nnumberofbytestoread, | ||
| DWORD * | lpnumberofbytesread, | ||
| OVERLAPPED * | lpoverlapped ) |
| void STDCALL SetFileApisToANSI | ( | void | ) |
| void STDCALL SetFileApisToOEM | ( | void | ) |
| uint32_t STDCALL SetFilePointer | ( | HANDLE | hfile, |
| long | ldistancetomove, | ||
| long * | lpdistancetomovehigh, | ||
| uint32_t | dwmovemethod ) |
| BOOL STDCALL SetFilePointerEx | ( | HANDLE | hfile, |
| LARGE_INTEGER | lidistancetomove, | ||
| LARGE_INTEGER * | lpnewfilepointer, | ||
| uint32_t | dwmovemethod ) |
| BOOL STDCALL WriteFile | ( | HANDLE | hfile, |
| void * | lpbuffer, | ||
| uint32_t | nnumberofbytestowrite, | ||
| DWORD * | lpnumberofbyteswritten, | ||
| OVERLAPPED * | lpoverlapped ) |
| uint32_t STDCALL GetLongPathName | ( | const char * | lpszshortpath, |
| char * | lpszlongpath, | ||
| uint32_t | cchbuffer ) |
| uint32_t STDCALL GetFinalPathNameByHandle | ( | HANDLE | hfile, |
| char * | lpszFilePath, | ||
| uint32_t | cchFilePath, | ||
| uint32_t | dwFlags ) |
| BOOL STDCALL CreateHardLink | ( | const char * | lpfilename, |
| const char * | lpexistingfilename, | ||
| SECURITY_ATTRIBUTES * | lpsecurityattributes ) |
| BOOL STDCALL CreateSymbolicLink | ( | const char * | lpsymlinkfilename, |
| const char * | lptargetfilename, | ||
| uint32_t | dwflags ) |
| BOOL STDCALL CreateDirectory | ( | const char * | lppathname, |
| SECURITY_ATTRIBUTES * | lpsecurityattributes ) |
Directory Functions
| uint32_t STDCALL GetCurrentDirectory | ( | uint32_t | nbufferlength, |
| char * | lpbuffer ) |
Redirect standard input to the file specified by Handle.
FileSystem Helper Functions
| Handle | The file handle to redirect input to (or INVALID_HANDLE_VALUE to stop redirection) |
Redirect standard output to the file specified by Handle.
| Handle | The file handle to redirect output to (or INVALID_HANDLE_VALUE to stop redirection) |
| int STDCALL compare_partitions | ( | void * | partition1, |
| void * | partition2 ) |
Sort partitions in order of start sector.
| uint32_t STDCALL disk_media_type_to_string | ( | MEDIA_TYPE | _type, |
| char * | string, | ||
| uint32_t | len ) |
| uint32_t STDCALL floppy_type_to_string | ( | FLOPPY_TYPE | _type, |
| char * | string, | ||
| uint32_t | len ) |
| uint32_t STDCALL image_type_to_string | ( | IMAGE_TYPE | _type, |
| char * | string, | ||
| uint32_t | len ) |
| uint32_t STDCALL drive_type_to_string | ( | DRIVE_TYPE | _type, |
| char * | string, | ||
| uint32_t | len ) |
| uint32_t STDCALL file_sys_type_to_string | ( | FILE_SYS_TYPE | _type, |
| char * | string, | ||
| uint32_t | len ) |
| FILE_SYS_TYPE STDCALL string_to_file_sys_type | ( | char * | filesystype | ) |
| uint32_t STDCALL partition_id_to_string | ( | uint8_t | id, |
| char * | string, | ||
| uint32_t | len ) |
| uint8_t STDCALL string_to_partition_id | ( | char * | partitionid | ) |
| uint32_t STDCALL cache_mode_to_string | ( | CACHE_MODE | cachemode, |
| char * | string, | ||
| uint32_t | len ) |
| CACHE_MODE STDCALL const_to_cache_mode | ( | uint32_t | cachemode | ) |
Convert a cache mode constant to a cache mode enum.
| CacheMode | The cache mode constant (eg FILESYS_CACHE_MODE_READONLY) |
| CACHE_MODE STDCALL string_to_cache_mode | ( | char * | cachemode | ) |
Convert a string value to a cache mode enum.
| CacheMode | The cache mode string value (eg READONLY) |
| uint32_t STDCALL cache_state_to_string | ( | CACHE_STATE | cachestate, |
| char * | string, | ||
| uint32_t | len ) |