MCPcopy Create free account
hub / github.com/LUX-Core/lux / DigestFile

Function DigestFile

src/cryptopp/test.cpp:557–586  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

555}
556
557void DigestFile(const char *filename)
558{
559 SHA1 sha;
560 RIPEMD160 ripemd;
561 SHA256 sha256;
562 Tiger tiger;
563 SHA512 sha512;
564 Whirlpool whirlpool;
565 vector_member_ptrs<HashFilter> filters(6);
566 filters[0].reset(new HashFilter(sha));
567 filters[1].reset(new HashFilter(ripemd));
568 filters[2].reset(new HashFilter(tiger));
569 filters[3].reset(new HashFilter(sha256));
570 filters[4].reset(new HashFilter(sha512));
571 filters[5].reset(new HashFilter(whirlpool));
572
573 member_ptr<ChannelSwitch> channelSwitch(new ChannelSwitch);
574 size_t i;
575 for (i=0; i<filters.size(); i++)
576 channelSwitch->AddDefaultRoute(*filters[i]);
577 FileSource(filename, true, channelSwitch.release());
578
579 HexEncoder encoder(new FileSink(cout), false);
580 for (i=0; i<filters.size(); i++)
581 {
582 cout << filters[i]->AlgorithmName() << ": ";
583 filters[i]->TransferTo(encoder);
584 cout << "\n";
585 }
586}
587
588void HmacFile(const char *hexKey, const char *file)
589{

Callers 1

CRYPTOPP_API mainFunction · 0.85

Calls 7

FileSourceFunction · 0.85
AddDefaultRouteMethod · 0.80
TransferToMethod · 0.80
resetMethod · 0.45
sizeMethod · 0.45
releaseMethod · 0.45
AlgorithmNameMethod · 0.45

Tested by

no test coverage detected