+ /* FAT32 should have a valid signature in the fsinfo block */
+ fsinfo_sect = le16_to_cpu(vs->type.fat32.fsinfo_sector);
+ buf = volume_id_get_buffer(id, off + (fsinfo_sect * sector_size), 0x200);
+ if (buf == NULL)
+ return -1;
+ fsinfo = (struct fat32_fsinfo *) buf;
+ if (memcmp(fsinfo->signature1, "\x52\x52\x61\x41", 4) != 0)
+ return -1;
+ if (memcmp(fsinfo->signature2, "\x72\x72\x41\x61", 4) != 0)
+ return -1 ;
+
+ vs = (struct vfat_super_block *) volume_id_get_buffer(id, off, 0x200);
+ if (vs == NULL)
+ return -1;
+