]> git.saurik.com Git - apt.git/commitdiff
* apt-pkg/packagemanager.cc:
authorMichael Vogt <michael.vogt@ubuntu.com>
Wed, 2 Dec 2009 16:22:32 +0000 (17:22 +0100)
committerMichael Vogt <michael.vogt@ubuntu.com>
Wed, 2 Dec 2009 16:22:32 +0000 (17:22 +0100)
  - add output about pre-depends configuring when debug::pkgPackageManager
    is used
* methods/https.cc:
  - fix incorrect use of CURLOPT_TIMEOUT, closes: #497983, LP: #354972
    thanks to Brian Thomason for the patch
* apt-pkg/depcache.cc, apt-pkg/indexcopy.cc:
  - typo fix (LP: #462328)

* cmdline/apt-key:
  - Emit a warning if removed keys keyring is missing and skip associated
    checks (LP: #218971)

apt-pkg/depcache.cc
apt-pkg/indexcopy.cc
apt-pkg/packagemanager.cc
cmdline/apt-key
debian/changelog
methods/https.cc
methods/https.h

index 228750b74cbbccf81df8005e554929e4b70d9c74..ec7a5de647b341aae15d02dfd8787242043c0adc 100644 (file)
@@ -243,7 +243,7 @@ bool pkgDepCache::writeStateFile(OpProgress *prog, bool InstalledOnly)      /*{{{*/
            continue;
         bool newAuto = (PkgState[pkg->ID].Flags & Flag::Auto);
         if(_config->FindB("Debug::pkgAutoRemove",false))
-           std::clog << "Update exisiting AutoInstall info: " 
+           std::clog << "Update existing AutoInstall info: " 
                      << pkg.Name() << std::endl;
         TFRewriteData rewrite[2];
         rewrite[0].Tag = "Auto-Installed";
index 0142d7dbee4a5add4b60d44fc9c08a298ecd2feb..57c9f95caa8991949530b6b9bfb7f75a3ca74802 100644 (file)
@@ -527,19 +527,19 @@ bool SigVerify::Verify(string prefix, string file, indexRecords *MetaIndex)
    // (non-existing files are not considered a error)
    if(!FileExists(prefix+file))
    {
-      _error->Warning("Skipping non-exisiting file %s", string(prefix+file).c_str());
+      _error->Warning(_("Skipping nonexistent file %s"), string(prefix+file).c_str());
       return true;
    }
 
    if (!Record) 
    {
-      _error->Warning("Can't find authentication record for: %s",file.c_str());
+      _error->Warning(_("Can't find authentication record for: %s"), file.c_str());
       return false;
    }
 
    if (!Record->Hash.VerifyFile(prefix+file))
    {
-      _error->Warning("Hash mismatch for: %s",file.c_str());
+      _error->Warning(_("Hash mismatch for: %s"),file.c_str());
       return false;
    }
 
index dbcd461acb3770996dde2d45a581c137f99839a4..7be6e72f231e6d8d17150f13d4a6355eacdceccf 100644 (file)
@@ -297,6 +297,9 @@ bool pkgPackageManager::ConfigureAll()
    of it's dependents. */
 bool pkgPackageManager::SmartConfigure(PkgIterator Pkg)
 {
+   if (Debug == true)
+      clog << "SmartConfigure " << Pkg.Name() << endl;
+
    pkgOrderList OList(&Cache);
 
    if (DepAdd(OList,Pkg) == false)
@@ -491,6 +494,9 @@ bool pkgPackageManager::SmartUnPack(PkgIterator Pkg)
       
       while (End->Type == pkgCache::Dep::PreDepends)
       {
+        if (Debug == true)
+           clog << "PreDepends order for " << Pkg.Name() << std::endl;
+
         // Look for possible ok targets.
         SPtrArray<Version *> VList = Start.AllTargets();
         bool Bad = true;
@@ -504,6 +510,8 @@ bool pkgPackageManager::SmartUnPack(PkgIterator Pkg)
                Pkg.State() == PkgIterator::NeedsNothing)
            {
               Bad = false;
+              if (Debug == true)
+                 clog << "Found ok package " << Pkg.Name() << endl;
               continue;
            }
         }
@@ -519,6 +527,8 @@ bool pkgPackageManager::SmartUnPack(PkgIterator Pkg)
                (Cache[Pkg].Keep() == true && Pkg.State() == PkgIterator::NeedsNothing))
               continue;
 
+           if (Debug == true)
+              clog << "Trying to SmartConfigure " << Pkg.Name() << endl;
            Bad = !SmartConfigure(Pkg);
         }
 
index 7bb30240e2a191d0d1fedbb7f52297534f80ca76..5f4e02fdf03975bdda0a02c80f0efdb46efa0593 100755 (executable)
@@ -93,13 +93,17 @@ update() {
     # add any security. we *need* this check on net-update though
     $GPG_CMD --quiet --batch --keyring $ARCHIVE_KEYRING --export | $GPG --import
 
-    # remove no-longer supported/used keys
-    keys=`$GPG_CMD --keyring $REMOVED_KEYS --with-colons --list-keys | grep ^pub | cut -d: -f5`
-    for key in $keys; do
-       if $GPG --list-keys --with-colons | grep ^pub | cut -d: -f5 | grep -q $key; then
-           $GPG --quiet --batch --delete-key --yes ${key}
-       fi
-    done
+    if [ -r "$REMOVED_KEYS" ]; then
+       # remove no-longer supported/used keys
+       keys=`$GPG_CMD --keyring $REMOVED_KEYS --with-colons --list-keys | grep ^pub | cut -d: -f5`
+       for key in $keys; do
+           if $GPG --list-keys --with-colons | grep ^pub | cut -d: -f5 | grep -q $key; then
+               $GPG --quiet --batch --delete-key --yes ${key}
+           fi
+       done
+    else
+       echo "Warning: removed keys keyring  $REMOVED_KEYS missing or not readable" >&2
+    fi
 }
 
 
index 6ffa8c33a9db17273c127661c2211e9120b5591c..5cff0919ad30a2bdd6e454a18fd8530dfb0173f5 100644 (file)
@@ -24,6 +24,21 @@ apt (0.7.25) UNRELEASED; urgency=low
   * apt-pkg/packagemanager.cc:
     - fix overly aggressive immediate config propergation
       (thanks to David Kalnischkies)
+  * apt-pkg/packagemanager.cc:
+    - add output about pre-depends configuring when debug::pkgPackageManager
+      is used
+  * methods/https.cc:
+    - fix incorrect use of CURLOPT_TIMEOUT, closes: #497983, LP: #354972
+      thanks to Brian Thomason for the patch
+
+  [ Brian Murray ]
+  * apt-pkg/depcache.cc, apt-pkg/indexcopy.cc:
+    - typo fix (LP: #462328)
+  
+  [ Loïc Minier ]
+  * cmdline/apt-key:
+    - Emit a warning if removed keys keyring is missing and skip associated
+      checks (LP: #218971)
 
   [ Julian Andres Klode ]
   * doc/apt.conf.5.xml:
index 79e6fea3f42d6c1b173993a6092ba5d1a71329da..47988970b5c93c8b89733383a985efe0c0c439d9 100644 (file)
@@ -213,8 +213,10 @@ bool HttpsMethod::Fetch(FetchItem *Itm)
 
    // set timeout
    int timeout = _config->FindI("Acquire::http::Timeout",120);
-   curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout);
    curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, timeout);
+   //set really low lowspeed timeout (see #497983)
+   curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, DL_MIN_SPEED);
+   curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, timeout);
 
    // set redirect options and default to 10 redirects
    bool AllowRedirect = _config->FindI("Acquire::https::AllowRedirect", true);
index 2c33d95ee10db3d6e0e1590b1e3cf7c1483639ad..3f0c416b6c9d5638faf9364a50c68cc932d0f8ae 100644 (file)
@@ -24,6 +24,8 @@ class HttpsMethod;
 
 class HttpsMethod : public pkgAcqMethod
 {
+   // minimum speed in bytes/se that triggers download timeout handling
+   static const int DL_MIN_SPEED = 10;
 
    virtual bool Fetch(FetchItem *);
    static size_t write_data(void *buffer, size_t size, size_t nmemb, void *userp);