Merge remote-tracking branch 'upstream/debian/sid' into feature/apt-download-file
authorMichael Vogt <mvo@debian.org>
Wed, 12 Mar 2014 19:40:01 +0000 (20:40 +0100)
committerMichael Vogt <mvo@debian.org>
Wed, 12 Mar 2014 19:40:01 +0000 (20:40 +0100)
Conflicts:
cmdline/apt-helper.cc
test/integration/framework
test/integration/test-apt-https-no-redirect

1  2 
cmdline/apt-helper.cc
test/integration/test-apt-https-no-redirect

@@@ -55,14 -52,6 +55,15 @@@ bool DoDownloadFile(CommandLine &CmdL
        _error->Error(_("Download Failed"));
        return false;
     }
 +   if(hash.empty() == false)
++   {
 +      if(hash.VerifyFile(targetfile) == false)
 +      {
 +         _error->Error(_("HashSum Failed"));
 +         Rename(targetfile, targetfile+".failed");
 +         return false;
 +      }
++   }
     return true;
  }
  
@@@ -12,27 -12,13 +12,14 @@@ setupaptarchive --no-updat
  
  changetohttpswebserver  -o 'aptwebserver::redirect::replace::/redirectme/=http://localhost:8080/'
  
 +DOWNLOG='download-testfile.log'
  msgtest 'normal http download works'
 -downloadfile 'http://localhost:8080/pool/apt_1.0/changelog' changelog2 >/dev/null 2>/dev/null && msgpass || msgfail
 +downloadfile 'http://localhost:8080/pool/apt_1.0/changelog' changelog2 > "$DOWNLOG" && msgpass || msgfail
  
  msgtest 'normal https download works'
 -downloadfile 'https://localhost:4433/pool/apt_1.0/changelog' changelog >/dev/null 2>/dev/null && msgpass || msgfail
 +downloadfile 'https://localhost:4433/pool/apt_1.0/changelog' changelog > "$DOWNLOG" && msgpass || msgfail
  
  msgtest 'redirecting https to http does not work'
- if ! downloadfile 'https://localhost:4433/redirectme/pool/apt_1.0/changelog' changelog3 > "$DOWNLOG"; then
-     msgpass
- else
-     cat >&2 "$DOWNLOG"
-     msgfail
- fi
-     
- msgtest 'https methods given proper error on redirect attempt'
- if grep -q 'Protocol http not supported or disabled in libcurl' "$DOWNLOG"; then
-     msgpass
- else
-     cat >&2 "$DOWNLOG"
-     msgfail
- fi
+ downloadfile 'https://localhost:4433/redirectme/pool/apt_1.0/changelog' changelog3 2>&1 | grep "Protocol http not supported or disabled in libcurl" > /dev/null && msgpass || msgfail