commit libzypp for openSUSE:11.4
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 - ma@suse.de + +- 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 - ma@suse.de + +- 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 - ma@suse.de - 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: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@hilbert.suse.de