SpamSum Overflow exception when hashing large file #794

Open
opened 2026-01-29 15:29:53 +00:00 by claunia · 0 comments
Owner

Originally created by @robin-francois on GitHub (Aug 1, 2021).

Prerequisites

  • Are you running the latest version?

Check and fill as appropriate:

  • I was running Aaru under Linux aaru 5.2.99.3380-alpha+f78998d4...
  • ...in 64-bit
  • ...using an Intel / AMD processor
    • Image format: QCOW2
    • Application that created the image: Aaru
  • I was checksumming the image

Description

While dumping a 1Tb USB external hard drive, at the hashing phase, the following exception is raised: System.OverflowException: The input exceeds data types.

Exact command line used:

aaru m dump -f /dev/sdd output.qcow2

Expected behavior:

Hashing phase to finish to finish dumping of the media.

Actual behavior:

Dumping crashes at the hashing phase.
The resulting qcow2 is valid even if the hashing has failed.

Output of command execution with debug output enabled

Hashing sectors...
Hashing sector 1953458112 of 1953458176
Unhandled exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
 ---> System.OverflowException: The input exceeds data types.
   at Aaru.Checksums.SpamSumContext.End() in /home/Extraction/Aaru/Aaru.Checksums/SpamSumContext.cs:line 120
   at Aaru.Core.Checksum.End() in /home/Extraction/Aaru/Aaru.Core/Checksum.cs:line 463
   at Aaru.Core.Sidecar.BlockMedia(IMediaImage image, Guid filterId, String imagePath, FileInfo fi, PluginBase plugins, List`1 imgChecksums, CICMMetadataType& sidecar, Encoding encoding) in /home/Extraction/Aaru/Aaru.Core/Sidecar/BlockMedia.cs:line 364
   at Aaru.Core.Sidecar.Create() in /home/Extraction/Aaru/Aaru.Core/Sidecar/Sidecar.cs:line 154
   at Aaru.Core.Devices.Dumping.Dump.Sbc(Dictionary`2 mediaTags, MediaType dskType, Boolean opticalDisc, Dump dvdDecrypt) in /home/Extraction/Aaru/Aaru.Core/Devices/Dumping/Sbc/Dump.cs:line 982
   at Aaru.Core.Devices.Dumping.Dump.Scsi() in /home/Extraction/Aaru/Aaru.Core/Devices/Dumping/SCSI.cs:line 251
   at Aaru.Core.Devices.Dumping.Dump.Start() in /home/Extraction/Aaru/Aaru.Core/Devices/Dumping/Dump.cs:line 239
   at Aaru.Commands.Media.DumpMediaCommand.Invoke(Boolean debug, Boolean verbose, String cicmXml, String devicePath, Boolean resume, String encoding, Boolean firstPregap, Boolean fixOffset, Boolean force, Boolean metadata, Boolean trim, String outputPath, String options, Boolean persistent, UInt16 retryPasses, UInt32 skip, Byte speed, Boolean stopOnError, String format, String subchannel, Boolean private, Boolean fixSubchannelPosition, Boolean retrySubchannel, Boolean fixSubchannel, Boolean fixSubchannelCrc, Boolean generateSubchannels, Boolean skipCdiReadyHole, Boolean eject, UInt32 maxBlocks, Boolean useBufferedReads, Boolean storeEncrypted, Boolean titleKeys)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor, Boolean wrapExceptions)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
   at System.CommandLine.Invocation.ModelBindingCommandHandler.InvokeAsync(InvocationContext context)
   at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<<BuildInvocationChain>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseParseErrorReporting>b__19_0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass14_0.<<UseHelp>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass22_0.<<UseVersionOption>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass21_0.<<UseTypoCorrections>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseSuggestDirective>b__20_0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseParseDirective>b__18_0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseDebugDirective>b__10_0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<RegisterWithDotnetSuggest>b__9_0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass12_0.<<UseExceptionHandler>b__0>d.MoveNext()

Image

Originally created by @robin-francois on GitHub (Aug 1, 2021). ### Prerequisites * [x] Are you running the latest version? ### Check and fill as appropriate: * [ ] I was running Aaru under Linux `aaru 5.2.99.3380-alpha+f78998d4`... * [x] ...in 64-bit * [x] ...using an Intel / AMD processor * **Image format**: QCOW2 * **Application that created the image**: Aaru * [x] I was checksumming the image ### Description While dumping a 1Tb USB external hard drive, at the hashing phase, the following exception is raised: `System.OverflowException: The input exceeds data types.` ### Exact command line used: `aaru m dump -f /dev/sdd output.qcow2` ### Expected behavior: Hashing phase to finish to finish dumping of the media. ### Actual behavior: Dumping crashes at the hashing phase. The resulting qcow2 is valid even if the hashing has failed. ### Output of command execution with debug output enabled ``` Hashing sectors... Hashing sector 1953458112 of 1953458176 Unhandled exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.OverflowException: The input exceeds data types. at Aaru.Checksums.SpamSumContext.End() in /home/Extraction/Aaru/Aaru.Checksums/SpamSumContext.cs:line 120 at Aaru.Core.Checksum.End() in /home/Extraction/Aaru/Aaru.Core/Checksum.cs:line 463 at Aaru.Core.Sidecar.BlockMedia(IMediaImage image, Guid filterId, String imagePath, FileInfo fi, PluginBase plugins, List`1 imgChecksums, CICMMetadataType& sidecar, Encoding encoding) in /home/Extraction/Aaru/Aaru.Core/Sidecar/BlockMedia.cs:line 364 at Aaru.Core.Sidecar.Create() in /home/Extraction/Aaru/Aaru.Core/Sidecar/Sidecar.cs:line 154 at Aaru.Core.Devices.Dumping.Dump.Sbc(Dictionary`2 mediaTags, MediaType dskType, Boolean opticalDisc, Dump dvdDecrypt) in /home/Extraction/Aaru/Aaru.Core/Devices/Dumping/Sbc/Dump.cs:line 982 at Aaru.Core.Devices.Dumping.Dump.Scsi() in /home/Extraction/Aaru/Aaru.Core/Devices/Dumping/SCSI.cs:line 251 at Aaru.Core.Devices.Dumping.Dump.Start() in /home/Extraction/Aaru/Aaru.Core/Devices/Dumping/Dump.cs:line 239 at Aaru.Commands.Media.DumpMediaCommand.Invoke(Boolean debug, Boolean verbose, String cicmXml, String devicePath, Boolean resume, String encoding, Boolean firstPregap, Boolean fixOffset, Boolean force, Boolean metadata, Boolean trim, String outputPath, String options, Boolean persistent, UInt16 retryPasses, UInt32 skip, Byte speed, Boolean stopOnError, String format, String subchannel, Boolean private, Boolean fixSubchannelPosition, Boolean retrySubchannel, Boolean fixSubchannel, Boolean fixSubchannelCrc, Boolean generateSubchannels, Boolean skipCdiReadyHole, Boolean eject, UInt32 maxBlocks, Boolean useBufferedReads, Boolean storeEncrypted, Boolean titleKeys) --- End of inner exception stack trace --- at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor, Boolean wrapExceptions) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) at System.CommandLine.Invocation.ModelBindingCommandHandler.InvokeAsync(InvocationContext context) at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<<BuildInvocationChain>b__0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseParseErrorReporting>b__19_0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass14_0.<<UseHelp>b__0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass22_0.<<UseVersionOption>b__0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass21_0.<<UseTypoCorrections>b__0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseSuggestDirective>b__20_0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseParseDirective>b__18_0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseDebugDirective>b__10_0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<RegisterWithDotnetSuggest>b__9_0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass12_0.<<UseExceptionHandler>b__0>d.MoveNext() ``` ### Image <!-- Upload the image, compressed and with the number of this issue. --> <!--- If the image contains personal data contact the project lead, and the image contents will be handled confidentially under the GDPR requirements. -->
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: aaru-dps/Aaru-aaru-dps#794