X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/c6ee61eab54edf6cc3fbe118d304d72a860e1451..a2d40703e4a5590a689ace4466f92e590434944d:/methods/https.cc?ds=sidebyside diff --git a/methods/https.cc b/methods/https.cc index 0499af0c5..eec858417 100644 --- a/methods/https.cc +++ b/methods/https.cc @@ -82,6 +82,12 @@ HttpsMethod::write_data(void *buffer, size_t size, size_t nmemb, void *userp) if(me->File->Write(buffer, size*nmemb) != true) return false; + me->TotalWritten += size*nmemb; + if(me->TotalWritten > me->Queue->ExpectedSize) + return _error->Error("Writing more data than expected (%llu > %llu)", + me->TotalWritten, me->Queue->ExpectedSize); + + return size*nmemb; } @@ -446,6 +452,8 @@ int main() HttpsMethod Mth; curl_global_init(CURL_GLOBAL_SSL) ; + Mth.DropPrivsOrDie(); + return Mth.Run(); }