Hello community,

here is the log from the commit of package libzypp for openSUSE:11.4
checked in at Thu Jul 28 17:51:30 CEST 2011.

Patchinfo file has no description
Patchinfo file has no description
Patchinfo file has no description


--------
--- old-versions/11.4/UPDATES/all/libzypp/libzypp.changes       2011-05-31 
10:45:33.000000000 +0200
+++ 11.4/libzypp/libzypp.changes        2011-07-28 14:59:32.000000000 +0200
@@ -1,0 +2,7 @@
+Thu Jul 28 14:15:44 CEST 2011 - [email protected]
+
+- Evaluate CURLINFO_CONDITION_UNMET on zero sized successful transfers,
+  if compiled against libcurl-7.19.4 or above. (bnc#692260)
+- version 8.12.6 (10)
+
+-------------------------------------------------------------------

calling whatdependson for 11.4-i586


Old:
----
  libzypp-8.12.5.tar.bz2

New:
----
  libzypp-8.12.6.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libzypp.spec ++++++
--- /var/tmp/diff_new_pack.Deqcsu/_old  2011-07-28 17:51:00.000000000 +0200
+++ /var/tmp/diff_new_pack.Deqcsu/_new  2011-07-28 17:51:00.000000000 +0200
@@ -23,7 +23,7 @@
 Group:          System/Packages
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 Summary:        Package, Patch, Pattern, and Product Management
-Version:        8.12.5
+Version:        8.12.6
 Release:        0.<RELEASE2>
 Source:         %{name}-%{version}.tar.bz2
 Source1:        %{name}-rpmlintrc

++++++ libzypp-8.12.5.tar.bz2 -> libzypp-8.12.6.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libzypp-8.12.5/VERSION.cmake 
new/libzypp-8.12.6/VERSION.cmake
--- old/libzypp-8.12.5/VERSION.cmake    2011-05-31 10:37:39.000000000 +0200
+++ new/libzypp-8.12.6/VERSION.cmake    2011-07-28 14:18:14.000000000 +0200
@@ -61,8 +61,8 @@
 SET(LIBZYPP_MAJOR "8")
 SET(LIBZYPP_COMPATMINOR "10")
 SET(LIBZYPP_MINOR "12")
-SET(LIBZYPP_PATCH "5")
+SET(LIBZYPP_PATCH "6")
 #
-# LAST RELEASED: 8.12.5 (10)
+# LAST RELEASED: 8.12.6 (10)
 # (The number in parenthesis is LIBZYPP_COMPATMINOR)
 #=======
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libzypp-8.12.5/package/libzypp.changes 
new/libzypp-8.12.6/package/libzypp.changes
--- old/libzypp-8.12.5/package/libzypp.changes  2011-05-31 10:37:39.000000000 
+0200
+++ new/libzypp-8.12.6/package/libzypp.changes  2011-07-28 14:18:14.000000000 
+0200
@@ -1,4 +1,11 @@
 -------------------------------------------------------------------
+Thu Jul 28 14:15:44 CEST 2011 - [email protected]
+
+- Evaluate CURLINFO_CONDITION_UNMET on zero sized successful transfers,
+  if compiled against libcurl-7.19.4 or above. (bnc#692260)
+- version 8.12.6 (10)
+
+-------------------------------------------------------------------
 Tue May 31 10:29:37 CEST 2011 - [email protected]
 
 - Recommend 'lsof' (for zypper ps) (bnc#694427, bnc#684466)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libzypp-8.12.5/zypp/media/MediaCurl.cc 
new/libzypp-8.12.6/zypp/media/MediaCurl.cc
--- old/libzypp-8.12.5/zypp/media/MediaCurl.cc  2011-05-31 10:37:39.000000000 
+0200
+++ new/libzypp-8.12.6/zypp/media/MediaCurl.cc  2011-07-28 14:18:14.000000000 
+0200
@@ -44,6 +44,8 @@
 #define  TRANSFER_TIMEOUT       60 * 3
 #define  TRANSFER_TIMEOUT_MAX   60 * 60
 
+#undef CURLVERSION_AT_LEAST
+#define CURLVERSION_AT_LEAST(M,N,O) LIBCURL_VERSION_NUM >= 
((((M)<<8)+(N))<<8)+(O)
 
 using namespace std;
 using namespace zypp::base;
@@ -574,8 +576,10 @@
 
   if ( _url.getScheme() == "https" )
   {
+#if CURLVERSION_AT_LEAST(7,19,4)
     // restrict following of redirections from https to https only
     SET_OPTION( CURLOPT_REDIR_PROTOCOLS, CURLPROTO_HTTPS );
+#endif
 
     if( _settings.verifyPeerEnabled() ||
         _settings.verifyHostEnabled() )
@@ -645,7 +649,9 @@
   }
   else
   {
+#if CURLVERSION_AT_LEAST(7,19,4)
       SET_OPTION(CURLOPT_NOPROXY, "*");
+#endif
   }
 
   /** Speed limits */
@@ -656,8 +662,10 @@
       SET_OPTION(CURLOPT_LOW_SPEED_TIME, 10L);
   }
 
+#if CURLVERSION_AT_LEAST(7,15,5)
   if ( _settings.maxDownloadSpeed() != 0 )
       SET_OPTION_OFFT(CURLOPT_MAX_RECV_SPEED_LARGE, 
_settings.maxDownloadSpeed());
+#endif
 
   /*---------------------------------------------------------------*
    *---------------------------------------------------------------*/
@@ -671,9 +679,10 @@
   SET_OPTION(CURLOPT_PROGRESSFUNCTION, &progressCallback );
   SET_OPTION(CURLOPT_NOPROGRESS, 0L);
 
+#if CURLVERSION_AT_LEAST(7,18,0)
   // bnc #306272
-  SET_OPTION(CURLOPT_PROXY_TRANSFER_MODE, 1L );
-
+    SET_OPTION(CURLOPT_PROXY_TRANSFER_MODE, 1L );
+#endif
   // append settings custom headers to curl
   for ( TransferSettings::Headers::const_iterator it = 
vol_settings.headersBegin();
         it != vol_settings.headersEnd();
@@ -947,7 +956,9 @@
       }
       break;
       case CURLE_FTP_COULDNT_RETR_FILE:
+#if CURLVERSION_AT_LEAST(7,16,0)
       case CURLE_REMOTE_FILE_NOT_FOUND:
+#endif
       case CURLE_FTP_ACCESS_DENIED:
         err = "File not found";
         ZYPP_THROW(MediaFileNotFoundException(_url, filename));
@@ -1352,6 +1363,27 @@
     }
 
     ret = curl_easy_perform( _curl );
+#if CURLVERSION_AT_LEAST(7,19,4)
+    // bnc#692260: If the client sends a request with an If-Modified-Since 
header
+    // with a future date for the server, the server may respond 200 sending a
+    // zero size file.
+    // curl-7.19.4 introduces CURLINFO_CONDITION_UNMET to check this condition.
+    if ( ftell(file) == 0 && ret == 0 )
+    {
+      long httpReturnCode = 33;
+      if ( curl_easy_getinfo( _curl, CURLINFO_RESPONSE_CODE, &httpReturnCode ) 
== CURLE_OK && httpReturnCode == 200 )
+      {
+       long conditionUnmet = 33;
+       if ( curl_easy_getinfo( _curl, CURLINFO_CONDITION_UNMET, 
&conditionUnmet ) == CURLE_OK && conditionUnmet )
+       {
+         WAR << "TIMECONDITION unmet - retry without." << endl;
+         curl_easy_setopt(_curl, CURLOPT_TIMECONDITION, CURL_TIMECOND_NONE);
+         curl_easy_setopt(_curl, CURLOPT_TIMEVALUE, 0L);
+         ret = curl_easy_perform( _curl );
+       }
+      }
+    }
+#endif
 
     if ( curl_easy_setopt( _curl, CURLOPT_PROGRESSDATA, NULL ) != 0 ) {
       WAR << "Can't unset CURLOPT_PROGRESSDATA: " << _curlError << endl;;


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to