]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/contrib/hashes.cc
don't leak an FD in lz4 (de)compression
[apt.git] / apt-pkg / contrib / hashes.cc
index 41a0037cd5ac9974cd6fee41770d54e0ef3a3346..755ad20351443d321a6372ad614f2e1e2218e0fe 100644 (file)
@@ -129,13 +129,24 @@ APT_PURE bool HashString::empty() const                                   /*{{{*/
    return (Type.empty() || Hash.empty());
 }
                                                                        /*}}}*/
+
+APT_PURE static bool IsConfigured(const char *name, const char *what)
+{
+   std::string option;
+   strprintf(option, "APT::Hashes::%s::%s", name, what);
+   return _config->FindB(option, false);
+}
+
 APT_PURE bool HashString::usable() const                               /*{{{*/
 {
    return (
       (Type != "Checksum-FileSize") &&
-      (Type != "MD5Sum")
+      (Type != "MD5Sum") &&
+      (Type != "SHA1") &&
+      !IsConfigured(Type.c_str(), "Untrusted")
    );
 }
+                                                                       /*}}}*/
 std::string HashString::toStr() const                                  /*{{{*/
 {
    return Type + ":" + Hash;