Remove checks for BOOTSIG[23] from FAT32 bootblocks.
There seems to be very little documentary evidence outside this implementation to suggest a these checks are neccessary, and more than one camera-formatted flash disk fails the check, but mounts successfully on most other systems. Reviewed By: bde@
This commit is contained in:
parent
482b02b3f3
commit
20c5ba3685
@ -61,15 +61,11 @@ struct bootsector710 {
|
||||
int8_t bsOEMName[8]; /* OEM name and version */
|
||||
int8_t bsBPB[53]; /* BIOS parameter block */
|
||||
int8_t bsExt[26]; /* Bootsector Extension */
|
||||
int8_t bsBootCode[418]; /* pad so structure is 512b */
|
||||
u_int8_t bsBootSectSig2; /* 2 & 3 are only defined for FAT32? */
|
||||
u_int8_t bsBootSectSig3;
|
||||
int8_t bsBootCode[420]; /* pad so structure is 512b */
|
||||
u_int8_t bsBootSectSig0;
|
||||
u_int8_t bsBootSectSig1;
|
||||
#define BOOTSIG0 0x55
|
||||
#define BOOTSIG1 0xaa
|
||||
#define BOOTSIG2 0
|
||||
#define BOOTSIG3 0
|
||||
};
|
||||
|
||||
union bootsector {
|
||||
|
@ -510,9 +510,7 @@ mountmsdosfs(devvp, mp, td)
|
||||
#endif /* !MSDOSFS_LARGE */
|
||||
|
||||
if (pmp->pm_RootDirEnts == 0) {
|
||||
if (bsp->bs710.bsBootSectSig2 != BOOTSIG2
|
||||
|| bsp->bs710.bsBootSectSig3 != BOOTSIG3
|
||||
|| pmp->pm_Sectors
|
||||
if (pmp->pm_Sectors
|
||||
|| pmp->pm_FATsecs
|
||||
|| getushort(b710->bpbFSVers)) {
|
||||
error = EINVAL;
|
||||
|
Loading…
Reference in New Issue
Block a user