GCC Code Coverage Report


Directory: cvmfs/
File: cvmfs/publish/cmd_hash.h
Date: 2025-06-22 02:36:02
Exec Total Coverage
Lines: 0 13 0.0%
Branches: 0 42 0.0%

Line Branch Exec Source
1 /**
2 * This file is part of the CernVM File System.
3 */
4
5 #ifndef CVMFS_PUBLISH_CMD_HASH_H_
6 #define CVMFS_PUBLISH_CMD_HASH_H_
7
8 #include <string>
9
10 #include "publish/command.h"
11
12 namespace publish {
13
14 class CmdHash : public Command {
15 public:
16 virtual std::string GetName() const { return "hash"; }
17 virtual std::string GetBrief() const { return "CernVM-FS hash functions"; }
18 virtual std::string GetDescription() const {
19 return "Hash over a string or STDIN with one of the hash functions in "
20 "CernVM-FS";
21 }
22 virtual ParameterList GetParams() const {
23 ParameterList p;
24 p.push_back(
25 Parameter::Mandatory("algorithm", 'a', "algorithm name",
26 "hash algorithm to use (e.g. shake128, sha1)"));
27 p.push_back(Parameter::Optional("input", 'i', "string",
28 "data to hash over (instead of STDIN)"));
29 p.push_back(Parameter::Switch("fingerprint", 'f',
30 "print in fingerprint representation"));
31 p.push_back(Parameter::Switch(
32 "split", 's', "additionally print the hash as 64bit integer tuples"));
33 return p;
34 }
35 virtual bool IsHidden() const { return true; }
36
37 virtual int Main(const Options &options);
38 };
39
40 } // namespace publish
41
42 #endif // CVMFS_PUBLISH_CMD_HASH_H_
43