summaryrefslogtreecommitdiff
path: root/apt-pkg
Commit message (Collapse)AuthorAgeFilesLines
* apt-pkg/packagemanager.cc:Michael Vogt2013-07-101-2/+2
| | | | | * apt-pkg/packagemanager.cc: - increate APT::pkgPackageManager::MaxLoopCount to 5000
* Merge remote-tracking branch 'donkult/debian/sid' into debian/sidMichael Vogt2013-07-0217-301/+380
|\ | | | | | | | | Conflicts: debian/changelog
| * fix SHA2* cleanups to zero-out the complete contextDavid Kalnischkies2013-06-241-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GCC 4.8 is now clever enough to warn about: contrib/sha2_internal.cc: In function ‘char* SHA256_End(SHA256_CTX*, char*)’: contrib/sha2_internal.cc:656:31: warning: argument to ‘sizeof’ in ‘void* memset(void*, int, size_t)’ call is the same expression as the destination; did you mean to dereference it? [-Wsizeof-pointer-memaccess] MEMSET_BZERO(context, sizeof(context)); So fix it as suggested. Its interesting though that the SHA2* calculation as far as we need it works even without zeroing out. Git-Dch: Ignore
| * do not modify DepIterator as we might check againDavid Kalnischkies2013-06-241-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | fixup for 42d51f333e8ef522fed02cdfc48663488d56c3a3 The for-loop iterating over the DepIterators which need configuration can (and will be in 'complicated' situations) run multiple times, so we can't just GlobOr on the DepIterator as it modifies it, so that the next iteration over the list ends up checking another dependency leading us into a 'Internal error, packages left unconfigured. foopkg' maybe or we are 'lucky' and calculate a solution which might break down the line Git-Dch: Ignore
| * trigger NODATA error for invalid InRelease filesDavid Kalnischkies2013-06-202-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the selfgrown splitting we got the problem of not recovering from networks which just reply with invalid data like those sending us login pages to authenticate with the network (e.g. hotels) back. The good thing about the InRelease file is that we know that it must be clearsigned (a Release file might or might not have a detached sig) so if we get a file but are unable to split it something is seriously wrong, so there is not much point in trying further. The Acquire system already looks out for a NODATA error from gpgv, so this adds a new error message sent to the acquire system in case the splitting we do now ourselves failed including this magic word. Closes: #712486
| * do not redownload unchanged InRelease filesDavid Kalnischkies2013-06-201-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | Before we download the 'new' InRelease file the old file will be moved out of the way with the name 'foobar_InRelease.reverify', so if no partial file for the 'new' file exists take the modification time from this reverify file, so that if we get an IMS hit for the InRelease file we can move back the reverify file as new file rather than downloading the 'new' file even though we already have it. We do the same for Release files and this happened to work until the reverify renaming was corrected for InRelease files.
| * support \n and \r\n line endings in ReadMessagesDavid Kalnischkies2013-06-201-2/+3
| |
| * handle missing "Description" in apt-cache showDavid Kalnischkies2013-06-202-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | do not blindly assume that all packages stanzas have a "Description:" field in 'apt-cache show' as well as in the cache creation itself. We instead assume now that if the stanza has a Description, it will not be the first field as we look out for "\nDescription" to take care of MD5sum as well as (maybe ignored) translated Descriptions embedded in the package stanza. Closes: #712435
| * ensure state-dir exists before coyping cdrom filesDavid Kalnischkies2013-06-091-0/+8
| | | | | | | | | | | | We do the same in the acquire system which handles the 'normal' downloads, so do it here as well even though its unlikely anyone will ever notice (beside testcases of course …)
| * fail in CopyFile if the FileFds have error flag setDavid Kalnischkies2013-06-092-5/+4
| | | | | | | | | | | | | | | | | | Testing for global PendingErrors in users of CopyFile is incorrect in so far as unrelated errors will prevent us from copying perfectly fine files and checking for the validity of the files is just better in CopyFiles as it already checks if files are at least opened. Add also a higher-level error message to the error stack if it fails.
| * OpenDescriptor should autoclose fd always on errorDavid Kalnischkies2013-06-091-4/+19
| | | | | | | | | | | | | | | | | | OpenInternDescriptor failures would cause additional errors to be generated by double-closing an fd. Other errors (although these are generated if the method is used incorrectly, so unlikely) didn't close the fd aswell. Closes: 704608
| * set Fail flag in FileFd on all errors consistentlyDavid Kalnischkies2013-06-092-96/+75
| | | | | | | | | | | | Previously some errors would set the Fail flag while some didn't without a clear reason as all errors leave a bad FileFd behind, so we use a helper now to ensure that all errors set the flag.
| * make the vprintf like _error->Insert publicDavid Kalnischkies2013-06-091-6/+35
| | | | | | | | Git-Dch: Ignore
| * deprecate InstallProtect as a cpu-eating no-opDavid Kalnischkies2013-06-092-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | In the past packages were flagged "Protected" so that install/ remove markings where issued before the ProblemResolver. Nowadays, the marking methods check if they are allowed to modify the marking of a package instead, so that markings set by FromUser calls are not overwritten anymore by automatic calls which elimates the need for InstallProtect which just eats CPU now. The method itself is left untouched for now in case frontend needs it still for some wierd usecase, but they should be eliminated.
| * do unpacks before configures in SmartConfigureDavid Kalnischkies2013-06-091-45/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Splits the big loop over dependencies in SmartConfigure which unpacks and configures dependencies into two loops and reverse their order, so that all dependencies which need to be unpacked are handled first and only after that configures are issued for dependencies. This is needed as otherwise the unpack of a (new) dependency will be issued in between a configure call for two (or more) packages which form a loop, which means the configure calls aren't part of the same dpkg call and therefore dpkg bails out. Such tight loops should really be avoided as they are usually wrong – and in reality the dependencies in libreoffice were greatly simplified thanks to Rene Engelhard so the problem is gone for the benefit of all. Closes: 707578
| * try all providers in order if uninstallable in MarkInstallDavid Kalnischkies2013-06-091-5/+13
| |
| * fix priority sorting by prefering higher in MarkInstallDavid Kalnischkies2013-06-091-1/+1
| | | | | | | | | | | | | | Used to work until a certain (here unnamed) person came along and used the wrong operator causing low-priority packages to be sorted above high-priority packages while choosing a provider in commit 2b5c35c7bb915dbd46fefd7c79f05364ba22f93b from Nov 2011
| * prefer Essentials over Removals in ordering scoreDavid Kalnischkies2013-06-091-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Doing Removes early is good to have them out of the way, so they don't break 'Inst' or 'Conf' chains, but scoring them above Essentials means that we end up upgrading (many) less important packages before we handle big stuff like libc6 or debconf which not only fails if those less important packages have unannounced (strict) dependencies, but also leads to having these packages unconfigured for a long time triggering bugs in maintainer scripts for no good reason (#708831). So this commits sets the default value for remove scores to 100, which is below the one for essentials (200) and a lot lower than the previous default value (500).
| * rewrite pkgOrderList::DepRemove to stop incorrect immediate settingDavid Kalnischkies2013-06-091-116/+103
| | | | | | | | | | | | | | | | | | | | | | | | Some squeeze → wheezy upgrades indicate that DepRemove runs amok in complicated setups as it wasn't correctly working with or-groups. Completely rewritten the check is now moving from or-group to or-group instead. The behavior should be the same as the code before, but (hopefully) with less bugs and more comments. Closes: 645713
* | make starting debug output of pkgProblemResolver proper englishMichael Vogt2013-06-281-2/+4
| |
* | use just one line for the debug output (thanks to donkult for the review)Michael Vogt2013-06-271-4/+2
| |
* | when doing MarkInstall() packages may also get removed, so show them in the ↵Michael Vogt2013-06-271-3/+10
| | | | | | | | debug output of Debug::pkgDepCache::AutoInstall=true
* | show broken count when starting the resolverMichael Vogt2013-06-271-2/+6
|/
* fix double free (closes: #711045)Michael Vogt2013-06-061-2/+5
|
* non-inline RunGPGV methods to restore ABI compatibility with previous ↵David Kalnischkies2013-05-162-8/+14
| | | | | | | | versions to fix partial upgrades (Closes: #707771) The rename in 0.9.7.9~exp2 moved the method body to the class definition which means it became inline, which isn't ABI compatibile. The reverse of moving inline to non-inline is safe though.
* merged patch from Daniel Hartwig to fix URI and proxy releated issuesMichael Vogt2013-05-081-4/+5
|
* merged from the debian-wheezy branchMichael Vogt2013-05-082-4/+14
|\
| * * apt-pkg/algorithms.cc:Michael Vogt2013-05-081-1/+4
| | | | | | | | | | | | - Do not propagate negative scores from rdepends. Propagating the absolute value of a negative score may boost obsolete packages and keep them installed instead of installing their successors. (Closes: #699759)
| * properly handle if-modfied-since with libcurl/https Michael Vogt2013-05-081-3/+10
| | | | | | | | (closes: #705648)
* | Fix English spelling error in a message ('A error'). Unfuzzybubulle@debian.org2013-04-101-1/+1
| | | | | | translations. Closes: #705087
* | merged bundle from davidMichael Vogt2013-04-0820-159/+225
|\ \
| * | share version strings between same versions (of different architectures)David Kalnischkies2013-04-033-15/+40
| | | | | | | | | to save some space and allow quick comparisions later on
| * | * apt-pkg/cacheiterators.h:David Kalnischkies2013-04-033-19/+24
| | | | | | | | | - provide DepIterator::IsSatisfied as a nicer shorthand for DepCheck
| * | - sort group and package names in the hashtable on insertDavid Kalnischkies2013-04-032-16/+31
| | | | | | | | | | | | * apt-pkg/pkgcache.cc: - assume sorted hashtable entries for groups/packages
| * | micro-optimize and enhance readability of ListParser::VersionHashDavid Kalnischkies2013-04-011-7/+7
| | |
| * | equal comparisions are used mostly in same-source relations,David Kalnischkies2013-04-011-6/+14
| | | | | | | | | so use this to try to reuse some version strings
| * | * apt-pkg/deb/debversion.cc:David Kalnischkies2013-04-011-3/+12
| | | | | | | | | - add a string-equal shortcut for equal version comparisions
| * | factor version string creation out of NewDepends, so we can easily reuseDavid Kalnischkies2013-03-132-26/+34
| | | | | | | | | version strings e.g. for implicit multi-arch dependencies
| * | handle language tags for descriptions are unique strings to be sharedDavid Kalnischkies2013-03-121-1/+1
| | |
| * | * apt-pkg/pkgcachegen.cc:David Kalnischkies2013-03-121-29/+32
| | | | | | | | | | | | - do not store the MD5Sum for every description language variant as it will be the same for all so it can be shared to save cache space
| * | various simple changes to fix cppcheck warningsDavid Kalnischkies2013-03-1014-52/+45
| | |
* | | * apt-pkg/sourcelist.cc:Michael Vogt2013-04-041-1/+5
| | | | | | | | | | | | - fix segfault when a hostname contains a [, thanks to Tzafrir Cohen (closes: #704653)
* | | apt-pkg/contrib/gpgv.cc: fix InRelease checkMichael Vogt2013-04-031-2/+2
| | |
* | | merged lp:~mvo/apt/fix-inrelease5Michael Vogt2013-04-0212-168/+544
|\ \ \
| * | | support dash-escaped text in clearsigned files as implementations areDavid Kalnischkies2013-03-192-14/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | free to escape all lines (we have no lines in our files which need to be escaped as these would be invalid fieldnames) and while ExecGPGV would detect dash-escaped text as invalid (as its not expected in messages with detached signatures) it would be possible to "comment" lines in (signed) dsc files which are only parsed but not verified
| * | | use FileFd instead of int fds to tidy up the interface a bitDavid Kalnischkies2013-03-192-62/+53
| | | |
| * | | * apt-pkg/deb/debindexfile.cc,David Kalnischkies2013-03-185-69/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | apt-pkg/deb/deblistparser.cc: - use OpenMaybeClearSignedFile to be free from detecting and skipping clearsigning metadata in dsc and Release files We can't write a "clean" file to disk as not all acquire methods copy Release files before checking them (e.g. cdrom), so this reverts recombining, but uses the method we use for dsc files also in the two places we deal with Release files
| * | | - add method to open (maybe) clearsigned files transparentlyDavid Kalnischkies2013-03-182-1/+76
| | | | | | | | | | | | | | | | | | | | * ftparchive/writer.cc: - use OpenMaybeClearSignedFile to be free from detecting and skipping clearsigning metadata in dsc files
| * | | ensure that we fclose/unlink/free in the new gpg-code as soon as possibleDavid Kalnischkies2013-03-161-5/+22
| | | |
| * | | - if ExecGPGV deals with a clear-signed file it will split this fileDavid Kalnischkies2013-03-153-55/+319
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into data and signatures, pass it to gpgv for verification and recombines it after that in a known-good way without unsigned blocks and whitespaces resulting usually in more or less the same file as before, but later code can be sure about the format * apt-pkg/deb/debmetaindex.cc: - reenable InRelease by default