summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-02-27Release 1.9.12Julian Andres Klode
2020-02-27(temporarily) unhide pkgDPkgPM again to have python-apt compileJulian Andres Klode
2020-02-27pkgcache: Add operator bool() to map_pointerJulian Andres Klode
2020-02-26Release 1.9.11Julian Andres Klode
2020-02-26Merge branch 'pu/wait-lock' into 'master'Julian Andres Klode
Pu/wait lock See merge request apt-team/apt!109
2020-02-26Merge branch 'pu/visibility' into 'master'Julian Andres Klode
apt-pkg: default visibility to hidden See merge request apt-team/apt!108
2020-02-26apt(8): Wait for frontend and cache lockJulian Andres Klode
This is a rework of !6 with additional stuff for the frontend lock, so we can lock the frontend lock and then keep looping over dpkg lock.
2020-02-26apt-pkg: default visibility to hiddenJulian Andres Klode
2020-02-26Merge branch 'pu/misc' into 'master'Julian Andres Klode
Pu/misc See merge request apt-team/apt!107
2020-02-26cacheset: Fix -Wdeprecated-copy warningsJulian Andres Klode
Remove the operator= from Container_iterator, as it was basically just the default anyway, and add copy constructors to *Interface that match their operator=. Tried adding copy constructor to Container_iterator, but that only made things worse.
2020-02-26Fix various compiler warningsJulian Andres Klode
2020-02-26Parse records including empty tag names correctlyDavid Kalnischkies
No sensible file should include these, but even insensible files do not gain unfair advantages with it as this parser does not deal with security critical files before they haven't passed other checks like signatures or hashsums. The problem is that the parser accepts and parses empty tag names correctly, but does not store the data parsed which will effect later passes over the data resulting e.g. in the following tag containing the name and value of the previous (empty) tag, its own tagname and its own value or a crash due to an attempt to access invalid memory depending on who passes over the data and what is done with it. This commit fixes both, the incidient of the crash reported by Anatoly Trosinenko who reproduced it via apt-sortpkgs: | $ cat /tmp/Packages-null | 0: | PACKAGE:0 | | : | PACKAGE: | | PACKAGE:: | $ apt-sortpkgs /tmp/Packages-null and the deeper parsing issue shown by the included testcase. Reported-By: Anatoly Trosinenko <anatoly.trosinenko@gmail.com> References: 8710a36a01c0cb1648926792c2ad05185535558e
2020-02-26symbols: Bump version from 1.9.10 to 1.9.11~Julian Andres Klode
2020-02-26Merge branch 'pu/cleanups' into 'master'Julian Andres Klode
Cleanup ABI - make stuff virtual, etc See merge request apt-team/apt!106
2020-02-26Symbol updatesJulian Andres Klode
2020-02-26cache: Swap locations of hashtables, hide them from non-apt usersJulian Andres Klode
Only expose the locations of the hasthables if APT_COMPILING_APT is set.
2020-02-26Make metaIndex::GetNotBefore virtualJulian Andres Klode
2020-02-26pkgsystem: Drop more virtual workaround shenanigansJulian Andres Klode
2020-02-26metaindex: Add Origin, Label, Version, DefaultPin, ReleaseNotes membersJulian Andres Klode
These were hidden behind the d-pointer previously.
2020-02-26Remove various dynamic_cast uses, use virtual methods insteadJulian Andres Klode
2020-02-26Merge pkgPackageManager::SmartUnpackJulian Andres Klode
2020-02-26Rename pkgSimulate::Go2 to pkgSimulate::GoJulian Andres Klode
2020-02-26cdrom: Remove old udev dlopen stuffJulian Andres Klode
2020-02-26Drop pkgAcquire::Item::ModifyRetries() ABI hackJulian Andres Klode
2020-02-26Merge pkgAcquire::RunFdsSane back into RunFdsJulian Andres Klode
2020-02-26Remove ABI workaround for debDebPkgFileIndex::ArchiveInfoJulian Andres Klode
2020-02-26Merge CommandLine::DispatchArgJulian Andres Klode
2020-02-26Remove pkgAcqFile::Failed overloadJulian Andres Klode
2020-02-25Merge branch 'pu/tagfile-hardening' into 'master'Julian Andres Klode
Pu/tagfile hardening See merge request apt-team/apt!104
2020-02-25debian: Update symbols fileJulian Andres Klode
2020-02-25patterns: Mark things hidden, and only allow internal use of headerJulian Andres Klode
2020-02-25Remove left-over SummationImplementation classJulian Andres Klode
2020-02-25Initialize libgcrypt on first useJulian Andres Klode
This is not supposed to be done this way, but frankly, since we abstract away the backend, there's not much else we can do here. Closes: #949074
2020-02-25Merge branch 'pu/typesafe-cache2' into 'master'Julian Andres Klode
Type-safe cache / map_pointer See merge request apt-team/apt!105
2020-02-25Add d-pointers to groups, packages, versions, and filesJulian Andres Klode
This allows us to extend those in-cache objects with more data later on without breaking the ABI. Reserve 12 pointers for private data in the pkgCache class, and double the size of pools to 24.
2020-02-25Silence narrow conversion warnings, add error checksJulian Andres Klode
When converting a long offset to a uint32_t to be stored in the map, check that this is safe to do. If the offset is negative, or we lose data in the conversion, we lost.
2020-02-24Make map_pointer<T> typesafeJulian Andres Klode
Instead of just using uint32_t, which would allow you to assign e.g. a map_pointer<Version> to a map_pointer<Package>, use our own smarter struct that has strict type checking. We allow creating a map_pointer from a nullptr, and we allow comparing map_pointer to nullptr, which also deals with comparisons against 0 which are often used, as 0 will be implictly converted to nullptr.
2020-02-24Wrap AllocateInMap with a templated versionJulian Andres Klode
2020-02-24Replace map_pointer_t with map_pointer<T>Julian Andres Klode
This is a first step to a type safe cache, adding typing information everywhere. Next, we'll replace map_pointer<T> implementation with a type safe one.
2020-02-20tagfile: Check out-of-bounds access to Tags vectorJulian Andres Klode
Check that the index we're going to use is within the size of the array.
2020-02-20tagfile: Check if memchr() returned null before usingJulian Andres Klode
This fixes a segmentation fault trying to read from nullptr+1, aka address 1.
2020-02-18Merge branch 'patch-1' into 'master'Julian Andres Klode
bash completion: Add autopurge command See merge request apt-team/apt!75
2020-02-18Merge branch 'master' into 'master'Julian Andres Klode
apt-mark: don't lie about successful marks See merge request apt-team/apt!94
2020-02-18Merge branch 'source_to_debsrc' into 'master'Julian Andres Klode
apt-pkg/srcrecords.cc: 'source' means 'deb-src' in error message See merge request apt-team/apt!101
2020-02-18Merge branch 'pu/no-more-crc16' into 'master'Julian Andres Klode
ABI break: Remove CRC-16 See merge request apt-team/apt!97
2020-02-18Remove CRC-16 implementationJulian Andres Klode
2020-02-18Use a 32-bit djb VersionHash instead of CRC-16Julian Andres Klode
2020-02-18Merge branch 'pu/source-version' into 'master'Julian Andres Klode
ABI BREAK: Implement pinning by source package See merge request apt-team/apt!96
2020-02-18Merge branch 'pu/bump-abi6' into 'master'Julian Andres Klode
Bump ABI to 6.0 See merge request apt-team/apt!103
2020-02-18Remove code tagged APT_PKG_590, add some missing includesJulian Andres Klode
Remove all code scheduled to be removed after 5.90, and fix files to include files they previously got from hashes.h including more headers.