Okay. However, when I looked at the information provided in this link: https://www.cryptopp.com/wiki/HashVerificationFilter#String_and_File_Sources, it appears that the method suggested to avoid memory usage doesn't actually achieve that goal, as the line FileSource fs("zero.dat", true); in the verification step is performing as intended.
Unfortunately, I am unable to use FileSource fs("zero.dat", false, new HashVerificationFilter(sha256, new StringSink(digest))); or FileSource fs("zero.dat", true... either, because it's unclear how to associate the digest with the input file. On Saturday, May 20, 2023 at 6:48:40 PM UTC-4 Jeffrey Walton wrote: > On Sat, May 20, 2023 at 4:45 PM Jeffrey Walton <nolo...@gmail.com> wrote: > > > > On Sat, May 20, 2023 at 3:00 PM Tom <thoma...@gmail.com> wrote: > > > > > > calling `FileSource fs("zero.dat", true);` seems to allocate the > memory. > > > > Try the overload which takes a std::istream reference: > > https://www.cryptopp.com/wiki/FileSource > > I took another look... The issue is you passed 'true' for 'pumpAll'. > That reads the entire file, and puts it in an output buffer for the > next filter. > > Use 'false' instead, and then call 'PumpAll()' manually. Something > like the example. Something like this should suffice: > > FileSource fs("zero.dat", false, new Filter(..., new Sink(...))); > fs.PumpAll(); > > It should pump in 4k blocks. > > Jeff > -- You received this message because you are subscribed to the Google Groups "Crypto++ Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to cryptopp-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/cryptopp-users/7af8a6f5-5cc2-47d2-b35b-21c131bbf774n%40googlegroups.com.