]> git.saurik.com Git - apt.git/commitdiff
* Merged apt-authentication-reliabilty branch. This means
authorMichael Vogt <michael.vogt@ubuntu.com>
Wed, 16 Jan 2008 09:36:46 +0000 (10:36 +0100)
committerMichael Vogt <michael.vogt@ubuntu.com>
Wed, 16 Jan 2008 09:36:46 +0000 (10:36 +0100)
  that apt will refuse to update and use the old lists if
  the authentication of a repository that used to be
  authenticated fails. See
  https://wiki.ubuntu.com/AptAuthenticationReliability
  for more details.

1  2 
apt-pkg/acquire-item.cc
apt-pkg/acquire-item.h
apt-pkg/algorithms.cc
configure.in
debian/changelog

index d0eee0b431d88d6452f774e115ed1329bfc58b72,ad48adcffa2aabe51e0c758ca977a48e7e05e555..c22a31058fe6feed65b89000598352efa961e5d0
@@@ -1212,31 -1164,27 +1214,29 @@@ void pkgAcqMetaIndex::Failed(string Mes
  {
     if (AuthPass == true)
     {
-       // if we fail the authentication but got the file via a IMS-Hit 
-       // this means that the file wasn't downloaded and that it might be
-       // just stale (server problem, proxy etc). we delete what we have
-       // queue it again without i-m-s 
-       // alternatively we could just unlink the file and let the user try again
-       if (IMSHit)
+       // gpgv method failed, if we have a good signature 
+       string LastGoodSigFile = _config->FindDir("Dir::State::lists") +
+        "partial/" + URItoFileName(RealURI) + ".gpg.reverify";
+       if(FileExists(LastGoodSigFile))
        {
-        Complete = false;
-        Local = false;
-        AuthPass = false;
-        unlink(DestFile.c_str());
-        DestFile = _config->FindDir("Dir::State::lists") + "partial/";
-        DestFile += URItoFileName(RealURI);
-        Desc.URI = RealURI;
-        QueueURI(Desc);
+        string VerifiedSigFile = _config->FindDir("Dir::State::lists") +
+           URItoFileName(RealURI) + ".gpg";
+        Rename(LastGoodSigFile,VerifiedSigFile);
+        Status = StatTransientNetworkError;
+        _error->Warning(_("A error occurred during the signature "
+                          "verification. The repository is not updated "
+                          "and the previous index files will be used."
+                          "GPG error: %s: %s\n"),
+                        Desc.Description.c_str(),
+                        LookupTag(Message,"Message").c_str());
         return;
+       } else {
+        _error->Warning(_("GPG error: %s: %s"),
+                        Desc.Description.c_str(),
+                        LookupTag(Message,"Message").c_str());
        }
 +      // gpgv method failed 
 +      ReportMirrorFailure("GPGFailure");
-       _error->Warning("GPG error: %s: %s",
-                       Desc.Description.c_str(),
-                       LookupTag(Message,"Message").c_str());
     }
  
     // No Release file was present, or verification failed, so fall
Simple merge
Simple merge
diff --cc configure.in
index 932ea50141a47604a7559530a2255a97aee9ecf1,5f19c98a6f36b3b69d743eabf9009a9c3f2779cd..0bc3288fd2cd591cf1a70177e52a5859b3c82817
@@@ -18,7 -18,7 +18,7 @@@ AC_CONFIG_AUX_DIR(buildlib
  AC_CONFIG_HEADER(include/config.h:buildlib/config.h.in include/apti18n.h:buildlib/apti18n.h.in)
  
  dnl -- SET THIS TO THE RELEASE VERSION --
- AC_DEFINE_UNQUOTED(VERSION,"0.7.9ubuntu4")
 -AC_DEFINE_UNQUOTED(VERSION,"0.7.10")
++AC_DEFINE_UNQUOTED(VERSION,"0.7.9ubuntu5")
  PACKAGE="apt"
  AC_DEFINE_UNQUOTED(PACKAGE,"$PACKAGE")
  AC_SUBST(PACKAGE)
index a0bf1dda096a8e415d66c92735ae250a527fca40,ef9784178646a042cab658d4ad5d7c122cc99e08..5bd5222cc000424a580d6d4c69c40be8fa0a3181
@@@ -1,25 -1,13 +1,36 @@@
 -apt (0.7.10) UNRELEASED; urgency=low
++apt (0.7.9ubuntu5) hardy; urgency=low
++
++  * Merged apt-authentication-reliabilty branch. This means
++    that apt will refuse to update and use the old lists if
++    the authentication of a repository that used to be 
++    authenticated fails. See
++    https://wiki.ubuntu.com/AptAuthenticationReliability
++    for more details.
++
++ -- Michael Vogt <michael.vogt@ubuntu.com>  Wed, 16 Jan 2008 10:36:10 +0100
++
 +apt (0.7.9ubuntu4) hardy; urgency=low
 +
 +  * apt-pkg/algorithms.cc:
 +    - Since APT::Get::List-Cleanup and APT::List-Cleanup both default to
 +      true, the effect of the compatibility code was to require both of them
 +      to be set to false in order to disable list cleanup; this broke the
 +      installer. Instead, disable list cleanup if either of them is set to
 +      false.
 +
 + -- Colin Watson <cjwatson@ubuntu.com>  Wed, 09 Jan 2008 22:34:37 +0000
 +
 +apt (0.7.9ubuntu3) hardy; urgency=low
 +
 +  * merged the apt--DoListUpdate branch, this provides a common interface
 +    for "apt-get update" like operations for the frontends and also provides
 +    hooks to run stuff in APT::Update::{Pre,Post}-Invoke
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Mon, 07 Jan 2008 19:02:11 +0100
 +
 +apt (0.7.9ubuntu2) hardy; urgency=low
  
    [ Otavio Salvador ]
 -  * Applied patch from Mike O'Connor <stew@vireo.org> to add a manpage to
 -    apt-mark, closes: #430207.
 -  * Applied patch from Andrei Popescu <andreimpopescu@gmail.com> to add a
 -    note about some frontends in apt.8 manpage, closes: #438545.
 -  * Applied patch from Aurelien Jarno <aurel32@debian.org> to avoid CPU
 -    getting crazy when /dev/null is redirected to stdin (which breaks
 -    buildds), closes: #452858.
    * Applied patch from Aurelien Jarno <aurel32@debian.org> to fix building
      with newest dpkg-shlibdeps changing the packaging building order and a
      patch from Robert Millan <rmh@aybabtu.com> to fix parallel building,