[e16e8f2] | 1 | /* ----------------------------------------------------------------------- * |
---|
| 2 | * |
---|
| 3 | * Copyright 2009 Pierre-Alexandre Meyer |
---|
| 4 | * |
---|
| 5 | * This file is part of Syslinux, and is made available under |
---|
| 6 | * the terms of the GNU General Public License version 2. |
---|
| 7 | * |
---|
| 8 | * ----------------------------------------------------------------------- */ |
---|
| 9 | |
---|
| 10 | #include <stdlib.h> |
---|
| 11 | #include <string.h> |
---|
| 12 | |
---|
| 13 | void get_label(int label, char **buffer_label) |
---|
| 14 | { |
---|
| 15 | int buffer_size = (80 * sizeof(char)); |
---|
| 16 | char *buffer = malloc(buffer_size); |
---|
| 17 | *buffer_label = buffer; |
---|
| 18 | |
---|
| 19 | switch (label) { |
---|
| 20 | case 0x01: |
---|
| 21 | strlcpy(buffer, "DOS 12-bit fat", buffer_size); |
---|
| 22 | break; |
---|
| 23 | case 0x02: |
---|
| 24 | strlcpy(buffer, "XENIX root", buffer_size); |
---|
| 25 | break; |
---|
| 26 | case 0x03: |
---|
| 27 | strlcpy(buffer, "XENIX /usr", buffer_size); |
---|
| 28 | break; |
---|
| 29 | case 0x04: |
---|
| 30 | strlcpy(buffer, "DOS 3.0+ 16-bit FAT (up to 32M)", buffer_size); |
---|
| 31 | break; |
---|
| 32 | case 0x05: |
---|
| 33 | strlcpy(buffer, "DOS 3.3+ Extended Partition", buffer_size); |
---|
| 34 | break; |
---|
| 35 | case 0x06: |
---|
| 36 | strlcpy(buffer, "DOS 3.31+ 16-bit FAT (over 32M)", buffer_size); |
---|
| 37 | break; |
---|
| 38 | case 0x07: |
---|
| 39 | strlcpy(buffer, "NTFS/exFAT/HPFS", buffer_size); |
---|
| 40 | //case 0x07: strlcpy(buffer, "Advanced Unix", buffer_size); break; |
---|
| 41 | //case 0x07: strlcpy(buffer, "Windows NT NTFS", buffer_size); break; |
---|
| 42 | //case 0x07: strlcpy(buffer, "QNX2.x (pre-1988)", buffer_size); break; |
---|
| 43 | break; |
---|
| 44 | case 0x08: |
---|
| 45 | strlcpy(buffer, "AIX", buffer_size); |
---|
| 46 | //case 0x08: strlcpy(buffer, "AIX boot partition", buffer_size); break; |
---|
| 47 | //case 0x08: strlcpy(buffer, "SplitDrive", buffer_size); break; |
---|
| 48 | //case 0x08: strlcpy(buffer, "DELL partition spanning multiple drives", buffer_size); break; |
---|
| 49 | //case 0x08: strlcpy(buffer, "Commodore DOS", buffer_size); break; |
---|
| 50 | //case 0x08: strlcpy(buffer, "QNX 1.x and 2.x ("qny")", buffer_size); break; |
---|
| 51 | break; |
---|
| 52 | case 0x09: |
---|
| 53 | strlcpy(buffer, "AIX bootable partition", buffer_size); |
---|
| 54 | //case 0x09: strlcpy(buffer, "Coherent filesystem", buffer_size); break; |
---|
| 55 | //case 0x09: strlcpy(buffer, "QNX 1.x and 2.x ("qnz")", buffer_size); break; |
---|
| 56 | break; |
---|
| 57 | case 0x0a: |
---|
| 58 | strlcpy(buffer, "OS/2 Boot Manager", buffer_size); |
---|
| 59 | //case 0x0a: strlcpy(buffer, "Coherent swap partition", buffer_size); break; |
---|
| 60 | //case 0x0a: strlcpy(buffer, "OPUS", buffer_size); break; |
---|
| 61 | break; |
---|
| 62 | case 0x0b: |
---|
| 63 | strlcpy(buffer, "WIN95 OSR2 32-bit FAT", buffer_size); |
---|
| 64 | break; |
---|
| 65 | case 0x0c: |
---|
| 66 | strlcpy(buffer, "WIN95 OSR2 32-bit FAT, LBA-mapped", buffer_size); |
---|
| 67 | break; |
---|
| 68 | case 0x0e: |
---|
| 69 | strlcpy(buffer, "WIN95: DOS 16-bit FAT, LBA-mapped", buffer_size); |
---|
| 70 | break; |
---|
| 71 | case 0x0f: |
---|
| 72 | strlcpy(buffer, "WIN95: Extended partition, LBA-mapped", buffer_size); |
---|
| 73 | break; |
---|
| 74 | case 0x10: |
---|
| 75 | strlcpy(buffer, "OPUS", buffer_size); |
---|
| 76 | break; |
---|
| 77 | case 0x11: |
---|
| 78 | strlcpy(buffer, "Hidden DOS 12-bit FAT", buffer_size); |
---|
| 79 | break; |
---|
| 80 | case 0x12: |
---|
| 81 | strlcpy(buffer, "Compaq diagnostic partition", buffer_size); |
---|
| 82 | break; |
---|
| 83 | case 0x14: |
---|
| 84 | strlcpy(buffer, "Hidden DOS 16-bit FAT <32M", buffer_size); |
---|
| 85 | break; |
---|
| 86 | case 0x16: |
---|
| 87 | strlcpy(buffer, "Hidden DOS 16-bit FAT >=32M", buffer_size); |
---|
| 88 | break; |
---|
| 89 | case 0x17: |
---|
| 90 | strlcpy(buffer, "Hidden HPFS/exFAT/NTFS", buffer_size); |
---|
| 91 | break; |
---|
| 92 | case 0x18: |
---|
| 93 | strlcpy(buffer, "AST SmartSleep Partition", buffer_size); |
---|
| 94 | break; |
---|
| 95 | case 0x19: |
---|
| 96 | strlcpy(buffer, "Unused (Claimed for Willowtech Photon COS)", |
---|
| 97 | buffer_size); |
---|
| 98 | break; |
---|
| 99 | case 0x1b: |
---|
| 100 | strlcpy(buffer, "Hidden WIN95 OSR2 32-bit FAT", buffer_size); |
---|
| 101 | break; |
---|
| 102 | case 0x1c: |
---|
| 103 | strlcpy(buffer, "Hidden WIN95 OSR2 32-bit FAT, LBA-mapped", |
---|
| 104 | buffer_size); |
---|
| 105 | break; |
---|
| 106 | case 0x1e: |
---|
| 107 | strlcpy(buffer, "Hidden WIN95 16-bit FAT, LBA-mapped", buffer_size); |
---|
| 108 | break; |
---|
| 109 | case 0x20: |
---|
| 110 | strlcpy(buffer, "Unused", buffer_size); |
---|
| 111 | break; |
---|
| 112 | case 0x21: |
---|
| 113 | strlcpy(buffer, "Reserved", buffer_size); |
---|
| 114 | //case 0x21: strlcpy(buffer, "Unused", buffer_size); break; |
---|
| 115 | break; |
---|
| 116 | case 0x22: |
---|
| 117 | strlcpy(buffer, "Unused", buffer_size); |
---|
| 118 | break; |
---|
| 119 | case 0x23: |
---|
| 120 | strlcpy(buffer, "Reserved", buffer_size); |
---|
| 121 | break; |
---|
| 122 | case 0x24: |
---|
| 123 | strlcpy(buffer, "NEC DOS 3.x", buffer_size); |
---|
| 124 | break; |
---|
| 125 | case 0x26: |
---|
| 126 | strlcpy(buffer, "Reserved", buffer_size); |
---|
| 127 | break; |
---|
| 128 | case 0x27: |
---|
| 129 | strlcpy(buffer, "PQService (Acer laptop hidden rescue partition)", buffer_size); |
---|
| 130 | //Windows RE hidden partition |
---|
| 131 | //MirOS BSD partition |
---|
| 132 | //RouterBOOT kernel partition |
---|
| 133 | break; |
---|
| 134 | case 0x2a: |
---|
| 135 | strlcpy(buffer, "AtheOS File System (AFS)", buffer_size); |
---|
| 136 | break; |
---|
| 137 | case 0x2b: |
---|
| 138 | strlcpy(buffer, "SyllableSecure (SylStor)", buffer_size); |
---|
| 139 | break; |
---|
| 140 | case 0x31: |
---|
| 141 | strlcpy(buffer, "Reserved", buffer_size); |
---|
| 142 | break; |
---|
| 143 | case 0x32: |
---|
| 144 | strlcpy(buffer, "NOS", buffer_size); |
---|
| 145 | break; |
---|
| 146 | case 0x33: |
---|
| 147 | strlcpy(buffer, "Reserved", buffer_size); |
---|
| 148 | break; |
---|
| 149 | case 0x34: |
---|
| 150 | strlcpy(buffer, "Reserved", buffer_size); |
---|
| 151 | break; |
---|
| 152 | case 0x35: |
---|
| 153 | strlcpy(buffer, "JFS on OS/2 or eCS", buffer_size); |
---|
| 154 | break; |
---|
| 155 | case 0x36: |
---|
| 156 | strlcpy(buffer, "Reserved", buffer_size); |
---|
| 157 | break; |
---|
| 158 | case 0x38: |
---|
| 159 | strlcpy(buffer, "THEOS ver 3.2 2gb partition", buffer_size); |
---|
| 160 | break; |
---|
| 161 | case 0x39: |
---|
| 162 | strlcpy(buffer, "Plan 9 partition", buffer_size); |
---|
| 163 | //case 0x39: strlcpy(buffer, "THEOS ver 4 spanned partition", buffer_size); break; |
---|
| 164 | break; |
---|
| 165 | case 0x3a: |
---|
| 166 | strlcpy(buffer, "THEOS ver 4 4gb partition", buffer_size); |
---|
| 167 | break; |
---|
| 168 | case 0x3b: |
---|
| 169 | strlcpy(buffer, "THEOS ver 4 extended partition", buffer_size); |
---|
| 170 | break; |
---|
| 171 | case 0x3c: |
---|
| 172 | strlcpy(buffer, "PartitionMagic recovery partition", buffer_size); |
---|
| 173 | break; |
---|
| 174 | case 0x3d: |
---|
| 175 | strlcpy(buffer, "Hidden NetWare", buffer_size); |
---|
| 176 | break; |
---|
| 177 | case 0x40: |
---|
| 178 | strlcpy(buffer, "Venix 80286", buffer_size); |
---|
| 179 | break; |
---|
| 180 | case 0x41: |
---|
| 181 | strlcpy(buffer, "PPC PReP Boot", buffer_size); break; |
---|
| 182 | //case 0x41: strlcpy(buffer, "Personal RISC Boot", buffer_size); break; |
---|
| 183 | // strlcpy(buffer, "Linux/MINIX (sharing disk with DRDOS)", buffer_size); |
---|
| 184 | break; |
---|
| 185 | case 0x42: |
---|
| 186 | strlcpy(buffer, "SFS (Secure Filesystem)", buffer_size); break; |
---|
| 187 | // strlcpy(buffer, "Linux swap (sharing disk with DRDOS)", buffer_size); |
---|
| 188 | //case 0x42: strlcpy(buffer, "Windows 2000 marker", buffer_size); break; |
---|
| 189 | break; |
---|
| 190 | case 0x43: |
---|
| 191 | strlcpy(buffer, "Linux native (sharing disk with DRDOS)", buffer_size); |
---|
| 192 | break; |
---|
| 193 | case 0x44: |
---|
| 194 | strlcpy(buffer, "GoBack partition", buffer_size); |
---|
| 195 | break; |
---|
| 196 | case 0x45: |
---|
| 197 | strlcpy(buffer, "Boot-US boot manager", buffer_size); |
---|
| 198 | //case 0x45: strlcpy(buffer, "Priam", buffer_size); break; |
---|
| 199 | //case 0x45: strlcpy(buffer, "EUMEL/Elan", buffer_size); break; |
---|
| 200 | break; |
---|
| 201 | case 0x46: |
---|
| 202 | strlcpy(buffer, "EUMEL/Elan", buffer_size); |
---|
| 203 | break; |
---|
| 204 | case 0x47: |
---|
| 205 | strlcpy(buffer, "EUMEL/Elan", buffer_size); |
---|
| 206 | break; |
---|
| 207 | case 0x48: |
---|
| 208 | strlcpy(buffer, "EUMEL/Elan", buffer_size); |
---|
| 209 | break; |
---|
| 210 | case 0x4a: |
---|
| 211 | strlcpy(buffer, "AdaOS Aquila (Default)", buffer_size); |
---|
| 212 | //case 0x4a: strlcpy(buffer, "ALFS/THIN lightweight filesystem for DOS", buffer_size); break; |
---|
| 213 | break; |
---|
| 214 | case 0x4c: |
---|
| 215 | strlcpy(buffer, "Oberon partition", buffer_size); |
---|
| 216 | break; |
---|
| 217 | case 0x4d: |
---|
| 218 | strlcpy(buffer, "QNX4.x", buffer_size); |
---|
| 219 | break; |
---|
| 220 | case 0x4e: |
---|
| 221 | strlcpy(buffer, "QNX4.x 2nd part", buffer_size); |
---|
| 222 | break; |
---|
| 223 | case 0x4f: |
---|
| 224 | strlcpy(buffer, "QNX4.x 3rd part", buffer_size); |
---|
| 225 | //case 0x4f: strlcpy(buffer, "Oberon partition", buffer_size); break; |
---|
| 226 | break; |
---|
| 227 | case 0x50: |
---|
| 228 | strlcpy(buffer, "OnTrack Disk Manager (older versions) RO", |
---|
| 229 | buffer_size); |
---|
| 230 | //case 0x50: strlcpy(buffer, "Lynx RTOS", buffer_size); break; |
---|
| 231 | //case 0x50: strlcpy(buffer, "Native Oberon (alt)", buffer_size); break; |
---|
| 232 | break; |
---|
| 233 | case 0x51: |
---|
| 234 | strlcpy(buffer, "OnTrack Disk Manager RW (DM6 Aux1)", buffer_size); |
---|
| 235 | //case 0x51: strlcpy(buffer, "Novell", buffer_size); break; |
---|
| 236 | break; |
---|
| 237 | case 0x52: |
---|
| 238 | strlcpy(buffer, "CP/M", buffer_size); |
---|
| 239 | //case 0x52: strlcpy(buffer, "Microport SysV/AT", buffer_size); break; |
---|
| 240 | break; |
---|
| 241 | case 0x53: |
---|
| 242 | strlcpy(buffer, "Disk Manager 6.0 Aux3", buffer_size); |
---|
| 243 | break; |
---|
| 244 | case 0x54: |
---|
| 245 | strlcpy(buffer, "Disk Manager 6.0 Dynamic Drive Overlay", buffer_size); |
---|
| 246 | break; |
---|
| 247 | case 0x55: |
---|
| 248 | strlcpy(buffer, "EZ-Drive", buffer_size); |
---|
| 249 | break; |
---|
| 250 | case 0x56: |
---|
| 251 | strlcpy(buffer, "Golden Bow VFeature Partitioned Volume.", buffer_size); |
---|
| 252 | //case 0x56: strlcpy(buffer, "DM converted to EZ-BIOS", buffer_size); break; |
---|
| 253 | break; |
---|
| 254 | case 0x57: |
---|
| 255 | strlcpy(buffer, "DrivePro", buffer_size); |
---|
| 256 | //case 0x57: strlcpy(buffer, "VNDI Partition", buffer_size); break; |
---|
| 257 | break; |
---|
| 258 | case 0x5c: |
---|
| 259 | strlcpy(buffer, "Priam EDisk", buffer_size); |
---|
| 260 | break; |
---|
| 261 | case 0x61: |
---|
| 262 | strlcpy(buffer, "SpeedStor", buffer_size); |
---|
| 263 | break; |
---|
| 264 | case 0x63: |
---|
| 265 | strlcpy(buffer, |
---|
| 266 | "Unix System V (SCO, ISC Unix, UnixWare, ...), Mach, GNU Hurd", |
---|
| 267 | buffer_size); |
---|
| 268 | break; |
---|
| 269 | case 0x64: |
---|
| 270 | strlcpy(buffer, "Novell Netware 286, 2.xx", buffer_size); break; |
---|
| 271 | //strlcpy(buffer, "PC-ARMOUR protected partition", buffer_size); |
---|
| 272 | break; |
---|
| 273 | case 0x65: |
---|
| 274 | strlcpy(buffer, "Novell Netware 386, 3.xx or 4.xx", buffer_size); |
---|
| 275 | break; |
---|
| 276 | case 0x66: |
---|
| 277 | strlcpy(buffer, "Novell Netware SMS Partition", buffer_size); |
---|
| 278 | break; |
---|
| 279 | case 0x67: |
---|
| 280 | strlcpy(buffer, "Novell", buffer_size); |
---|
| 281 | break; |
---|
| 282 | case 0x68: |
---|
| 283 | strlcpy(buffer, "Novell", buffer_size); |
---|
| 284 | break; |
---|
| 285 | case 0x69: |
---|
| 286 | strlcpy(buffer, "Novell Netware 5+, Novell Netware NSS Partition", |
---|
| 287 | buffer_size); |
---|
| 288 | break; |
---|
| 289 | case 0x70: |
---|
| 290 | strlcpy(buffer, "DiskSecure Multi-Boot", buffer_size); |
---|
| 291 | break; |
---|
| 292 | case 0x71: |
---|
| 293 | strlcpy(buffer, "Reserved", buffer_size); |
---|
| 294 | break; |
---|
| 295 | case 0x72: |
---|
| 296 | strlcpy(buffer, "V7/x86", buffer_size); |
---|
| 297 | break; |
---|
| 298 | case 0x73: |
---|
| 299 | strlcpy(buffer, "Reserved", buffer_size); |
---|
| 300 | break; |
---|
| 301 | case 0x74: |
---|
| 302 | //strlcpy(buffer, "Reserved", buffer_size); |
---|
| 303 | strlcpy(buffer, "Scramdisk partition", buffer_size); break; |
---|
| 304 | case 0x75: |
---|
| 305 | strlcpy(buffer, "IBM PC/IX", buffer_size); |
---|
| 306 | break; |
---|
| 307 | case 0x76: |
---|
| 308 | strlcpy(buffer, "Reserved", buffer_size); |
---|
| 309 | break; |
---|
| 310 | case 0x77: |
---|
| 311 | strlcpy(buffer, "M2FS/M2CS partition", buffer_size); |
---|
| 312 | break; |
---|
| 313 | //case 0x77: strlcpy(buffer, "VNDI Partition", buffer_size); break; |
---|
| 314 | case 0x78: |
---|
| 315 | strlcpy(buffer, "XOSL FS", buffer_size); |
---|
| 316 | break; |
---|
| 317 | case 0x7E: |
---|
| 318 | strlcpy(buffer, "Unused", buffer_size); |
---|
| 319 | break; |
---|
| 320 | case 0x80: |
---|
| 321 | strlcpy(buffer, "MINIX until 1.4a", buffer_size); |
---|
| 322 | break; |
---|
| 323 | case 0x81: |
---|
| 324 | strlcpy(buffer, "MINIX since 1.4b, early Linux", buffer_size); |
---|
| 325 | //case 0x81: strlcpy(buffer, "Mitac disk manager", buffer_size); break; |
---|
| 326 | break; |
---|
| 327 | case 0x82: |
---|
| 328 | strlcpy(buffer, "Linux swap", buffer_size); |
---|
| 329 | //case 0x82: strlcpy(buffer, "Prime", buffer_size); break; |
---|
| 330 | //case 0x82: strlcpy(buffer, "Solaris x86", buffer_size); break; |
---|
| 331 | break; |
---|
| 332 | case 0x83: |
---|
| 333 | strlcpy(buffer, "Linux native (usually ext2fs)", buffer_size); |
---|
| 334 | break; |
---|
| 335 | case 0x84: |
---|
| 336 | strlcpy(buffer, "OS/2 hidden C: drive", buffer_size); |
---|
| 337 | //case 0x84: strlcpy(buffer, "Hibernation partition", buffer_size); break; |
---|
| 338 | break; |
---|
| 339 | case 0x85: |
---|
| 340 | strlcpy(buffer, "Linux extended partition", buffer_size); |
---|
| 341 | break; |
---|
| 342 | case 0x86: |
---|
| 343 | strlcpy(buffer, "NTFS volume set", buffer_size); |
---|
| 344 | //case 0x86: strlcpy(buffer, "Old Linux RAID partition superblock", buffer_size); break; |
---|
| 345 | break; |
---|
| 346 | case 0x87: |
---|
| 347 | strlcpy(buffer, "NTFS volume set", buffer_size); |
---|
| 348 | break; |
---|
| 349 | case 0x88: |
---|
| 350 | strlcpy(buffer, "Linux Plaintext", buffer_size); |
---|
| 351 | break; |
---|
| 352 | case 0x8a: |
---|
| 353 | strlcpy(buffer, "Linux Kernel Partition (used by AiR-BOOT)", |
---|
| 354 | buffer_size); |
---|
| 355 | break; |
---|
| 356 | case 0x8b: |
---|
| 357 | strlcpy(buffer, "Legacy Fault Tolerant FAT32 volume", buffer_size); |
---|
| 358 | break; |
---|
| 359 | case 0x8c: |
---|
| 360 | strlcpy(buffer, |
---|
| 361 | "Legacy Fault Tolerant FAT32 volume using BIOS extd INT 13h", |
---|
| 362 | buffer_size); |
---|
| 363 | break; |
---|
| 364 | case 0x8d: |
---|
| 365 | strlcpy(buffer, "Free FDISK hidden Primary DOS FAT12 partitition", |
---|
| 366 | buffer_size); |
---|
| 367 | break; |
---|
| 368 | case 0x8e: |
---|
| 369 | strlcpy(buffer, "Linux LVM partition", buffer_size); |
---|
| 370 | break; |
---|
| 371 | case 0x90: |
---|
| 372 | strlcpy(buffer, "Free FDISK hidden Primary DOS FAT16 partitition", |
---|
| 373 | buffer_size); |
---|
| 374 | break; |
---|
| 375 | case 0x91: |
---|
| 376 | strlcpy(buffer, "Free FDISK hidden DOS extended partitition", |
---|
| 377 | buffer_size); |
---|
| 378 | break; |
---|
| 379 | case 0x92: |
---|
| 380 | strlcpy(buffer, "Free FDISK hidden Primary DOS large FAT16 partitition", |
---|
| 381 | buffer_size); |
---|
| 382 | break; |
---|
| 383 | case 0x93: |
---|
| 384 | strlcpy(buffer, "Hidden Linux native partition", buffer_size); |
---|
| 385 | //case 0x93: strlcpy(buffer, "Amoeba", buffer_size); break; |
---|
| 386 | break; |
---|
| 387 | case 0x94: |
---|
| 388 | strlcpy(buffer, "Amoeba bad block table", buffer_size); |
---|
| 389 | break; |
---|
| 390 | case 0x95: |
---|
| 391 | strlcpy(buffer, "MIT EXOPC native partitions", buffer_size); |
---|
| 392 | break; |
---|
| 393 | case 0x96: |
---|
| 394 | strlcpy(buffer, "CHRP ISO-9660 filesystem", buffer_size); |
---|
| 395 | break; |
---|
| 396 | case 0x97: |
---|
| 397 | strlcpy(buffer, "Free FDISK hidden Primary DOS FAT32 partitition", |
---|
| 398 | buffer_size); |
---|
| 399 | break; |
---|
| 400 | case 0x98: |
---|
| 401 | strlcpy(buffer, "Free FDISK hidden Primary DOS FAT32 partitition (LBA)", |
---|
| 402 | buffer_size); |
---|
| 403 | break; |
---|
| 404 | case 0x99: |
---|
| 405 | strlcpy(buffer, "DCE376 logical drive", buffer_size); |
---|
| 406 | break; |
---|
| 407 | case 0x9a: |
---|
| 408 | strlcpy(buffer, "Free FDISK hidden Primary DOS FAT16 partitition (LBA)", |
---|
| 409 | buffer_size); |
---|
| 410 | break; |
---|
| 411 | case 0x9b: |
---|
| 412 | strlcpy(buffer, "Free FDISK hidden DOS extended partitition (LBA)", |
---|
| 413 | buffer_size); |
---|
| 414 | break; |
---|
| 415 | case 0x9e: |
---|
| 416 | strlcpy(buffer, "ForthOS partition", buffer_size); |
---|
| 417 | break; |
---|
| 418 | case 0x9f: |
---|
| 419 | strlcpy(buffer, "BSD/OS", buffer_size); |
---|
| 420 | break; |
---|
| 421 | case 0xa0: |
---|
| 422 | strlcpy(buffer, "Laptop hibernation partition", buffer_size); |
---|
| 423 | break; |
---|
| 424 | case 0xa1: |
---|
| 425 | strlcpy(buffer, "Laptop hibernation partition", buffer_size); |
---|
| 426 | //case 0xa1: strlcpy(buffer, "HP Volume Expansion (SpeedStor variant)", buffer_size); break; |
---|
| 427 | break; |
---|
| 428 | case 0xa3: |
---|
| 429 | strlcpy(buffer, "HP Volume Expansion (SpeedStor variant)", buffer_size); |
---|
| 430 | break; |
---|
| 431 | case 0xa4: |
---|
| 432 | strlcpy(buffer, "HP Volume Expansion (SpeedStor variant)", buffer_size); |
---|
| 433 | break; |
---|
| 434 | case 0xa5: |
---|
| 435 | strlcpy(buffer, "BSD/386, 386BSD, NetBSD, FreeBSD", buffer_size); |
---|
| 436 | break; |
---|
| 437 | case 0xa6: |
---|
| 438 | strlcpy(buffer, "OpenBSD", buffer_size); |
---|
| 439 | break; |
---|
| 440 | case 0xa7: |
---|
| 441 | strlcpy(buffer, "NeXTSTEP", buffer_size); |
---|
| 442 | break; |
---|
| 443 | case 0xa8: |
---|
| 444 | strlcpy(buffer, "Mac OS-X", buffer_size); |
---|
| 445 | break; |
---|
| 446 | case 0xa9: |
---|
| 447 | strlcpy(buffer, "NetBSD", buffer_size); |
---|
| 448 | break; |
---|
| 449 | case 0xaa: |
---|
| 450 | strlcpy(buffer, "Olivetti Fat 12 1.44Mb Service Partition", |
---|
| 451 | buffer_size); |
---|
| 452 | break; |
---|
| 453 | case 0xab: |
---|
| 454 | strlcpy(buffer, "Mac OS-X Boot partition", buffer_size); |
---|
| 455 | //case 0xab: strlcpy(buffer, "GO! partition", buffer_size); break; |
---|
| 456 | break; |
---|
| 457 | case 0xae: |
---|
| 458 | strlcpy(buffer, "ShagOS filesystem", buffer_size); |
---|
| 459 | break; |
---|
| 460 | case 0xaf: |
---|
| 461 | strlcpy(buffer, "ShagOS swap partition", buffer_size); |
---|
| 462 | break; |
---|
| 463 | case 0xb0: |
---|
| 464 | strlcpy(buffer, "BootStar Dummy", buffer_size); |
---|
| 465 | break; |
---|
| 466 | case 0xb1: |
---|
| 467 | strlcpy(buffer, "HP Volume Expansion (SpeedStor variant)", buffer_size); |
---|
| 468 | break; |
---|
| 469 | case 0xb2: |
---|
| 470 | strlcpy(buffer, "QNX Neutrino Power-Safe filesystem", buffer_size); |
---|
| 471 | break; |
---|
| 472 | case 0xb3: |
---|
| 473 | strlcpy(buffer, "HP Volume Expansion (SpeedStor variant)", buffer_size); |
---|
| 474 | break; |
---|
| 475 | case 0xb4: |
---|
| 476 | strlcpy(buffer, "HP Volume Expansion (SpeedStor variant)", buffer_size); |
---|
| 477 | break; |
---|
| 478 | case 0xb6: |
---|
| 479 | strlcpy(buffer, "HP Volume Expansion (SpeedStor variant)", buffer_size); |
---|
| 480 | break; |
---|
| 481 | case 0xb7: |
---|
| 482 | strlcpy(buffer, "BSDI BSD/386 filesystem", buffer_size); |
---|
| 483 | break; |
---|
| 484 | case 0xb8: |
---|
| 485 | strlcpy(buffer, "BSDI BSD/386 swap partition", buffer_size); |
---|
| 486 | break; |
---|
| 487 | case 0xbb: |
---|
| 488 | strlcpy(buffer, "Boot Wizard hidden", buffer_size); |
---|
| 489 | break; |
---|
| 490 | case 0xbc: |
---|
| 491 | strlcpy(buffer, "Acronis backup partition", buffer_size); |
---|
| 492 | break; |
---|
| 493 | case 0xbe: |
---|
| 494 | strlcpy(buffer, "Solaris 8 boot partition", buffer_size); |
---|
| 495 | break; |
---|
| 496 | case 0xbf: |
---|
| 497 | strlcpy(buffer, "Solaris partition", buffer_size); |
---|
| 498 | break; |
---|
| 499 | case 0xc0: |
---|
| 500 | strlcpy(buffer, "CTOS", buffer_size); |
---|
| 501 | //case 0xc0: strlcpy(buffer, "REAL/32 secure small partition", buffer_size); break; |
---|
| 502 | //case 0xc0: strlcpy(buffer, "NTFT Partition", buffer_size); break; |
---|
| 503 | break; |
---|
| 504 | case 0xc1: |
---|
| 505 | strlcpy(buffer, "DRDOS/secured (FAT-12)", buffer_size); |
---|
| 506 | break; |
---|
| 507 | case 0xc2: |
---|
| 508 | strlcpy(buffer, "Hidden Linux", buffer_size); break; |
---|
| 509 | //strlcpy(buffer, "Reserved for DR-DOS 7+", buffer_size); |
---|
| 510 | break; |
---|
| 511 | case 0xc3: |
---|
| 512 | strlcpy(buffer, "Hidden Linux swap", buffer_size); |
---|
| 513 | break; |
---|
| 514 | case 0xc4: |
---|
| 515 | strlcpy(buffer, "DRDOS/secured (FAT-16, < 32M)", buffer_size); |
---|
| 516 | break; |
---|
| 517 | case 0xc5: |
---|
| 518 | strlcpy(buffer, "DRDOS/secured (extended)", buffer_size); |
---|
| 519 | break; |
---|
| 520 | case 0xc6: |
---|
| 521 | strlcpy(buffer, "DRDOS/secured (FAT-16, >= 32M)", buffer_size); |
---|
| 522 | //case 0xc6: strlcpy(buffer, "Windows NT corrupted FAT16 volume/stripe set", buffer_size); break; |
---|
| 523 | break; |
---|
| 524 | case 0xc7: |
---|
| 525 | strlcpy(buffer, "Windows NT corrupted NTFS volume/stripe set", |
---|
| 526 | buffer_size); |
---|
| 527 | //case 0xc7: strlcpy(buffer, "Syrinx boot", buffer_size); break; |
---|
| 528 | break; |
---|
| 529 | case 0xc8: |
---|
| 530 | strlcpy(buffer, "Reserved for DR-DOS 8.0+", buffer_size); |
---|
| 531 | break; |
---|
| 532 | case 0xc9: |
---|
| 533 | strlcpy(buffer, "Reserved for DR-DOS 8.0+", buffer_size); |
---|
| 534 | break; |
---|
| 535 | case 0xca: |
---|
| 536 | strlcpy(buffer, "Reserved for DR-DOS 8.0+", buffer_size); |
---|
| 537 | break; |
---|
| 538 | case 0xcb: |
---|
| 539 | strlcpy(buffer, "reserved for DRDOS/secured (FAT32)", buffer_size); |
---|
| 540 | break; |
---|
| 541 | case 0xcc: |
---|
| 542 | strlcpy(buffer, "reserved for DRDOS/secured (FAT32, LBA)", buffer_size); |
---|
| 543 | break; |
---|
| 544 | case 0xcd: |
---|
| 545 | strlcpy(buffer, "CTOS Memdump?", buffer_size); |
---|
| 546 | break; |
---|
| 547 | case 0xce: |
---|
| 548 | strlcpy(buffer, "reserved for DRDOS/secured (FAT16, LBA)", buffer_size); |
---|
| 549 | break; |
---|
| 550 | case 0xcf: |
---|
| 551 | strlcpy(buffer, "DR-DOS 7.04+ secured EXT DOS (LBA)", buffer_size); |
---|
| 552 | break; |
---|
| 553 | case 0xd0: |
---|
| 554 | strlcpy(buffer, "REAL/32 secure big partition", buffer_size); |
---|
| 555 | break; |
---|
| 556 | case 0xd1: |
---|
| 557 | strlcpy(buffer, "Old Multiuser DOS secured FAT12", buffer_size); |
---|
| 558 | break; |
---|
| 559 | case 0xd4: |
---|
| 560 | strlcpy(buffer, "Old Multiuser DOS secured FAT16 <32M", buffer_size); |
---|
| 561 | break; |
---|
| 562 | case 0xd5: |
---|
| 563 | strlcpy(buffer, "Old Multiuser DOS secured extended partition", |
---|
| 564 | buffer_size); |
---|
| 565 | break; |
---|
| 566 | case 0xd6: |
---|
| 567 | strlcpy(buffer, "Old Multiuser DOS secured FAT16 >=32M", buffer_size); |
---|
| 568 | break; |
---|
| 569 | case 0xd8: |
---|
| 570 | strlcpy(buffer, "CP/M-86", buffer_size); |
---|
| 571 | break; |
---|
| 572 | case 0xda: |
---|
| 573 | strlcpy(buffer, "Non-FS Data", buffer_size); |
---|
| 574 | break; |
---|
| 575 | case 0xdb: |
---|
| 576 | strlcpy(buffer, |
---|
| 577 | "Digital Research CP/M, Concurrent CP/M, Concurrent DOS", |
---|
| 578 | buffer_size); |
---|
| 579 | //case 0xdb: strlcpy(buffer, "CTOS (Convergent Technologies OS -Unisys)", buffer_size); break; |
---|
| 580 | //case 0xdb: strlcpy(buffer, "KDG Telemetry SCPU boot", buffer_size); break; |
---|
| 581 | break; |
---|
| 582 | case 0xdd: |
---|
| 583 | strlcpy(buffer, "Hidden CTOS Memdump?", buffer_size); |
---|
| 584 | break; |
---|
| 585 | case 0xde: |
---|
| 586 | strlcpy(buffer, "Dell PowerEdge Server utilities (FAT fs)", |
---|
| 587 | buffer_size); |
---|
| 588 | break; |
---|
| 589 | case 0xdf: |
---|
| 590 | strlcpy(buffer, "DG/UX virtual disk manager partition", buffer_size); |
---|
| 591 | break; |
---|
| 592 | //case 0xdf: strlcpy(buffer, "BootIt EMBRM", buffer_size); break; |
---|
| 593 | case 0xe0: |
---|
| 594 | strlcpy(buffer, |
---|
| 595 | "Reserved by STMicroelectronics for a filesystem called ST AVFS.", |
---|
| 596 | buffer_size); |
---|
| 597 | break; |
---|
| 598 | case 0xe1: |
---|
| 599 | strlcpy(buffer, "DOS access or SpeedStor 12-bit FAT extended partition", |
---|
| 600 | buffer_size); |
---|
| 601 | break; |
---|
| 602 | case 0xe3: |
---|
| 603 | strlcpy(buffer, "DOS R/O or SpeedStor", buffer_size); |
---|
| 604 | break; |
---|
| 605 | case 0xe4: |
---|
| 606 | strlcpy(buffer, "SpeedStor 16-bit FAT extended partition < 1024 cyl.", |
---|
| 607 | buffer_size); |
---|
| 608 | break; |
---|
| 609 | case 0xe5: |
---|
| 610 | strlcpy(buffer, |
---|
| 611 | "Tandy DOS with logical sectored FAT (According to Powerquest.)", |
---|
| 612 | buffer_size); |
---|
| 613 | //case 0xe5: strlcpy(buffer, "Reserved", buffer_size); break; |
---|
| 614 | break; |
---|
| 615 | case 0xe6: |
---|
| 616 | strlcpy(buffer, "Storage Dimensions SpeedStor", buffer_size); |
---|
| 617 | break; |
---|
| 618 | case 0xe8: |
---|
| 619 | strlcpy(buffer, "LUKS", buffer_size); |
---|
| 620 | break; |
---|
| 621 | case 0xeb: |
---|
| 622 | strlcpy(buffer, "BeOS", buffer_size); |
---|
| 623 | break; |
---|
| 624 | case 0xec: |
---|
| 625 | strlcpy(buffer, "SkyOS SkyFS", buffer_size); |
---|
| 626 | break; |
---|
| 627 | case 0xed: |
---|
| 628 | strlcpy(buffer, "Reserved for Matthias Paul's Sprytix", buffer_size); |
---|
| 629 | break; |
---|
| 630 | case 0xee: |
---|
| 631 | strlcpy(buffer, |
---|
| 632 | "GPT", |
---|
| 633 | buffer_size); |
---|
| 634 | break; |
---|
| 635 | case 0xef: |
---|
| 636 | strlcpy(buffer, "EFI file system", |
---|
| 637 | buffer_size); |
---|
| 638 | break; |
---|
| 639 | case 0xf0: |
---|
| 640 | strlcpy(buffer, "Linux/PA-RISC boot loader", buffer_size); |
---|
| 641 | break; |
---|
| 642 | case 0xf1: |
---|
| 643 | strlcpy(buffer, "SpeedStor", buffer_size); |
---|
| 644 | break; |
---|
| 645 | case 0xf2: |
---|
| 646 | strlcpy(buffer, |
---|
| 647 | "DOS 3.3+ secondary partition (Powerquest writes: Unisys DOS with logical sectored FAT.)", |
---|
| 648 | buffer_size); |
---|
| 649 | break; |
---|
| 650 | case 0xf3: |
---|
| 651 | strlcpy(buffer, |
---|
| 652 | "Reserved (Powerquest writes: Storage Dimensions SpeedStor.)", |
---|
| 653 | buffer_size); |
---|
| 654 | break; |
---|
| 655 | case 0xf4: |
---|
| 656 | strlcpy(buffer, "SpeedStor large partition", buffer_size); |
---|
| 657 | //case 0xf4: strlcpy(buffer, "Prologue single-volume partition", buffer_size); break; |
---|
| 658 | break; |
---|
| 659 | case 0xf5: |
---|
| 660 | strlcpy(buffer, "Prologue multi-volume partition", buffer_size); |
---|
| 661 | break; |
---|
| 662 | case 0xf6: |
---|
| 663 | strlcpy(buffer, |
---|
| 664 | "Reserved (Powerquest writes: Storage Dimensions SpeedStor. )", |
---|
| 665 | buffer_size); |
---|
| 666 | break; |
---|
| 667 | case 0xf7: |
---|
| 668 | strlcpy(buffer, "DDRdrive Solid State File System", buffer_size); |
---|
| 669 | break; |
---|
| 670 | case 0xf9: |
---|
| 671 | strlcpy(buffer, "pCache", buffer_size); |
---|
| 672 | break; |
---|
| 673 | case 0xfa: |
---|
| 674 | strlcpy(buffer, "Bochs", buffer_size); |
---|
| 675 | break; |
---|
| 676 | case 0xfb: |
---|
| 677 | strlcpy(buffer, "VMware File System partition", buffer_size); |
---|
| 678 | break; |
---|
| 679 | case 0xfc: |
---|
| 680 | strlcpy(buffer, "VMware Swap partition", buffer_size); |
---|
| 681 | break; |
---|
| 682 | case 0xfd: |
---|
| 683 | strlcpy(buffer, |
---|
| 684 | "Linux raid partition with autodetect using persistent superblock (Powerquest writes: Reserved for FreeDOS. )", |
---|
| 685 | buffer_size); |
---|
| 686 | break; |
---|
| 687 | case 0xfe: |
---|
| 688 | strlcpy(buffer, "LANstep", buffer_size); break; |
---|
| 689 | //strlcpy(buffer, "SpeedStor > 1024 cyl.", buffer_size); |
---|
| 690 | //case 0xfe: strlcpy(buffer, "IBM PS/2 IML (Initial Microcode Load) partition, located at the end of the disk.", buffer_size); break; |
---|
| 691 | //case 0xfe: strlcpy(buffer, "Windows NT Disk Administrator hidden partition", buffer_size); break; |
---|
| 692 | //case 0xfe: strlcpy(buffer, "Linux Logical Volume Manager partition (old)", buffer_size); break; |
---|
| 693 | break; |
---|
| 694 | case 0xff: |
---|
| 695 | strlcpy(buffer, "Xenix Bad Block Table ", buffer_size); |
---|
| 696 | break; |
---|
| 697 | default: |
---|
| 698 | strlcpy(buffer, "Unknown", buffer_size); |
---|
| 699 | break; |
---|
| 700 | } |
---|
| 701 | } |
---|