summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Vogt <michael.vogt@ubuntu.com>2009-12-02 17:22:32 +0100
committerMichael Vogt <michael.vogt@ubuntu.com>2009-12-02 17:22:32 +0100
commit16d7341fce96b089aa2a1c241acd0a72209bcd7f (patch)
treeb2bf899c035363fbc0b561f1006a787cb06527f0
parent7efded877fcf46f51b464fe4c5e053f26609f9d0 (diff)
parent5085e660679cdbb51783702898c42000d5db4fba (diff)
* 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 * 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)
-rw-r--r--apt-pkg/depcache.cc2
-rw-r--r--apt-pkg/indexcopy.cc6
-rw-r--r--apt-pkg/packagemanager.cc10
-rwxr-xr-xcmdline/apt-key18
-rw-r--r--debian/changelog15
-rw-r--r--methods/https.cc4
-rw-r--r--methods/https.h2
7 files changed, 45 insertions, 12 deletions
diff --git a/apt-pkg/depcache.cc b/apt-pkg/depcache.cc
index 228750b74..ec7a5de64 100644
--- a/apt-pkg/depcache.cc
+++ b/apt-pkg/depcache.cc
@@ -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";
diff --git a/apt-pkg/indexcopy.cc b/apt-pkg/indexcopy.cc
index 0142d7dbe..57c9f95ca 100644
--- a/apt-pkg/indexcopy.cc
+++ b/apt-pkg/indexcopy.cc
@@ -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;
}
diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc
index dbcd461ac..7be6e72f2 100644
--- a/apt-pkg/packagemanager.cc
+++ b/apt-pkg/packagemanager.cc
@@ -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);
}
diff --git a/cmdline/apt-key b/cmdline/apt-key
index 7bb30240e..5f4e02fdf 100755
--- a/cmdline/apt-key
+++ b/cmdline/apt-key
@@ -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
}
diff --git a/debian/changelog b/debian/changelog
index 6ffa8c33a..5cff0919a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -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:
diff --git a/methods/https.cc b/methods/https.cc
index 79e6fea3f..47988970b 100644
--- a/methods/https.cc
+++ b/methods/https.cc
@@ -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);
diff --git a/methods/https.h b/methods/https.h
index 2c33d95ee..3f0c416b6 100644
--- a/methods/https.h
+++ b/methods/https.h
@@ -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);