summaryrefslogtreecommitdiff
path: root/apt-pkg/deb/debsystem.h
AgeCommit message (Collapse)AuthorFilesLines
2019-06-12Run unifdef -DAPT_{8,9,10,15}_CLEANER_HEADERSJulian Andres Klode1-3/+0
2018-08-07Add support for dpkg frontend lockJulian Andres Klode1-0/+4
The dpkg frontend lock is a lock dpkg tries to acquire except if the frontend already acquires it. This fixes a race condition in the install command where the dpkg lock is not held for a short period of time between different dpkg invocations. For this reason we also define an environment variable DPKG_FRONTEND_LOCKED for dpkg invocations so dpkg knows not to try to acquire the frontend lock because it's held by a parent process. We can set DPKG_FRONTEND_LOCKED only if the frontend lock really is held; that is, if our lock count is greater than 0 - otherwise an apt client not using the LockInner family of functions would run dpkg without the frontend lock set, but with DPKG_FRONTEND_LOCKED set. Such a process has a weaker guarantee: Because dpkg would not lock the frontend lock either, the process is prone to the existing races, and, more importantly, so is a new style process. Closes: #869546 [fixups: fix error messages, add public IsLocked() method, and make {Un,}LockInner return an error on !debSystem]
2018-05-07Remove obsolete RCS keywordsGuillem Jover1-1/+0
Prompted-by: Jakub Wilk <jwilk@debian.org>
2017-07-12Reformat and sort all includes with clang-formatJulian Andres Klode1-1/+1
This makes it easier to see which headers includes what. The changes were done by running git grep -l '#\s*include' \ | grep -E '.(cc|h)$' \ | xargs sed -i -E 's/(^\s*)#(\s*)include/\1#\2 include/' To modify all include lines by adding a space, and then running ./git-clang-format.sh.
2017-07-12Drop cacheiterators.h includeJulian Andres Klode1-1/+0
Including cacheiterators.h before pkgcache.h fails because pkgcache.h depends on cacheiterators.h.
2015-11-04provide public interface to hold/unhold packagesDavid Kalnischkies1-1/+2
We had this code lying around in apt-mark for a while now, but other frontends need this (and similar) functionality as well, so its high time that we provide a public interface in libapt for this stuff.
2015-11-04implement a public pkgSystem::ArchitecturesSupportedDavid Kalnischkies1-0/+1
2015-11-04implement a public pkgSystem::MultiArchSupportedDavid Kalnischkies1-0/+5
Some codepaths need to check if the system (in our case usually dpkg) supports MultiArch or not. We had copy-pasted the check so far into these paths, but having it as a system check is better for reusability.
2015-08-10add c++11 override marker to overridden methodsDavid Kalnischkies1-8/+8
C++11 adds the 'override' specifier to mark that a method is overriding a base class method and error out if not. We hide it in the APT_OVERRIDE macro to ensure that we keep compiling in pre-c++11 standards. Reported-By: clang-modernize -add-override -override-macros Git-Dch: Ignore
2015-08-10make all d-pointer * const pointersDavid Kalnischkies1-1/+1
Doing this disables the implicit copy assignment operator (among others) which would cause hovac if used on the classes as it would just copy the pointer, not the data the d-pointer points to. For most of the classes we don't need a copy assignment operator anyway and in many classes it was broken before as many contain a pointer of some sort. Only for our Cacheset Container interfaces we define an explicit copy assignment operator which could later be implemented to copy the data from one d-pointer to the other if we need it. Git-Dch: Ignore
2014-09-30mark private methods as hiddenDavid Kalnischkies1-1/+1
We are the only possible users of private methods, so we are also the only users who can potentially export them via using them in inline methods. The point is: We don't need these symbols exported if we don't do this, so marking them as hidden removes some methods from the API without breaking anything as nobody could have used them. Git-Dch: Ignore
2014-03-13cleanup headers and especially #includes everywhereDavid Kalnischkies1-1/+9
Beside being a bit cleaner it hopefully also resolves oddball problems I have with high levels of parallel jobs. Git-Dch: Ignore Reported-By: iwyu (include-what-you-use)
2011-09-19use forward declaration in headers if possible instead of includesDavid Kalnischkies1-1/+3
2011-01-28apt-pkg/tagfile.h: add dpointer placeholder, make destructor virtual; ↵Michael Vogt1-1/+1
apt-pkg/deb/debsystem.h: make destructor virtual
2011-01-27apt-pkg/deb/debsystem.{cc,h}: add dpointerMichael Vogt1-6/+5
2006-10-02* removed the pragma messMichael Vogt1-4/+0
2004-09-20G++ 3.2 fixesArch Librarian1-3/+3
Author: jgg Date: 2003-01-11 07:16:33 GMT G++ 3.2 fixes
2004-09-20'apt-cache policy' preferences debug tool.Arch Librarian1-1/+7
Author: jgg Date: 2001-04-29 05:13:51 GMT 'apt-cache policy' preferences debug tool.
2004-09-20Join with aliencodeArch Librarian1-0/+41
Author: jgg Date: 2001-02-20 07:03:16 GMT Join with aliencode