| 1 |  |  | /** | 
    
    | 2 |  |  |  * This file is part of the CernVM File System. | 
    
    | 3 |  |  |  */ | 
    
    | 4 |  |  |  | 
    
    | 5 |  |  | #ifndef CVMFS_SWISSKNIFE_HASH_H_ | 
    
    | 6 |  |  | #define CVMFS_SWISSKNIFE_HASH_H_ | 
    
    | 7 |  |  |  | 
    
    | 8 |  |  | #include <string> | 
    
    | 9 |  |  |  | 
    
    | 10 |  |  | #include "swissknife.h" | 
    
    | 11 |  |  |  | 
    
    | 12 |  |  | namespace swissknife { | 
    
    | 13 |  |  |  | 
    
    | 14 |  |  | class CommandHash : public Command { | 
    
    | 15 |  |  |  public: | 
    
    | 16 |  |  |   ~CommandHash() { } | 
    
    | 17 |  |  |   virtual std::string GetName() const { return "hash"; } | 
    
    | 18 |  |  |   virtual std::string GetDescription() const { | 
    
    | 19 |  |  |     return "Hashes stdin and prints out the result on stdout."; | 
    
    | 20 |  |  |   } | 
    
    | 21 |  |  |   virtual ParameterList GetParams() const { | 
    
    | 22 |  |  |     ParameterList r; | 
    
    | 23 |  |  |     r.push_back(Parameter::Mandatory('a', "hash algorithm")); | 
    
    | 24 |  |  |     r.push_back(Parameter::Switch('f', "print in fingerprint representation")); | 
    
    | 25 |  |  |     return r; | 
    
    | 26 |  |  |   } | 
    
    | 27 |  |  |   int Main(const ArgumentList &args); | 
    
    | 28 |  |  | }; | 
    
    | 29 |  |  |  | 
    
    | 30 |  |  | }  // namespace swissknife | 
    
    | 31 |  |  |  | 
    
    | 32 |  |  | #endif  // CVMFS_SWISSKNIFE_HASH_H_ |