* commandline:

* DiscImageChef.Filesystems/FAT.cs:
	  Correct null volume label and oem string

	* DiscImageChef.Filesystems/NTFS.cs:
	  Some NTFS do not contain signature1.

	* DiscImageChef.Metadata/MediaType.cs:
	  Added XML name for iomega ZIP.

	* DiscImageChef/Commands/Analyze.cs:
	* DiscImageChef/Commands/CreateSidecar.cs:
	  Check multiple partitioning schemes.

	* DiscImageChef/Commands/DumpMedia.cs:
	  Check multiple partitioning schemes.
	Do not add interface data to sidecar for removable devices.
	Add dump hardware to sidecar for remocable block devices.
This commit is contained in:
2016-02-05 00:01:09 +00:00
parent 5f5d59f783
commit ab24c63d4b
10 changed files with 105 additions and 51 deletions

View File

@@ -1,3 +1,11 @@
2016-02-05 Natalia Portillo <claunia@claunia.com>
* FAT.cs:
Correct null volume label and oem string
* NTFS.cs:
Some NTFS do not contain signature1.
2016-02-04 Natalia Portillo <claunia@claunia.com>
* FFS.cs:

View File

@@ -244,7 +244,7 @@ namespace DiscImageChef.Plugins
dosString = new byte[8];
Array.Copy(bpb_sector, 0x03, dosString, 0, 8);
BPB.OEMName = Encoding.ASCII.GetString(dosString);
BPB.OEMName = StringHandlers.CToString(dosString);
BPB.bps = BitConverter.ToUInt16(bpb_sector, 0x0B);
BPB.spc = bpb_sector[0x0D];
BPB.rsectors = BitConverter.ToUInt16(bpb_sector, 0x0E);
@@ -272,10 +272,10 @@ namespace DiscImageChef.Plugins
FAT32PB.serial_no = BitConverter.ToUInt32(bpb_sector, 0x43);
dosString = new byte[11];
Array.Copy(bpb_sector, 0x47, dosString, 0, 11);
FAT32PB.volume_label = Encoding.ASCII.GetString(dosString);
FAT32PB.volume_label = StringHandlers.CToString(dosString);
dosString = new byte[8];
Array.Copy(bpb_sector, 0x52, dosString, 0, 8);
FAT32PB.fs_type = Encoding.ASCII.GetString(dosString);
FAT32PB.fs_type = StringHandlers.CToString(dosString);
}
else
{
@@ -285,10 +285,10 @@ namespace DiscImageChef.Plugins
EPB.serial_no = BitConverter.ToUInt32(bpb_sector, 0x27);
dosString = new byte[11];
Array.Copy(bpb_sector, 0x2B, dosString, 0, 11);
EPB.volume_label = Encoding.ASCII.GetString(dosString);
EPB.volume_label = StringHandlers.CToString(dosString);
dosString = new byte[8];
Array.Copy(bpb_sector, 0x36, dosString, 0, 8);
EPB.fs_type = Encoding.ASCII.GetString(dosString);
EPB.fs_type = StringHandlers.CToString(dosString);
}
sb.AppendFormat("OEM Name: {0}", BPB.OEMName).AppendLine();
@@ -335,7 +335,8 @@ namespace DiscImageChef.Plugins
}
sb.AppendFormat("Volume label: {0}", EPB.volume_label).AppendLine();
xmlFSType.VolumeName = EPB.volume_label;
if(!string.IsNullOrEmpty(EPB.volume_label))
xmlFSType.VolumeName = EPB.volume_label;
sb.AppendFormat("Filesystem type: {0}", EPB.fs_type).AppendLine();
}
else if (EPB.signature == 0x28 || EPB.signature == 0x29)
@@ -354,7 +355,8 @@ namespace DiscImageChef.Plugins
}
sb.AppendFormat("Volume label: {0}", EPB.volume_label).AppendLine();
xmlFSType.VolumeName = EPB.volume_label;
if(!string.IsNullOrEmpty(EPB.volume_label))
xmlFSType.VolumeName = EPB.volume_label;
sb.AppendFormat("Filesystem type: {0}", EPB.fs_type).AppendLine();
}
}

View File

@@ -57,8 +57,8 @@ namespace DiscImageChef.Plugins
return false;
byte[] eigth_bytes = new byte[8];
byte signature1, fats_no;
UInt16 spfat, signature2;
byte fats_no;
UInt16 spfat, signature;
string oem_name;
byte[] ntfs_bpb = imagePlugin.ReadSector(0 + partitionStart);
@@ -79,15 +79,9 @@ namespace DiscImageChef.Plugins
if (spfat != 0)
return false;
signature1 = ntfs_bpb[0x026];
if (signature1 != 0x80)
return false;
signature2 = BitConverter.ToUInt16(ntfs_bpb, 0x1FE);
return signature2 == 0xAA55;
signature = BitConverter.ToUInt16(ntfs_bpb, 0x1FE);
return signature == 0xAA55;
}
public override void GetInformation(ImagePlugins.ImagePlugin imagePlugin, ulong partitionStart, ulong partitionEnd, out string information)