*** subr_diskmbr.c.000 Fri Jan 28 11:22:07 2000 --- subr_diskmbr.c Mon Jun 26 19:42:55 2000 *************** *** 49,55 **** --- 49,59 ---- #include #define DOSPTYP_EXTENDED 5 #define DOSPTYP_EXTENDEDX 15 + #define DOSPTYP_LINUXEXTENDED 133 #define DOSPTYP_ONTRACK 84 + #define IS_EXTENDED(p) \ + ((p) == DOSPTYP_EXTENDED || (p) == DOSPTYP_EXTENDEDX \ + || (p) == DOSPTYP_LINUXEXTENDED ) #include #include #include *************** *** 343,350 **** /* Handle extended partitions. */ sp -= NDOSPART; for (dospart = 0; dospart < NDOSPART; dospart++, sp++) ! if (sp->ds_type == DOSPTYP_EXTENDED || ! sp->ds_type == DOSPTYP_EXTENDEDX) mbr_extended(bp->b_dev, lp, ssp, sp->ds_offset, sp->ds_size, sp->ds_offset, max_nsectors, max_ntracks, mbr_offset, 1); --- 347,353 ---- /* Handle extended partitions. */ sp -= NDOSPART; for (dospart = 0; dospart < NDOSPART; dospart++, sp++) ! if (IS_EXTENDED(sp->ds_type)) mbr_extended(bp->b_dev, lp, ssp, sp->ds_offset, sp->ds_size, sp->ds_offset, max_nsectors, max_ntracks, mbr_offset, 1); *************** *** 433,440 **** if (dp->dp_scyl == 0 && dp->dp_shd == 0 && dp->dp_ssect == 0 && dp->dp_start == 0 && dp->dp_size == 0) continue; ! if (dp->dp_typ == DOSPTYP_EXTENDED || ! dp->dp_typ == DOSPTYP_EXTENDEDX) { static char buf[32]; sname = dsname(dev, dkunit(dev), WHOLE_DISK_SLICE, --- 436,442 ---- if (dp->dp_scyl == 0 && dp->dp_shd == 0 && dp->dp_ssect == 0 && dp->dp_start == 0 && dp->dp_size == 0) continue; ! if (IS_EXTENDED(dp->dp_typ)) { static char buf[32]; sname = dsname(dev, dkunit(dev), WHOLE_DISK_SLICE,