From 7e8961f72056f53ccf78eba0ee8c240bc2310ab8 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 13 Jan 2005 17:39:26 +0000 Subject: * Added SHA-1 support. `nix-hash' now has an option `--type sha1' to select SHA-1 hashing. --- src/nix-hash/nix-hash.cc | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'src/nix-hash') diff --git a/src/nix-hash/nix-hash.cc b/src/nix-hash/nix-hash.cc index 23309ff7469e..6a044972afb7 100644 --- a/src/nix-hash/nix-hash.cc +++ b/src/nix-hash/nix-hash.cc @@ -13,13 +13,24 @@ void printHelp() void run(Strings args) { + HashType ht = htMD5; bool flat = false; + for (Strings::iterator i = args.begin(); i != args.end(); i++) + { if (*i == "--flat") flat = true; + else if (*i == "--type") { + ++i; + if (i == args.end()) throw UsageError("`--type' requires an argument"); + if (*i == "md5") ht = htMD5; + else if (*i == "sha1") ht = htSHA1; + else throw UsageError(format("unknown hash type `%1%'") % *i); + } else - cout << format("%1%\n") % (string) - (flat ? hashFile(*i) : hashPath(*i)); + cout << format("%1%\n") % (string) + (flat ? hashFile(*i, ht) : hashPath(*i, ht)); + } } -- cgit 1.4.1