#include "rpmps.h"
Go to the source code of this file.
Defines | |
#define | rpmdsUnlink(_ds, _msg) XrpmdsUnlink(_ds, _msg, __FILE__, __LINE__) |
#define | rpmdsLink(_ds, _msg) XrpmdsLink(_ds, _msg, __FILE__, __LINE__) |
Functions | |
rpmds | rpmdsUnlink (rpmds ds, const char *msg) |
Unreference a dependency set instance. | |
rpmds | XrpmdsUnlink (rpmds ds, const char *msg, const char *fn, unsigned ln) |
rpmds | rpmdsLink (rpmds ds, const char *msg) |
Reference a dependency set instance. | |
rpmds | XrpmdsLink (rpmds ds, const char *msg, const char *fn, unsigned ln) |
rpmds | rpmdsFree (rpmds ds) |
Destroy a dependency set. | |
rpmds | rpmdsNew (Header h, rpmTag tagN, int scareMem) |
Create and load a dependency set. | |
char * | rpmdsNewDNEVR (const char *dspfx, const rpmds ds) |
Return new formatted dependency string. | |
rpmds | rpmdsThis (Header h, rpmTag tagN, int_32 Flags) |
Create, load and initialize a dependency for this header. | |
rpmds | rpmdsSingle (rpmTag tagN, const char *N, const char *EVR, int_32 Flags) |
Create, load and initialize a dependency set of size 1. | |
int | rpmdsCount (const rpmds ds) |
Return dependency set count. | |
int | rpmdsIx (const rpmds ds) |
Return dependency set index. | |
int | rpmdsSetIx (rpmds ds, int ix) |
Set dependency set index. | |
const char * | rpmdsDNEVR (const rpmds ds) |
Return current formatted dependency string. | |
const char * | rpmdsN (const rpmds ds) |
Return current dependency name. | |
const char * | rpmdsEVR (const rpmds ds) |
Return current dependency epoch-version-release. | |
int_32 | rpmdsFlags (const rpmds ds) |
Return current dependency flags. | |
rpmTag | rpmdsTagN (const rpmds ds) |
Return current dependency type. | |
int | rpmdsNoPromote (const rpmds ds) |
Return current "Don't promote Epoch:" flag. | |
int | rpmdsSetNoPromote (rpmds ds, int nopromote) |
Set "Don't promote Epoch:" flag. | |
uint_32 | rpmdsColor (const rpmds ds) |
Return current dependency color. | |
uint_32 | rpmdsSetColor (const rpmds ds, uint_32 color) |
Return current dependency color. | |
int_32 | rpmdsRefs (const rpmds ds) |
Return current dependency file refs. | |
int_32 | rpmdsSetRefs (const rpmds ds, int_32 refs) |
Return current dependency color. | |
void | rpmdsNotify (rpmds ds, const char *where, int rc) |
Notify of results of dependency match. | |
int | rpmdsNext (rpmds ds) |
Return next dependency set iterator index. | |
rpmds | rpmdsInit (rpmds ds) |
Initialize dependency set iterator. | |
int | rpmdsFind (rpmds ds, rpmds ods) |
Find a dependency set element using binary search. | |
int | rpmdsMerge (rpmds *dsp, rpmds ods) |
Merge a dependency set maintaining (N,EVR,Flags) sorted order. | |
int | rpmdsCompare (const rpmds A, const rpmds B) |
Compare two versioned dependency ranges, looking for overlap. | |
void | rpmdsProblem (rpmps ps, const char *pkgNEVR, const rpmds ds, const fnpyKey *suggestedKeys, int adding) |
Report a Requires: or Conflicts: dependency problem. | |
int | rpmdsAnyMatchesDep (const Header h, const rpmds req, int nopromote) |
Compare package provides dependencies from header with a single dependency. | |
int | rpmdsNVRMatchesDep (const Header h, const rpmds req, int nopromote) |
Compare package name-version-release from header with a single dependency. | |
Variables | |
int | _rpmds_debug |
int | _rpmds_nopromote |
Definition in file rpmds.h.
|
Definition at line 97 of file rpmds.h. Referenced by rpmalAdd(), rpmdsDup(), rpmdsNew(), rpmdsSingle(), rpmdsThis(), rpmte_DS(), and rpmtsAddInstallElement(). |
|
Definition at line 80 of file rpmds.h. Referenced by rpmdsFree(). |
|
Compare package provides dependencies from header with a single dependency.
Definition at line 941 of file rpmds.c. References rpmds, rpmdsCompare(), rpmdsFree(), rpmdsInit(), rpmdsNew(), rpmdsNext(), rpmdsSetNoPromote(), RPMSENSE_SENSEMASK, and RPMTAG_PROVIDENAME. Referenced by handleOneTrigger(), rpmtsAddInstallElement(), rpmtsSolve(), and unsatisfiedDepend(). |
|
Return current dependency color.
Definition at line 475 of file rpmds.c. References rpmds, and uint_32. Referenced by checkPackageDeps(), rpmalAddProvides(), rpmds_Color(), and rpmtsAddInstallElement(). |
|
Compare two versioned dependency ranges, looking for overlap.
Definition at line 820 of file rpmds.c. References _, _free(), _rpmds_unspecified_epoch_noise, parseEVR(), rpmds, RPMMESS_DEBUG, RPMMESS_WARNING, rpmMessage, RPMSENSE_EQUAL, RPMSENSE_GREATER, RPMSENSE_LESS, RPMSENSE_SENSEMASK, rpmvercmp(), and xstrdup(). Referenced by ftsStashLatest(), rpmalAllSatisfiesDepend(), rpmCheckRpmlibProvides(), rpmds_compare(), rpmdsAnyMatchesDep(), rpmdsNVRMatchesDep(), and rpmtsAddInstallElement(). |
|
Return dependency set count.
Definition at line 373 of file rpmds.c. References rpmds. Referenced by rpmalMakeIndex(), rpmds_Count(), rpmds_length(), rpmfcGenerateDepends(), rpmfcPrint(), and rpmteColorDS(). |
|
Return current formatted dependency string.
Definition at line 394 of file rpmds.c. References rpmds. Referenced by printDeps(), rpmds_DNEVR(), rpmds_print(), rpmds_subscript(), rpmdsPrint(), rpmdsProblem(), rpmfcPrint(), rpmfiBuildFDeps(), rpmShowRpmlibProvides(), rpmts_SolveCallback(), rpmtsAddInstallElement(), and unsatisfiedDepend(). |
|
Return current dependency epoch-version-release.
Definition at line 420 of file rpmds.c. References rpmds. Referenced by rpmds_EVR(), rpmds_iternext(), rpmdsProblem(), rpmfcFileDep(), rpmfcGenerateDepends(), rpmts_SolveCallback(), and rpmtsAddInstallElement(). |
|
Find a dependency set element using binary search.
Definition at line 659 of file rpmds.c. References rpmds. Referenced by rpmdsMerge(), and rpmfcApply(). |
|
Return current dependency flags.
Definition at line 433 of file rpmds.c. Referenced by handleOneTrigger(), printDeps(), rpmds_Flags(), rpmds_iternext(), rpmfcFileDep(), rpmts_SolveCallback(), rpmtsOrder(), unsatisfiedDepend(), and zapRelation(). |
|
Destroy a dependency set.
Definition at line 54 of file rpmds.c. References _free(), _rpmds_debug, headerFree(), HFD_t, rpmds, rpmdsUnlink, rpmTag, RPMTAG_CONFLICTFLAGS, RPMTAG_CONFLICTNAME, RPMTAG_CONFLICTVERSION, RPMTAG_OBSOLETEFLAGS, RPMTAG_OBSOLETENAME, RPMTAG_OBSOLETEVERSION, RPMTAG_PROVIDEFLAGS, RPMTAG_PROVIDENAME, RPMTAG_PROVIDEVERSION, RPMTAG_REQUIREFLAGS, RPMTAG_REQUIRENAME, RPMTAG_REQUIREVERSION, RPMTAG_TRIGGERFLAGS, RPMTAG_TRIGGERNAME, and RPMTAG_TRIGGERVERSION. Referenced by checkPackageSet(), ensureOlder(), freeItem(), freePackage(), ftsStashLatest(), handleOneTrigger(), printDeps(), rpmalDel(), rpmalFree(), rpmCheckRpmlibProvides(), rpmds_dealloc(), rpmdsAnyMatchesDep(), rpmdsNVRMatchesDep(), rpmfcApply(), rpmfcELF(), rpmfcFree(), rpmfcGenerateDepends(), rpmfcHelper(), rpmfcSCRIPT(), rpmfiBuildFDeps(), rpmInstall(), rpmShowRpmlibProvides(), rpmteCleanDS(), rpmtsAddAvailableElement(), and rpmtsAddInstallElement(). |
|
Initialize dependency set iterator.
Definition at line 573 of file rpmds.c. References rpmds. Referenced by checkPackageDeps(), handleOneTrigger(), printDeps(), rpmalAddProvides(), rpmds_iternext(), rpmds_print(), rpmdsAnyMatchesDep(), rpmdsMerge(), rpmdsPrint(), rpmteColorDS(), rpmtsAddInstallElement(), rpmtsCheck(), and rpmtsOrder(). |
|
Return dependency set index.
Definition at line 378 of file rpmds.c. References rpmds. Referenced by addRelation(), rpmalAddProvides(), and rpmds_Ix(). |
|
Reference a dependency set instance.
|
|
Merge a dependency set maintaining (N,EVR,Flags) sorted order.
Definition at line 691 of file rpmds.c. References _free(), int_32, rpmds, rpmdsDup(), rpmdsDupArgv(), rpmdsFind(), rpmdsInit(), rpmdsNext(), and xmalloc(). Referenced by rpmfcELF(), rpmfcGenerateDepends(), rpmfcHelper(), and rpmfcSCRIPT(). |
|
Return current dependency name.
Definition at line 407 of file rpmds.c. References rpmds. Referenced by addRelation(), checkPackageDeps(), cmpItem(), handleOneTrigger(), rpmalAddProvides(), rpmalAllFileSatisfiesDepend(), rpmalAllSatisfiesDepend(), rpmds_iternext(), rpmds_N(), rpmdsProblem(), rpmfcFileDep(), rpmfcGenerateDepends(), rpmts_SolveCallback(), rpmtsAddInstallElement(), rpmtsCheck(), rpmtsSolve(), and unsatisfiedDepend(). |
|
Create and load a dependency set.
Definition at line 117 of file rpmds.c. References _rpmds_debug, _rpmds_nopromote, headerLink(), HGE_t, int_32, rpmds, rpmdsLink, rpmTag, RPMTAG_CONFLICTFLAGS, RPMTAG_CONFLICTNAME, RPMTAG_CONFLICTVERSION, RPMTAG_OBSOLETEFLAGS, RPMTAG_OBSOLETENAME, RPMTAG_OBSOLETEVERSION, RPMTAG_PROVIDEFLAGS, RPMTAG_PROVIDENAME, RPMTAG_PROVIDEVERSION, RPMTAG_REQUIREFLAGS, RPMTAG_REQUIRENAME, RPMTAG_REQUIREVERSION, RPMTAG_TRIGGERFLAGS, RPMTAG_TRIGGERNAME, RPMTAG_TRIGGERVERSION, rpmTagType, xcalloc(), and xmalloc(). Referenced by addTE(), checkPackageSet(), handleOneTrigger(), hdr_dsFromHeader(), printDeps(), rpmdsAnyMatchesDep(), rpmfcGenerateDepends(), rpmfiBuildFDeps(), and rpmtsAddAvailableElement(). |
|
Return new formatted dependency string.
Definition at line 196 of file rpmds.c. References rpmds, RPMSENSE_EQUAL, RPMSENSE_GREATER, RPMSENSE_LESS, RPMSENSE_SENSEMASK, stpcpy(), and xmalloc(). Referenced by rpmdsNext(), rpmdsSingle(), rpmdsThis(), and zapRelation(). |
|
Return next dependency set iterator index.
Definition at line 544 of file rpmds.c. References _free(), _rpmds_debug, rpmds, and rpmdsNewDNEVR(). Referenced by checkPackageDeps(), handleOneTrigger(), printDeps(), rpmalAddProvides(), rpmalAllSatisfiesDepend(), rpmds_iternext(), rpmds_print(), rpmds_subscript(), rpmdsAnyMatchesDep(), rpmdsMerge(), rpmdsPrint(), rpmfcPrint(), rpmfiBuildFDeps(), rpmteColorDS(), rpmtsAddInstallElement(), rpmtsCheck(), and rpmtsOrder(). |
|
Return current "Don't promote Epoch:" flag. This flag controls for Epoch: promotion when a dependency set is compared. If the flag is set (for already installed packages), then an unspecified value will be treated as Epoch: 0. Otherwise (for added packages), the Epoch: portion of the comparison is skipped if the value is not specified, i.e. an unspecified Epoch: is assumed to be equal in dependency comparisons.
Definition at line 455 of file rpmds.c. References rpmds. |
|
Notify of results of dependency match.
Definition at line 531 of file rpmds.c. References _, rpmds, RPMMESS_DEBUG, and rpmMessage. Referenced by rpmalAllFileSatisfiesDepend(), rpmalAllSatisfiesDepend(), rpmds_Notify(), and unsatisfiedDepend(). |
|
Compare package name-version-release from header with a single dependency.
Definition at line 996 of file rpmds.c. References alloca(), headerNVR(), HGE_t, int_32, rpmds, rpmdsCompare(), rpmdsFree(), rpmdsSetNoPromote(), rpmdsSingle(), RPMSENSE_EQUAL, RPMSENSE_SENSEMASK, RPMTAG_EPOCH, RPMTAG_PROVIDENAME, and stpcpy(). Referenced by ensureOlder(). |
|
Report a Requires: or Conflicts: dependency problem.
Definition at line 911 of file rpmds.c. References _, fnpyKey, rpmds, rpmdsDNEVR(), rpmdsEVR(), rpmdsN(), RPMMESS_DEBUG, rpmMessage, RPMPROB_CONFLICT, RPMPROB_REQUIRES, rpmProblemType, and rpmpsAppend(). Referenced by checkPackageDeps(). |
|
Return current dependency file refs.
Definition at line 503 of file rpmds.c. Referenced by rpmds_Refs(). |
|
Return current dependency color.
Definition at line 488 of file rpmds.c. References rpmds, and uint_32. Referenced by rpmteColorDS(). |
|
Set dependency set index.
Definition at line 383 of file rpmds.c. References rpmds. Referenced by rpmalAllSatisfiesDepend(), rpmds_subscript(), rpmfcPrint(), rpmfiBuildFDeps(), and zapRelation(). |
|
Set "Don't promote Epoch:" flag.
Definition at line 464 of file rpmds.c. References rpmds. Referenced by checkPackageSet(), handleOneTrigger(), rpmds_SetNoPromote(), rpmdsAnyMatchesDep(), and rpmdsNVRMatchesDep(). |
|
Return current dependency color.
Definition at line 516 of file rpmds.c. Referenced by rpmteColorDS(). |
|
Create, load and initialize a dependency set of size 1.
Definition at line 324 of file rpmds.c. References int_32, rpmds, rpmdsLink, rpmdsNewDNEVR(), rpmTag, RPMTAG_CONFLICTNAME, RPMTAG_OBSOLETENAME, RPMTAG_PROVIDENAME, RPMTAG_REQUIRENAME, RPMTAG_TRIGGERNAME, xcalloc(), and xmalloc(). Referenced by ensureOlder(), rpmCheckRpmlibProvides(), rpmds_Single(), rpmdsNVRMatchesDep(), rpmfcApply(), rpmfcELF(), rpmfcGenerateDepends(), rpmfcHelper(), rpmfcSCRIPT(), rpmInstall(), and rpmShowRpmlibProvides(). |
|
Return current dependency type.
Definition at line 446 of file rpmds.c. Referenced by rpmds_TagN(), rpmfcFileDep(), and rpmtsSolve(). |
|
Create, load and initialize a dependency for this header.
Definition at line 244 of file rpmds.c. References headerNVR(), HGE_t, int_32, rpmds, rpmdsLink, rpmdsNewDNEVR(), rpmTag, RPMTAG_CONFLICTNAME, RPMTAG_EPOCH, RPMTAG_OBSOLETENAME, RPMTAG_PROVIDENAME, RPMTAG_REQUIRENAME, RPMTAG_TRIGGERNAME, stpcpy(), xcalloc(), and xmalloc(). Referenced by addTE(), ftsStashLatest(), hdr_dsOfHeader(), parseSpec(), and rpmtsAddInstallElement(). |
|
Unreference a dependency set instance.
|
|
Definition at line 41 of file rpmds.c. References _rpmds_debug, and rpmds. |
|
Definition at line 30 of file rpmds.c. References _rpmds_debug, and rpmds. |
|
Definition at line 15 of file rpmds.h. Referenced by rpmdsFree(), rpmdsNew(), rpmdsNext(), XrpmdsLink(), and XrpmdsUnlink(). |
|
Definition at line 22 of file rpmds.h. Referenced by rpmdsNew(). |