Follow gpgcheck tag in .repo file and do no check if disabled.
authorMichael Andres <ma@suse.de>
Wed, 10 Sep 2008 16:29:11 +0000 (16:29 +0000)
committerMichael Andres <ma@suse.de>
Wed, 10 Sep 2008 16:29:11 +0000 (16:29 +0000)
VERSION.cmake
package/libzypp.changes
zypp/repo/susetags/Downloader.cc
zypp/repo/yum/Downloader.cc

index 3099822..b9330e3 100644 (file)
@@ -63,6 +63,6 @@ SET(LIBZYPP_COMPATMINOR "8")
 SET(LIBZYPP_MINOR "9")
 SET(LIBZYPP_PATCH "0")
 #
-# LAST RELEASED: 5.8.0 (8)
+# LAST RELEASED: 5.9.0 (8)
 # (The number in parenthesis is LIBZYPP_COMPATMINOR)
 #=======
index f3a76cc..8e69998 100644 (file)
@@ -1,4 +1,11 @@
 -------------------------------------------------------------------
+Wed Sep 10 18:23:52 CEST 2008 - ma@suse.de
+
+- Follow gpgcheck tag in .repo file and do no check if disabled.
+- revision 11010
+- version 5.9.0 (8)
+
+-------------------------------------------------------------------
 Wed Sep 10 17:54:20 CEST 2008 - jkupec@suse.cz
 
 - added dumpAsXMLOn(stream,string) to ServiceInfo to print services
index 5dc49fc..8b1385e 100644 (file)
@@ -74,8 +74,12 @@ void Downloader::download( MediaSetAccess &media,
     sigchecker.addPublicKey(dest_dir + key);
   }
 
-
-  this->enqueue( OnMediaLocation( _info.path() + "/content", 1 ), sigchecker );
+  if ( ! _info.gpgCheck() )
+  {
+    WAR << "Signature checking disabled in config of repository " << _info.alias() << endl;
+  }
+  this->enqueue( OnMediaLocation( _info.path() + "/content", 1 ),
+                 _info.gpgCheck() ? FileChecker(sigchecker) : FileChecker(NullFileChecker()) );
   this->start( dest_dir, media );
   this->reset();
 
index 430ca1b..a31581c 100644 (file)
@@ -66,7 +66,7 @@ loc_with_path_prefix(const OnMediaLocation & loc,
 bool Downloader::patches_Callback( const OnMediaLocation &loc,
                                    const string &id )
 {
-  OnMediaLocation loc_with_path(loc_with_path_prefix(loc, _info.path())); 
+  OnMediaLocation loc_with_path(loc_with_path_prefix(loc, _info.path()));
   MIL << id << " : " << loc_with_path << endl;
   this->enqueueDigested(loc_with_path);
   return true;
@@ -76,7 +76,7 @@ bool Downloader::patches_Callback( const OnMediaLocation &loc,
 bool Downloader::repomd_Callback( const OnMediaLocation &loc,
                                   const ResourceType &dtype )
 {
-  OnMediaLocation loc_with_path(loc_with_path_prefix(loc, _info.path())); 
+  OnMediaLocation loc_with_path(loc_with_path_prefix(loc, _info.path()));
   MIL << dtype << " : " << loc_with_path << endl;
 
   //! \todo do this through a ZConfig call so that it is always in sync with parser
@@ -118,15 +118,15 @@ void Downloader::download( MediaSetAccess &media,
   Pathname sigpath =  _info.path() + "/repodata/repomd.xml.asc";
 
   _media_ptr = (&media);
-  
+
   ProgressData progress;
   progress.sendTo(progressrcv);
   progress.toMin();
 
   //downloadMediaInfo( dest_dir, _media );
-  
+
   _dest_dir = dest_dir;
-  
+
   SignatureFileChecker sigchecker(_info.name());
 
   if ( _media_ptr->doesFileExist(sigpath) )
@@ -136,7 +136,7 @@ void Downloader::download( MediaSetAccess &media,
      this->reset();
      sigchecker = SignatureFileChecker(dest_dir + sigpath, _info.name());
   }
+
 
   if ( _media_ptr->doesFileExist(keypath) )
   {
@@ -146,13 +146,18 @@ void Downloader::download( MediaSetAccess &media,
     sigchecker.addPublicKey(dest_dir + keypath);
   }
 
+
   this->start( dest_dir, *_media_ptr );
 
   if ( ! progress.tick() )
     ZYPP_THROW(AbortRequestException());
 
-  this->enqueue( OnMediaLocation(repomdpath,1), sigchecker );
+  if ( ! _info.gpgCheck() )
+  {
+    WAR << "Signature checking disabled in config of repository " << _info.alias() << endl;
+  }
+  this->enqueue( OnMediaLocation(repomdpath,1),
+                 _info.gpgCheck() ? FileChecker(sigchecker) : FileChecker(NullFileChecker()) );
   this->start( dest_dir, *_media_ptr);
 
   if ( ! progress.tick() )