* DiscImageChef/Main.cs:

* DiscImageChef/Options.cs:
	* DiscImageChef/DiscImageChef.csproj:
	* DiscImageChef/Commands/MediaScan.cs:
	  Added media-scan command.

	* DiscImageChef.Decoders/SCSI/Inquiry.cs:
	  Fixes decoding for devices that follow old 5-byte SCSI
	  INQUIRY format.

	* DiscImageChef.Decoders/SCSI/Sense.cs:
	  Fixes printing of sense block missing a newline.

	* DiscImageChef.Devices/Device/Variables.cs:
	* DiscImageChef.Devices/Device/Constructor.cs:
	  Added an IsRemovable field.

	* DiscImageChef.Devices/Device/ScsiCommands.cs:
	  Fixed SCSI READ CAPACITY CDB size.
	Fixed READ CD-DA MSF method name.
	Implemented SCSI SEEK (6) and SEEK (10) commands.

	* DiscImageChef.Devices/Linux/Command.cs:
	* DiscImageChef.Devices/Windows/Command.cs:
	  Fixed memory leaking on unmanaged heap.

	* DiscImageChef.Helpers/StringHandlers.cs:
	  Fixed string conversion when input byte array is null.

	* DiscImageChef/Commands/MediaInfo.cs:
	  Check for inserted medium only on removable media devices.
This commit is contained in:
2015-12-30 11:45:27 +00:00
parent 2ea31ee0de
commit a7d87e8b1a
3 changed files with 12 additions and 3 deletions

View File

@@ -61,9 +61,9 @@ namespace DiscImageChef.Decoders.SCSI
if (SCSIInquiryResponse == null)
return null;
if (SCSIInquiryResponse.Length < 36)
if (SCSIInquiryResponse.Length < 36 && SCSIInquiryResponse.Length != 5)
{
DicConsole.DebugWriteLine("SCSI INQUIRY decoder", "INQUIRY response is less than minimum of 36 bytes, decoded data can be incorrect, not decoding.");
DicConsole.DebugWriteLine("SCSI INQUIRY decoder", "INQUIRY response is {0} bytes, less than minimum of 36 bytes, decoded data can be incorrect, not decoding.", SCSIInquiryResponse.Length);
return null;
}

View File

@@ -425,7 +425,7 @@ namespace DiscImageChef.Decoders.SCSI
if (decoded.ILI)
sb.AppendLine("Incorrect length indicator");
if (decoded.InformationValid)
sb.AppendFormat("On logical block {0}", decoded.Information);
sb.AppendFormat("On logical block {0}", decoded.Information).AppendLine();
if (decoded.AdditionalLength < 6)
return sb.ToString();